• ベストアンサー

PICで1μsの待機時間を作りたい

現在PIC18F2431の制御プログラムを組んでいます。 INTOSC 8M を使って1μsと3μsの待機時間を作りたくて下記のような、空のループを用意しました。 for(i=0; i<1; i++) ; しかしこれではどう頑張っても6μsよりも小さくすることが出来ません。 何か良い方法はないでしょうか? どうかご教授ください

質問者が選んだベストアンサー

  • ベストアンサー
  • kusa_mochi
  • ベストアンサー率76% (1597/2087)
回答No.1

自分はPICのプログラミングをしたことは無いが、アセンブラ(機械語)じゃダメなのかな? 最高クロックで40MHzみたいなので、アセンブラで直接記述する以外で正確なμ秒単位のループは難しいのでは。 #メインロジックは高級言語でも良いが、待機時間の部分はアセンブラで関数を作って呼び出すとか

t_and_d
質問者

お礼

なるほどアセンブラですか。アレあんまり使ったことがないんで出来るかどうかわかんないですがやってみます。 回答ありがとう御座いました。

t_and_d
質問者

補足

すいません。質問を少し訂正します。 「INTOSC 8Mを使って」では意味が良く分かりませんね。 内部クロック8MHzを使って、です。 変な記述をしてすいませんでした。

関連するQ&A

専門家に質問してみよう