カメラモジュール(ハードウェア編)

13Feb - by Joe-90 - 0 - In HOゲージ制御

ハードウェア:Unit Cam Wi-Fi Camera (OV2640)
メーカー:M5STACK社
ESP32-WROOM-32E、OV2640を搭載したカメラモジュール

https://docs.m5stack.com/en/unit/unit_cam

https://docs.m5stack.com/en/unit/unit_cam

カメラの差し直し

購入時、少しずれていたのが気になったので修正。
黒い部分が90度回るように開くしくみ。

ピンヘッダの実装

3pin×2の計6ヶ所のはんだ付け

これを実装。

手前下の部分に、はんだ付けされたピンヘッダが3つ見える。

プログラム書き込み用のUSB-TTLシリアル変換ケーブルを用意

USB to TTL Serial Cable – Debug / Console Cable for Raspberry Pi
https://www.adafruit.com/product/954

変換ケーブルのドライバをインストール。

「CP2102 USB to UART Bridge Controller」のデバイスドライバをインストールする。
https://learn.adafruit.com/adafruits-raspberry-pi-lesson-5-using-a-console-cable/software-installation-windows

この基板CP2102のドライバは提供されていなかったので、同じモジュールを使っている他の会社のものをインストールすることにする。

Pololu社のドキュメントのダウンロードリンクから入手。

CP2102 USB-to-Serial Bridge Driver Installation
https://www.pololu.com/docs/0J7/all

問題:USB-TTLシリアル変換ケーブルの端子数が足りない

持っているシリアル変換ケーブルの端子が4本なのに対して、データシートで用いられている変換機の端子は6本

https://docs.m5stack.com/en/unit/unit_cam

USB-TTLシリアル変換ケーブルのサイトの説明を読む。

赤の電源、黒のアース、USB ポートへの白の RX、USB ポートからの緑の TX です。

このケーブルは、Boarduino、MENTA、Monochron などの Arduino の再プログラミングには適していません。ブートローダーの再起動シーケンスを開始するために必要な DTR/RTS ワイヤがないためです。そのためには、FTDI ケーブルまたは FTDI フレンドをお勧めします。https://www.adafruit.com/product/954

FTDI ケーブルのサイトの説明を読む。
端に 6 ピン ソケットがあり、5V の電源とグランド、および 3V ロジック レベルの RX、TX、RTS、および CTS があります。これらは、Boarduino、Meggy’s、またはその他の Arduino クローンおよび派生物、および Fuzeboxen での使用に最適です。XBeeなどの TTL シリアル デバイスと通信する場合に便利です。https://www.adafruit.com/product/70

DTR/RTSワイヤとはなにか?

「ブートローダーの再起動シーケンスを開始するために必要な DTR/RTS ワイヤ
ESP8266にDTRとRTSで自動書き込みをする」の記事に書いてあること。
ESP8266のリセット回路はこのようになっています。IO0ピンをLにした状態で立ち上げる(リセットする)とブートローダーが起動し、UARTからプログラムが書きこめるようになります。すなわち、IO0と~RESETのスイッチを両方押して、~RESETを離してからIO0を離して書き込みボタンを押すという操作が必要になります。 https://days-of-programming.blogspot.com/2018/05/esp8266dtrrts.html

DTRで相手にこちらの端末が生きていることを伝え、RTSでデータ受け入れ可能であることを伝えます。

解決:シリアルデータの送受信はTX-RXだけで行っている。

DTRとRTS信号は、端子に電圧をかけることで偽装できる。
IO0ピンをLにした状態で立ち上げる→G0ピンをGNDに接続する。

シリアルの配線

回路図を見ながら配線する。

黒:GND
赤:電源(5 V500mA)
白:RX(3.3V)
緑:TX(3.3V)

https://docs.m5stack.com/en/unit/unit_cam

データシートの回路図と配線図を見ながら、TX-RXが交差するように配線。

プログラム書き込み時は、GNDとG0を接続する。

次回は、Arduino-IDEを用いて、プログラムを書き込んでいく。