閲覧総計:9876  (本日:1  昨日:0)

【目次】(項目をクリックすると飛べます)


発光ダイオード(LED)の点滅

18F2320の「Device Flags(CONFIG)」「Configレジスタ」の概要理解と、
実際の稼働確認を目的とし、発光ダイオード(LED)の点滅プログラムを作りました。

・内蔵発振器(8MHz)を利用する。
・MCLRはPIC内部プルアップで利用する。

【結果】無事発光ダイオード(LED)が点滅しました。 07/01/14

※C18のプログラムを追記 07/10/04

P1010270.JPG

MikroCのプログラム

/**
* 18F2320の稼働テスト 発光ダイオード(LED)の点滅
*
* LED: RC2
*
*Clock: 8.0MHz 内蔵発振器使用
*Device Flags:
* _INTIO2_OSC_1H _WDT_OFF_2H _MCLRE_OFF_3H _LVP_OFF_4L
* (その他はデフォルト設定でOK)
*
* MikroC v6.2.1
*/
void main() {

    //内蔵発信機 8MHz使用に設定
    OSCCON.IRCF2=1;
    OSCCON.IRCF1=1;
    OSCCON.IRCF0=1;

    PORTC = 0b00000000; //PortCの中身をきれいにする
    TRISC = 0b00000000; //PortC 8個全て0:出力設定

    do {
        PORTC = 0b11111111; //PortC全てをON
        Delay_ms(500); //0.5秒待つ
        PORTC = 0b00000000; //PortC全てをOFF
        Delay_ms(500); //0.5秒待つ
    } while(1);
}

★この情報は役に立ちましたか?

選択肢 投票
はい 17  
普通 13  
いいえ 13  

C18のプログラム

/**
* 18F2320の稼働テスト 発光ダイオード(LED)の点滅
*
* LED: RC2
* Clock: 8.0MHz 内蔵発振器使用
*
* C18 StudentEdition v3.12
*/
#include <p18f2320.h>
#include <delays.h>

//config設定
#pragma config OSC = INTIO2 //内部発振器を利用
#pragma config WDT = OFF //ウォッチドッグタイマOFF
#pragma config MCLRE = OFF //MCLRを内部プルアップ
#pragma config LVP = OFF //低電圧ICSP制御OFF
//その他のconfigはデフォルト設定のまま

void main(void)
{
    //初期化
    PORTC = 0b00000000; //PortCの中身をきれいにする
    OSCCON = 0b01110000; //内蔵発振器を8MHz使用に設定    
    TRISC = 0b00000000; //PortC 8個全て0:出力設定

    while(1)
    {
        LATC = 0b11111111; //PortC全てをON
        Delay10KTCYx(100); //0.5秒待つ
        LATC = 0b00000000; //PortC全てをOFF
        Delay10KTCYx(100); //0.5秒待つ
    }
}

★この情報は役に立ちましたか?

選択肢 投票
はい 6  
普通 0  
いいえ 2  

添付ファイル: fileP1010270.JPG 1769件 [詳細]