DigitalOut - デジタル出力

DigitalOut - デジタル出力

Information

本ページは私家版のため、誤り等あればご指摘ください。
最新の情報は公式のドキュメントをご参照ください。 http://mbed.org/handbook/DigitalOut

ピンを出力に設定し、HighまたはLowを出力します。

http://mbed.org/media/uploads/mbedofficial/digitalout_interfaces.png

初期化

DigitalOut name(pin);

name: 名前(自由に決めて良い)
pin: ピン名(p5~p30、LED1~LED4)

mbed基板上のLEDを点灯させる場合はLED1~LED4を指定します。

出力

name = 0;

name = 1;

0:Low(0V)、1:High(3.3V)を出力します。

Warning

ブートローダーモードの指定ピンを入出力などに使っている場合、CPUの起動時やリセット時に 意図せずブートローダーモードに入ってしまい、ユーザーのプログラムが起動しないことがあります。

LPC1114・LPC824のISP、NucleoのBOOT0等のピンに注意してください。

LED点滅

#include "mbed.h"

DigitalOut myled(LED1);

int main() {
    while(1) {
        myled = 1;
        wait(0.25);
        myled = 0;
        wait(0.25);
    }
}

LPCXpresso コード

I/Oポート出力は、一般的なポートレジスタとSET/CLRレジスタを使う方法がある。

LED(P1.18)点滅

#include "LPC17xx.h"

int main() {
    volatile int i;

    LPC_PINCON->PINSEL3  &= ~(3 << 4); // GPIO (00)
    LPC_GPIO1->FIODIR |= (1 << 18);  // output

    while(1) {
        LPC_GPIO1->FIOPIN |= (1 << 18); // high
        for(i = 0; i < 10000000; i++);
        LPC_GPIO1->FIOPIN &= ~(1 << 18); // low
        for(i = 0; i < 10000000; i++);

        LPC_GPIO1->FIOSET = (1 << 18); // high
        for(i = 0; i < 10000000; i++);
        LPC_GPIO1->FIOCLR = (1 << 18); // low
        for(i = 0; i < 10000000; i++);
    }
}

詳細 戻る(back)


1 comment on DigitalOut - デジタル出力:

16 Nov 2016
  1. include "mbed.h"

DigitalOut myled(PB_8)

int main() { while(1) { myled = 1; wait(0.25); myled = 0; wait(0.25); } }

Please log in to post comments.