16章:LEDの明るさ調節(PWM制御)

    作成2014.03.09

  1. STEP19_PWM
    (1)STEP19_PWMソースプログラム
    STEP19_PWMソースプログラムを以下に示します。
    /*****************************
     STEP19_PWM.c
    *****************************/
    
    #define _LEGACY_HEADERS
    
    // インクルードファイルの読み込み
    #include <pic.h>
    // コンフィギュレーションワードの設定
    __CONFIG ( UNPROTECT & LVPDIS & BOREN & MCLREN & PWRTEN & WDTDIS & INTIO );
    
    // プロトタイプ宣言
    void WaitTime (int cnt);
    
    // メイン関数
    void main (void)
    {
    	// 1,2,17,18端子を入出力端子に設定
    	CMCON = 0x07;
    	
    	// 電圧レベルの初期設定
    	PORTA = 0xFF;
    	PORTB = 0xFF;
    	
    	// 入出力設定
    	TRISA = 0x20;
    	TRISB = 0x00;
    	
    	// 永久ループ
    	while(1)
    	{
    		// LED4点灯,LED1消灯
    		RB3 = 0;
    		RB0 = 1;
    		
    		// 待ち時間関数の呼び出し
    		WaitTime(1);
    		
    		// LED4消灯,LED1点灯
    		RB3 = 1;
    		RB0 = 0;
    		
    		// 待ち時間関数の呼び出し
    		WaitTime(99);
    	}
    }
    
    // 待ち時間関数
    void WaitTime(int cnt)
    {
    	while(cnt > 0)
    		cnt--;
    }
    


  2. STEP19_PWMソースプログラムの実行
    *RB0に接続したLEDが明るく点灯します。
    *RB3に接続したLEDが暗く点灯します。









17章:タイマ(PWMモード)に行く。

トップページに戻る。