NO IMAGE

I2Cが開通した

  • 2019年4月24日
  • 2019年4月24日
  • IoT
  • 443view
IoT NO IMAGE

前回まででMbed –> Macが開通したので、次の課題はI2C –> Mbedを開通させることです。

===

ゴール:I2CデバイスをアクセスしてMacに表示させる

機材:リアルタイムクロック(RTC)

ツール:前回と同じ(Mbed Compiler、CoolTermMac)

ソースは以下

===

#include “mbed.h”

#include “USBSerial.h”

USBSerial   usb(0x1f00, 0x2012, 0x0001, false);


I2C i2c(p26, p25);        // sda, scl


const int addr8bit = 0x51 << 1; // 8bit I2C address


int main(void) {

    char regaddr[1];

    char readdata[11]; // room for length and 7 databytes

    while(1) {

        regaddr[0] = 0x00;

        i2c.write(addr8bit, regaddr, 1, true);  // select the register, no I2C Stop

        i2c.read(addr8bit, readdata, 11);        // read 11 bytes

// print the data to the screen

        usb.printf(“0x%x 0x%x 0x%x 0x%x 0x%x 0x%x 0x%x 0x%x 0x%x 0x%x 0x%x\r\n”,

            regaddr[0] , readdata[1], readdata[2], readdata[3],

            readdata[4], readdata[5], readdata[6], readdata[7],

            readdata[8], readdata[9], readdata[10] );

        wait(1);

    }

}

===

コンパイル結果をダウンロード、書き込んで実行させると次のようになりました。

左から5つ目のhexaが秒ですが、1秒ごとに変化しているのがわかります。

ここまで

NO IMAGE
最新情報をチェックしよう!