« PICのお勉強(16) C言語編 スイッチでLEDの点滅 | トップページ | PICのお勉強(18) C言語編 ビットシフトでLEDを往復点灯 »

2012年5月30日 (水)

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

| |

« PICのお勉強(16) C言語編 スイッチでLEDの点滅 | トップページ | PICのお勉強(18) C言語編 ビットシフトでLEDを往復点灯 »

PICマイコン」カテゴリの記事

コメント

コメントを書く



(ウェブ上には掲載しません)


コメントは記事投稿者が公開するまで表示されません。



トラックバック


この記事へのトラックバック一覧です: PICのお勉強(17) C言語編 ビットシフトでLEDの順送り点灯:

« PICのお勉強(16) C言語編 スイッチでLEDの点滅 | トップページ | PICのお勉強(18) C言語編 ビットシフトでLEDを往復点灯 »