GPIO3 1ならブートモード、0ならユーザモードフラッシュROMへの書き込みは次のバッチファイルを起動している。
GPIO2 1ならリセット状態、0ならリセット解除状態
CP2103GPIO.exe com3 w 1100 ' ブートモード、リセット状態 CP2103GPIO.exe com3 w 1000 ' ブートモード、リセット解除 FDT.lnk ' フラッシュ書き込みツールを起動 echo ターゲットシステムを起動します。 pause CP2103GPIO.exe com3 w 1100 ' ブートモード、リセット状態 CP2103GPIO.exe com3 w 0100 ' ユーザモード、リセット状態 CP2103GPIO.exe com3 w 0000 ' ユーザモード、リセット解除
参考回路図(部品がなく動作未確認)
![]()
これでブートモードスイッチが不要になった。(それだけなのにかなり苦労してしまった)
追記:上記ではデフォルトで起動の度にリセット状態だ。
なぜならCP2103のGPIOのデフォルト設定が次のため。
Mode: Open Drain
LatchValue: 1
ControlledBy: Manually by Host
そこでアプリケーションノートAN223のツール
CP210xPortConfig.exe
によりデフォルトのLatchValueを0に書き換える。
これで電源投入直後にユーザモードで起動できる。
早くも故障してしまった。
HiレベルのはずのTXD端子が0.5Vしかなくて通信できない。
回路エラーかな。マニュアルの読み直しから始めよう。
CP2103のRXDに5Vをかけちゃったのがまずかったのかな?
回路図を修正してみたが部品がないので確認できない。