2011年8月25日木曜日

mbedでLチカ

#include "mbed.h"

DigitalOut myled[4] = { LED1, LED2, LED3, LED4 };

int main() {
    while(1) {
        for (int i = 0; i < 16; i++) {
            myled[0] = ((i >> 0) & 1);
            myled[1] = ((i >> 1) & 1);
            myled[2] = ((i >> 2) & 1);
            myled[3] = ((i >> 3) & 1);
            wait_ms(500);
        }
    }
}

とりあえずメモ
mbedに搭載されているLED4個で2進4bitカウンタを表示します

mbedのポートの配列を作ってそこに出力
今回は配列にした意味が無いけど forをもう一回使って
myledの代入4行の代わりに
for (int c = 0; c < 4; c++) { myled[c] = ((i >> c) & 1); }
とかでも動くかもしれない(試してはいない)

mbedはPICとかと違ってあまり動作速度を意識しなくてもいいのが利点かな

そういえばmain()の戻り値が組み込みによくあるvoidじゃなくてintになってるけど
これは何なんだろう? ブートローダーから起動してるからとかなのかな

0 件のコメント:

コメントを投稿