奥さん大変です PIC12F683の動作がおかしいです! 変です!
GP3は入力、GP2はアナログ入力に設定して、GP0,1、4,5の4ビットでGP3の”0”と”1”で8ビットデータ(AD変換データをもくろんでいる)を切り替えて表示しようとしましたが。
解決:レジスタの使い方を間違えていました。
タイマ時間のレジスタ(繰り返し数)とデータのレジスタに同じ名前を使ってました。そりゃそうだよね、こんな現象が出てたら、とっくに問題になっている
1ビットだけ出力が”0”のままになります。
以下は、確認のために簡単にしたアセンブラです。色々試してますが、ダメです。
T1=b’11111111’にしても0で出力されます 回路図のミスはありません。
ADCSWOUT
CALL ADCSET 初期設定しているルーチン 説明略
ADCSWOUT1
; CALL ADLOOP
MOVLW b'01011010'
MOVWF T1
BCF GPIO,0
BCF GPIO,1
BCF GPIO,4
BCF GPIO,5
BTFSC GPIO,3
GOTO SW47
ADCON1
BTFSC T1,0
BSF GPIO,0
BTFSC T1,1
BSF GPIO,1
BTFSC T1,2
BSF GPIO,4
BTFSC T1,3
BSF GPIO,5
GOTO ADCSWOUT1
SW47
BTFSC T1,4 ここが動作しない 他の方法も試した
BSF GPIO,0 セットされません
BTFSC T1,5
BSF GPIO,1
BTFSC T1,6
BSF GPIO,4
BTFSC T1,7
BSF GPIO,5
GOTO ADCSWOUT1
とりあえず。AD変換後のデータをLED点灯でデータとしてみようとしただけなんだけどね