現在PICマイコンを使ってLEDの点滅回路の基盤を作成していますがAポートから入力することができません。Aポートの各入力電圧を確認しましたがONで約5V、オフで約0Vで問題はなさそうです。(プログラムの問題なのだと思います)
プログラムの入力部分を1部記述すると(PORTA入力部分)
movlw 0ffh
movwf TRISA ;Aポートを入力とする
movf PORTA,w
andlw 00fh ;(APORTは下4桁のみ使用)
movwf t_work3
ここでAポートに何を入力してもt_work3の値が0となってしまいます
全くの初心者のため原因がよくわかりません
よろしくお願いいたします
PICのAポートはデフォルトでアナログ入力ポートになっているものが多くあります。ADCON1レジスタで必要なピットをディジタルI/Oに設定する必要があります。
使用している型番のデータシートを確認してみてください
PICの型番はなんでしょうか。
コンフィギュレーションビットは適切に設定されているか確認してください。
(デフォルト値に任せず、全部手動で設定したほうがいいです。例えばLVPなど使わないものは無効に)
PICのAポートはデフォルトでアナログ入力ポートになっているものが多くあります。ADCON1レジスタで必要なピットをディジタルI/Oに設定する必要があります。
使用している型番のデータシートを確認してみてください
回答ありがとうございます
2011/11/11 22:07:22PICの型番はPIC16F877A-I/Pです
コンフィギュレーションビットは以下の通りです
__CONFIG _CP_OFF & _WDT_OFF & _BODEN_OFF & _PWRTE_ON & _HS_OSC & _WRT_OFF & _LVP_OFF & _CPD_OFF
で設定しています
よろしくお願いいたします