目次>5章 第2ステップ(色々な実験)>暗くなったら明かりを点ける>ソース
暗くなったら明かりを点ける(ソース)
更新日2005.10.23
以下のソースを取り込んで、アセンブル→PIC書き込み→実行して下さい。
; ========================== ここから ==============================
; CLOCK 10MHz
; PORTA 0:Cds
; PORTB 0:LED緑,1:LED赤
;
; 暗くなったら明かりを点ける
;
LIST P=PIC16F84A ; LIST宣言で、使用するPICをPIC16F84Aと定義する
INCLUDE P16F84A.INC ; 設定ファイルp16f84a.incを読み込む
__CONFIG _HS_OSC & _WDT_OFF & _PWRTE_ON & _CP_OFF
ORG 0 ; リセットベクタ(0番地)を指定する。
INIT
; << PICの初期化 >>
BSF STATUS,RP0 ; ファイルレジスタSTATUSのRP0をセット(1)する → バンク1
CLRF TRISB ; ファイルレジスタTRISBをクリア(0) → PORTBは全て出力
MOVLW 01h
MOVWF TRISA ; ファイルレジスタTRISAの0ビット目のみON → RA0は入力
BCF STATUS,RP0 ; STATUSのRP0をクリア(0) → バンク0
CLRF PORTB ; PORTBを全てOFF
; << メイン処理 >>
MAIN
BTFSC PORTA,0 ; RA0の状態チェック
GOTO RA0_ON ; ONの時
RA0_OFF ; 明るい時
MOVLW 02h
MOVWF PORTB ; RB0をOFF,RB1をON
GOTO MAIN
RA0_ON ; 暗い時
MOVLW 01h
MOVWF PORTB ; RB0をON,RB1をOFF
GOTO MAIN
END ; プログラムの終了をアセンブラに指示する
; =========================== ここまで ===============================