- ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:PICマイコンで時間測定の方法を教えて!)
PICマイコンで時間測定の方法を教えて!
このQ&Aのポイント
- PICマイコン初心者のための時間測定の方法を解説します。
- デバイスはPIC16F877、プログラミング言語はMPLABに付属のCコンパイラ(HI-TECH PICC Lite)を使用します。
- RC0がLOWのときにdelay(100ms)をカウントし、バイナリでPORTBに表示する方法で測定を行います。測定レンジは0.1 - 60秒です。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
while(1){.......} でくくると無限ループになり、括弧内を繰り返します T1がlongで宣言されてますが、PORTBは8ビットなので、何らかの変換が必要では? タイマ0を使用する場合 プリスケーラ8ビット + タイマ0 8ビット = 16ビット 基本クロック 16/4=4MHz 1Ф=250ns 250ns * 65536 = 16.384ms までしか計測できないので オーバーフローフラグによるタイマの拡張が必要です RC0=1 に成るまで待つ RC0=0 でタイマクリア タイマカウントスタート RC0=1 でタイマカウント停止 PORRTB データ出力
その他の回答 (1)
- koujikuu
- ベストアンサー率43% (429/993)
回答No.1
if文の後にループ命令が無い為、一回実行しただけで終了する気がしますが? 正確な時間測定には、タイマ機能を使用して下さい。
補足
回答ありがとうございます。ループ命令とは例えばどのようになるのでしょうか? 教えて頂きたく。お願いします。 また、タイマー機能とはタイマーを動作させて、割り込み回数をカウントするとかでしょうか?