今回は実践編のプログラムを完成させます。湿度と気圧データはBME280から取得、温度データはADT7410から取得します。温度センサの初期化方法とI2Cの通信手順がわかりましたので、ADT7410の動作設定関数を作成しておきます。ADT7410を16ビット測定、連続測定モードに設定するには、動作設定アドレス0x03に0x80を書き込めばOKです。書き込み指定0)、0x03、0x80の3バイトをマスターからスレーブに送信すれば、動作設定できます。マスターとスレーブのやり取りを図式化すると以下のようになります。プログラムは、以下のようにスレーブアドレスや動作設定アドレス、動作設定値を#defineしておくことにします。設定値(16-bit分解能指定、他はデフォルト)あとは今までの作成したI2C通信関数を呼べばOKです。設定値はあとで変更できるように引数にしてみました。温度データの取得は以下のようなI2C通信で取得できます。あとはこの通りに関数を呼べばOKです。測定した温度データは関数の返り値にしています。小数点を含みますのでfloat型です。128.0;}プログラム仕上げこれで一通り必要な関数は揃いましたので、プログラム全体をまとめます。新しいことは特にありませんので詳細説明は省略しますが、不明点ありましたらコメント欄やお問い合わせフォームからご質問いただければと思います。LEDの接続が赤青逆になっているかもしれませんので、#defineで定義してあります。青が雨の予報用、赤が晴れの予報用にしてありますが、違う色のLEDを使用されてい場合は#defineで定義を変更していただければと思います。