STM32L010のMbedでのHT16K33でLチカ (I2C)(STM32L010F4P6)(Mbed2リビジョン変更)


目的
I2Cの練習
単純にライト(書き込み)だけでうまくいくとLEDが光る。
ICも約100円ぐらいで安い
とりあえず、I2Cのテストの時に一番最初に動かす。
あいてんどうと秋月で売っているよ。
いちお書いておくと24ピンと28ピンの違いは、
24ピンが12ビットモードで28ピンが16ビットモード

1.SCLとSDAを接続、プルアップも忘れずに
2.電源の接続
3.下記のソースコードを書き込む
4.コンパイル実行で表示されたら終了
5.おわり

注意
mbed2のリビジョンは、125

リビジョンの変更

1.mbedを選択
2.リビジョンを選択

3.リビジョン125を選択(スライドを使う)
4.切り替えを選択

写真のは、約100円であいてんどうで買った
単に28ピンより20円安いから



#include "mbed.h"

#define ADDR (0xe0)  //address

I2C i2c(PA_10, PA_9); //010

char data_read[8];  //i2cバッファー
int ii;             //ループカウンター

//メインプログラム
int main() {

///*INIT start *********  

    data_read[0]=0x21;
    i2c.write(ADDR, data_read, 1);wait_ms(1);

    data_read[0]=0x81;
    i2c.write(ADDR, data_read, 1);wait_ms(1);

    data_read[0]=0xef;
    i2c.write(ADDR, data_read, 1);wait_ms(1);

    for(ii=0;ii<16;ii++){
        data_read[0]=ii;
        data_read[1]=0x00;
        i2c.write(ADDR, data_read, 2);wait_ms(1);
    }//for

//*/  //INIT end *********    

    //無限ループ
    while(1){

         //LEDをオン
        data_read[0]=0;
        data_read[1]=1;
        i2c.write(ADDR, data_read, 2);       
        wait_ms(200);

        //LEDをオフ
        data_read[0]=0;
        data_read[1]=0;
        i2c.write(ADDR, data_read, 2);
        wait_ms(200);

    }//while

} // main

//容量削減 約-3kバイト
void error(const char* format, ...){}