ハード的な準備
esp32とCANトランシーバーが必要です。トランシーバーは、3.3V駆動、5V駆動等数種類あります。今回使ったのは、5V駆動のMCP2562です。配線等は、こちらのページを参考にしました。
MCP2562を使った電子工作- 人気IoTマイコン【ESP32】 | Tommy blog
データーシートはこちらです。
ピン番号勘違いするといけないので、kicadを使って回路図にしました。
基板を作るわけではないので回路図だけです。しばらく使わないうちに5.15から5.1.9にバージョンアップしてました。esp32はシルクプリントがあるのでそこに配線します。ただし、シルクプリントの文字は小さいです。ブレッドボードに差し込んで配線しました。こんな感じです。
送信を緑線、受信を白線にしました。左上がCAN_HとCAN_Lの配線となります。
ソフトウェア
VScodeを使って、arduinoをプラットフォームとして環境を構築します。
esspressifから提供のCANサンプルを活用します。GPIOは、送信がGPIO5、受信がGPIO4です。arduinoのソースは、以下のとおりです。
(GISTは、埋め込み出来なくなりました)
バイナリーの作成と書き込み
VScode+PlatformIOでバイナリーを作成します。特にエラーもなく問題なくバイナリーは作成できました。書き込みも問題なしです。
リセットしてシリアルモニターすると、プログラムは動いている感じです。今後の予定
CAN送受信機は出来たのですが、問題ないのか機能確認をするすべがありません。いきなり、車やバイクに接続するのも怖いので何らかの手法を考えたいと思います。オシロがあればいいのですが、テスターしか手元にはありません。中華製探すと3-5万円程度でそれなりのが出ております。買うかどうかはちょっと考えます。
今日のまとめ
マイコンesp32とCANトランシーバーmcp2562を使って、CAN送受信機を作りました。ソフトウェアは動いている感じですが、CANデーターの送受信を確認する手段がありません。考えながら少しずつ進めたいと思います。
0 件のコメント:
コメントを投稿