PIC16F628A LED点滅

JH7UBC 2018.11.5


 PIC16F628Aを使ってLEDを0.5秒ごとに点滅させます。いわゆるLチカです。
これは、簡単なプログラムですが、PICが正常に動作するかどうかの最初のテストです。
クロックは、内臓発振器(4MHz)とし、レゾネータを省略します。
LEDは、RB0に電流制限抵抗を介して接続します。

ブレッドボードです。電源は、秋月電子のUSBシリアル変換モジュールから5Vを供給しています。
配線は、非常に簡単です。

プログラムです。
PIC16F628Aは、ディフォルトでR0〜R3は、コンパレータ入力になっています。
全てのIOポートをデジタルIOとして使うためには、CMCON = 0x07とします。
ただし、RA5は、入力専用です。

#include <xc.h>
#include <stdio.h>
#include <stdlib.h>

#define _XTAL_FREQ 4000000

// CONFIG
#pragma config FOSC = INTOSCIO
#pragma config WDTE = OFF
#pragma config PWRTE = ON
#pragma config MCLRE = OFF
#pragma config BOREN = OFF
#pragma config LVP = OFF
#pragma config CPD = OFF
#pragma config CP = OFF


void main() {
CMCON = 0x07;//comparators OFF
TRISA = 0b00100000;//RA5は入力他は出力
TRISB = 0x00;//PORTBは全て出力
PORTA = 0x00;//PORTAクリア
PORTB = 0x00;//PORTBクリア
while(1){
RB0 = 1;//
__delay_ms(500);
RB0 = 0;
__delay_ms(500);
}
}

inserted by FC2 system