ESP32マウス(shota)マウス自作研修

shotaのマイクロマウス研修18 ESP32周辺回路とピンの機能選択

ESP32マウス(shota)

こんにちは、shotaです。
社員研修として、オリジナルマウスを製作しています。

今日は回路設計の最後の記事です。(やっと終わる・・・)
ESP32周りとピンの機能選択について書きます。

これまでの記事で各回路ブロックについて説明したので、どんな回路があったのかは過去記事を参照してください。
この記事の上部にある編集者名shotaをクリックすれば、過去記事が見れます。

ESP32周り

このような回路図になりました。

回路としてのポイントとしては

  • 3.3V電源にパスコンをつける
  • EN端子(リセット端子)にプルアップ抵抗をつける
  • です。回路定数は、ESP32の開発キット(ESP32-DevKitC-32D)の定数をコピーしています。

    また個人的な回路図の書き方のこだわりですが、マイコンの端子には回路ブロックを直接繋げないようにしています。
    直接つなげるのではなくラベルでつなげることによって、回路修正が簡単になります。

    回路設計中やアートワーク設計中は、マイコンのピンの機能を変更することが多々あります。
    ラベルを使うことによって、ピンの入れ替え(例えばLED0, LED1を逆にする、モータの右左を入れ替える)に対して、ラベルを入れ替えるだけで修正できます。

    ピンの機能選択

    最後にピンの機能選択について説明します。

    各ピンについて1つずつ説明すると時間がかかるので、まず下の表を見てください。
    (文字が小さいので、画像をクリックして別窓で表示してください)

    自分はマイコンの各ピンの機能を表計算ソフト(エクセルやGoogleスプレッドシート)で管理しています。
    列には以下の項目を書いてます。

    データシートから読み取る項目

  • Name: ピンの名称
  • No.: ピン番号
  • Type: ピンの種類(P:Power 電源系, I:Input 入力専用, I/O:Input/Output 入出力)
  • Function: ピンの機能。ピンによっては複数の機能を持つ
  • 初期状態: 電源ON直後のピンの状態。
  • IOMUX: ESP32特有の機能。例えばSPIを高速通信させたい場合は、IOMUXがHSPIやVSPIとなってるピンを選ぶ
  • 自分の回路図で設定する項目

  • 実際に使用する機能: Functionから実際に使用する機能を1つ選ぶ
  • Role: ピンの役割。ここには回路図上のラベルを書く
  • 接続先: ピンが接続される回路ブロックを書く
  • 外部Pull Up/Down: 接続先の回路ブロックでピンがプルアップ/ダウンされるかどうかを書く。
  • 動作確認できたか?: 基板作成後に動作確認し、機能が正しく動いたかどうかを書く。
  • Name ~ IOMUXまでの情報を事前に準備しておけば、ピンの機能選択が簡単になります。
    ESP32は入力専用のピンがあったり、内部メモリと接続されて使えないピンがあったりと、意外と使えるピン数が少ないです。。。

    しかし、ESP32にはGPIOマトリックスという好きな機能を好きなピンに割り当てられる仕組みがあるので、その点では他のマイコンよりもピンの機能選択が簡単でした。

    GPIOマトリックスについてはこの記事を参照してください。
    [ESP32でMPU9250とSPI通信する]

    次回について

    回路図が完成したので、アートワークについて記事を書きます。

    タイトルとURLをコピーしました