目次

ESP32

買えるマイコンモジュール.なぜこんなに安いのかって疑問に思うくらい安い
Arduinoとして使うにはArduinoIDEに以下のリポジトリから色々追加する。
https://github.com/espressif/arduino-esp32
ESP32のDevkitのGPIOの割当は以下の通り(GitHubより)

CAN

CAN通信は正式なペリフェラルの機能になっていない?
SJA1000というCANコントローラと互換らしい,中に同等のシリコンが入っている?
ピンの指定が全くわからない.Olimexのやつを参考にするか?

MicroSD

高速で書き込みたいため4本使うタイプを使いたい,内臓のSRAMにすでに使用されているピンもあるので,そことどう折り合いをつけて良いのか確認する.

Timer

ESP32は4つのタイマーの指定が可能
timerBeginで初期化

UART

ハードウェアとして3つ搭載.
ArduinoのコードではSerialとしてすでに定義されている.これはUART0が割り当てられている.フラッシュの書き込みに用いるので,外部のシリアルモニタソフトを使っているとそのたびに接続を切らなければいけないので,内部のシリアルモニタを使ったほうが楽
UART1はフラッシュのSPIに被っているようで,デフォルトの設定では使えない仕様,いじれば使えるらしいけど Arduinoでソフトウェアシリアルを使うなら気にしなくも良さそう。
UART2は特に気にしなくても問題なさそう.

IO16(TX) ->
IO17(RX) <-

参考文献

ESP-WROOM-32
ESP32 Technical Reference Manual
ESP-WROOM-32ブレイクアウトSD+
ESP32はじめるよ
ESP32 CAN CAN board!!
ESP32-EVB
[ESP32][IDF] ESP32-EVB 同士でCAN通信を試す
A CAN driver for the ESP32
CAN32 - An ESP32 development board with CAN-BUS
ESP32でのタイマー割り込みによる自動計測
ESP32 Arduino: Timer interrupts
UARTの実験(ESP-WROOM-32)