PIC 16f84ピンは常にローB0

L

lgeorge123

Guest
私は9パルスのテレビリモコンの時間幅を測定するためにPI​​C16F84を使用して、それは1.7msのです。回路はOKですし、時間幅が表示されます。 IRレシーバの出力は、B0ピンに接続されている。しかし、コードが測定された後、16f84のピンB0(外部割り込み)が常に低いので、それが2回以上発生させることはできません。私は16f84が良い次のように、コードは確信しています:##ヒューズXT、NOWDT、NOPROTECTは##"lcd.c"int型の時間、回数、時間1を含む遅延(クロック= 4000000)を使用して含んでいる; int32のデータ1;#INT_EXT int_isr(){中(入力(pin_b0)!); set_rtcc(0);中(入力(pin_b0));時間= get_rtcc();カウント+ +;(== 9を数える)場合{lcd_putc(の'\ n');のprintf(lcd_putc、"%LX"、時間)、カウント= 0; data1の= 0;時間= 0;}}は、main(){カウント= 0; data1の= 0; lcd_init();のprintf(lcd_putc、"こんにちは") ; setup_timer_0(RTCC_INTERNAL | RTCC_DIV_2); enable_interrupts(int_ext); enable_interrupts(グローバル)、(1){}}それは16f84のproportiesまたは何か他のですが?任意のコメントは大歓迎です!
 
こんにちはlgeorge123が、これは私が3年前に発見し、これがinterrustでaccursこと16FファミリのPICは(私が気づいたように)上のバグです。 16f84のB0は、中断後に常に低いままである。この問題を解決するには、単にB0を読むことができます。これは私が見つけた唯一のソリューションでした。私はそれが一助となることを望んでいます。助けてくれたボタンを押すことを忘れないでください。おかげ。よろしく、Master_PicEngineer
 
どのようにLCDを接続すればよいですか??近接型ICカード"lcd.c"でそれはすべてのPORTBを使用して、さらにRB0はLCDに有効です....別の"lcd.cを持っているか"?????うまく。多分あなたはRB0のためにTRISを設定する必要があります...近接型ICカード"output_bは()"出力などのポートとして常に設定されます... (あなたが#fast_io(B)を使用して作成しない限り)簡単な方法はset_tris_b(1)多分、その方法にしてください...
 
。(2)ちょうどメインループのLCD_INITIALMODE前メインcファイルでドライバを初期するこのを使用;あなただけそれを使用するプリンティングなどルーチンをセットアップに添付このcファイルでコマンドリストを従うできますそれが#"4bitdriverwithcgramLCDインクルードインクルード"それは、20X4ラインモードでのセットアップですが、これは簡単に私は最初からこのクラスを書いて、それは4ビットモードで小さなHD 44780コントローラの種類の魔法がそうと遊ぶために数が単純に忘れていけない6i/osを使用し、あなたを離れる動作が変更されpic84の投稿B上のクラスのピンはポートB0、1は84Aに割り込み端子です覚えて再定義する
 

Welcome to EDABoard.com

Sponsor

Back
Top