2012年7月14日土曜日

AVR PORTDチェック関数

Cです。
PORTDの出力チェックを実施する。
PD0~7にLEDでもつないでおこう。

#include<util/delay.h>

void PORTD_test(char w_cnt){

    char i;

    for(i = 0; i < w_cnt; i++){
        PORTD = 0b00000001;
        _delay_ms(200);
        PORTD = 0b00000010;
        _delay_ms(200);
        PORTD = 0b00000100;
        _delay_ms(200);
        PORTD = 0b00001000;
        _delay_ms(200);
        PORTD = 0b00010000;
        _delay_ms(200);
        PORTD = 0b00100000;
        _delay_ms(200);
        PORTD = 0b01000000;
        _delay_ms(200);
        PORTD = 0b10000000;
        _delay_ms(200);
    }
}

int main(void) {
    DDRD = 0b11111111;           //すべて出力
    PORTD = 0b00000000; //D初期化
    while(1) {
    PORTD_test(1);
    }
    return 0;
}

0 件のコメント:

コメントを投稿