ESP32 シリアル通信のテスト
JH7UBC 2019.12.24


ESP32は、シリアル通信ポートを3個持っています。UART0,UART1,UART2です。
各ポートのピン割り当ては、次のとおりです。

 UART0  RXD0  GPIO3  
 TXD0  GPIO1
 UART1  RXD1  GPIO9  デフォルトでは使用不可
 TXD1  GPIO10
 UART2  RXD2  GPIO16  
 TXD2  GPIO17

UART1の使用法は、Qiitaのサイトをご覧ください。
 Arduino IDEは、シリアルモニタを持っていますので、まずそれからテストします。
シリアルモニタで使用されるポートは、UART0です。
次のようなスケッチで、エコーバックテストをしました。

シリアルモニタから送信した文字が表示されます。

通信速度を上げてテストをしてみると、500000bpsまで通信できました。
UART0のRXD0(GPIO3)をPicoScopeで見てみると(500000bpsの時)

という感じです。アイドリング時は、HIGHレベルで、スタートでLOWに下がります。

次に、UART2を使ってパソコンと通信してみます。
接続回路図です。GPIO16(U2RXD)とGPIO17(U2TXD)とUSBシリアル変換モジュールFT234を回路図のように接続します。
パソコン側の通信ソフトは、定番のTeraTermで通信速度は115200bpsとします。




ブレッドボードです。

スケッチです。


TeraTermの画面です。キーボードから入力した文字がESP32に送られて、同じ文字が送り返されます。


inserted by FC2 system