PICのお勉強(9) 二進数カウンタ
ボタンを押すと,LEDが二進数でカウントアップ点灯するプログラムを作ってみました。ソースはこれ→lesson9.asm
メインプログラムは次のようになっています。
:========================================================
MAIN
BTFSC PORTA,1 ;RA1のスイッチがON(0)になったら次行をスキップ
GOTO $-1 ;上の行へ戻る
CALL TIMELOOP1 ;チャタリング対策
BTFSS PORTA,1 ;RA1のスイッチがOFF(1)になったら次行をスキップ
GOTO $-1 ;上の行へ戻る
CALL TIMELOOP1 ;チャタリング対策
INCF COUNT,F ;COUNT値+1をCOUNTに格納
MOVF COUNT,W ;COUNT値をWレジスタに代入
MOVWF PORTB ;PORTBをWレジスタ値(カウンタ値)で点灯させる
GOTO MAIN
;=========================================================
スイッチが押されると(正確に言うと押されたスイッチがOFFになると),COUNTという変数に1を加えて,PORTBへ送ります。
5桁めからのLEDの点き方がヘンに思えるかもしれませんが,ここからLEDが逆に並んでるので,これでいいのです。
【今日覚えた命令】 MOVF
| 固定リンク | 0
「PICマイコン」カテゴリの記事
- ZK-80で足し算(2020.07.23)
- TK-80互換機 ZK-80のキット(2020.07.21)
- PICのお勉強(37) C言語編 12F683でA/D変換(2015.06.02)
- UVレジンでLEDイルミネーション (2)(2015.05.15)
- PICのお勉強(35) C言語編 PWMでサーボモータを動かす(2014.10.05)
コメント