マガジンスイッチサイエンスのブログです。コメントを受け付けていません。kishida第一回:SPI通信とI2C通信を使うこんにちは。開発ボードを使った製作とその過程を紹介しようと思います。皆さんはESP-WROOM-02というWi-Fiモジュールをご存じですか?2015年に工事設計認証(いわゆる技適)を取得した、電子工作などに利用可能なWi-Fiモジュールです。安価である上に小型で高機能なマイコンを内蔵しているため、非常に多くの使いみちがあります。IDEで開発ができる」というものです。この特徴によって、既存のArduino向けスケッチの多くが流用できます。プロトタイピングがはかどりますね。IDEでの設定方法はこちらのwikiをご覧ください。以前設定を行った方も最新版への移行をおすすめします。サンプルスケッチの増加とコード量の削減が図られています。記事執筆時点での最新版はv2.1です。いうわけで、今回はESP-WROOM-02を搭載した人気商品、開発ボードと温度センサをつかったロガーを作ってみます。当モジュールのWi-Fi機能およびArduino環境で開発できるという特徴を最大限利用して、多くのサンプルスケッチを利用し、ウェブブラウザから温度データをグラフ表示するというところまでやってみようと思います。今回は、SDカードとの通信および温度センサとの通信というところまで紹介しようと思います。■microSDカードを使うSDカードとESP-WROOM-02開発ボードは、SPI通信でデータのやり取りをすることができます。ESP-WROOM-02開発ボードでSPI通信をする時のピンは、下の表の通りです。IO14ブレッドボード用の変換基板を使用してESP-WROOM-02開発ボードにmicroSDカードを接続します。SDカードの端子と開発ボードとの接続方法は下図のとおりです。ESP-WROOM-02は3.3Vで動作していますので、特にレベルシフタなどは必要ありません。initialized.と表示されれば通信成功です。SDカードに関しては一旦ここで終わりにして、次はBME280とのI2C通信の説明をします。温度、湿度、気圧センサを使うBME280はI2C通信、SPI通信どちらでもデータを取得できます。スイッチサイエンスwikiやGitHubで公開しているものはI2C通信用なので、簡単にするためにも今回はI2C通信でデータをやり取りしたいと思います。ESP-WROOM-02開発ボードでI2C通信をする時のピンは、特に設定が行われていない場合下の表の通りです。IO5スイッチサイエンスで販売しているBME280搭載モジュールはI2C通信用のプルアップが未実装なため、ブレッドボード上に抵抗をつけるか、センサモジュール上に1608サイズのチップ抵抗をつけてください。今回は、センサモジュール上に、10kΩのチップ抵抗をハンダ付けしました。BME280はI2C通信用のアドレスの選択ができます。今回は、SDOピンをGNDに配線し、アドレスをArduino向け7bit表記で0x76としています。開発モジュールとの配線は下の図のとおりです。ArduinoのスケッチをスイッチサイエンスwikiやGitHubから取得して、書き込んでください。シリアルモニタに温度などが表示されれば通信成功です。今回の紹介はここまでとします。次回は、NTPサーバーからの時刻の取得と、WEBブラウザ経由でSDカードの中身を見るところまでの紹介を予定しています。IDEESP-WROOM-02投稿ナビゲーション前の記事:神楽坂ではんだづけカフェ第5弾「放課後のリフロー体験」を開催します次の記事:第4回オープンハウスを開催します。