PICのお勉強(6) RLFとRRLでLEDの順送り往復点灯
あけましておめでとうございます。まだPICマイコンで遊んでます(^-^)
今度は,RLFとRRLのビットシフト命令を使って,LEDを順送り点灯させながら,左→右,右→左へと往復させてみました。
ソースはこれ→lesson6.asm
ポイントは次の通りです。
;================================================
LEFT
RLF PORTB,F ;PORTBの内容を1ビット左にシフトする
CALL TIMELOOP1
BTFSS PORTB,7 ;RB7のLEDが点灯したら次行をスキップ
GOTO LEFT
RIGHT
RRF PORTB,F ;PORTBの内容を1ビット右にシフトする
CALL TIMELOOP1
BTFSS PORTB,0 ;PB0のLEDが点灯したら次行をスキップ
GOTO RIGHT
GOTO LEFT
;=================================================
はじめ,00000001という点灯パターンのデータを左に順にシフトしていき,RB7が1になったら今度は逆にデータを右にシフトしていきます。で,RB0が1になったらまたシフトの方向を反転させるわけです。
よしよし,なんだか少しずつアセンブラの感覚が身に付いてきたような気がするぞ(^^)
ついでに前回より速く点灯LEDを動かしています↓
【今日覚えた命令】 RRF
| 固定リンク | 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)
コメント