PICのお勉強(17) C言語編 ビットシフトでLEDの順送り点灯
RB0~RB7までの8つのLEDを1つずつ順送りで点灯してみました。
ソースはこれ→lesson17.c
以前,アセンブラでやったことのあるビットシフトをC言語で書いてみたわけです。
/************************************
16F84A HI-TECH C v.9.83
ビットシフトでLEDの順送り点灯
************************************/
#define _LEGACY_HEADERS
#include "PIC.h"
#define _XTAL_FREQ 20000000 //20MHz
__CONFIG(HS & WDTDIS & PWRTDIS & UNPROTECT);
main(void){
TRISB = 0b00000000;
PORTB = 0b00000001; //RB0だけ点灯させる
__delay_ms(100);
while(RB7 == 0){ //RB7が点灯するまで繰り返す
PORTB = PORTB<<1; //PORTBの内容を左に1ビットだけシフトする
__delay_ms(100);
}
}
僕のテストボードに取りつけてあるRA2,RA3,RB0~RB7の10個のLEDを順送りで点灯させるプログラムはこれ→lesson17-2.c
| 固定リンク | 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)
コメント