stcgal <質問に答える>
昔書いたSTC micro techのMCUにF/Wを書き込むツール stcgal について質問があった。Cygwinでstcgalを使うとFileNotFoundがでるらしい。
3年以上前のことなのですっかり忘れていて、PCも変えたので環境もないのでもう一度でやってみた。
〇結論
Cygwinでsctgalをつかったときに、「 FileNotFoundError(2, '指定 されたパスが見つかりません。', None, 3)」というエラーが発生した場合、↓の可能性がある。
- Cygwinのpythonをインストールしていない
- Windows版のpython.exeが実行されている
〇環境
- windows版のpython3.8がインストールされている。
- Windwos Subsystem for Linuxがインストールされている。
- Cygwinはインストールしていない。
今回Cygwin-x86_64をインストールした。
〇USBシリアル
USBシリアルモジュールを接続するとWindowsではCOM6で認識している。
CygwinではttyS5として認識する。
|
〇sctgalインストール
|
stcgalのページに書いてあるとおり。
〇Cygwinでstcgalを実行
|
本当だ。?_?)
〇stcgal.pyはどこにある
Cygwinでstcgalを探したけど見つからない。 /usr/local/lib/python3.8/site-pacagesにあるはずだけど...
そういえば、stcgalをインストールしたとき、WARNIGメッセージに"python.exe"と表示されていた。ひょっとして、Windows版pythonが実行されている?
調べたら、Cygwinのpythonをインストールしていななった。 (^^;
CygwinはWindowsの環境変数を引き継ぐようだ。Cygwinでpythonをインストールしていない場合Windows版のpython.exeが実行されていたようだ。 Windows版だから、/dev/ttySxって知らないよね。
〇Cygwinのpython3.8をインストール
Cygwinのpython3.8をインストールして、stcgalを実行する。
手順は↓のとおり。
- GNDだけ接続。(VCCはまだ接続しない)
- STC12C2052のP3.0/RxD、P3.1/TxDをパソコンのシリアルに接続
- STC12C2052のP1.0とP1.1をGNDに接続
- stcgal.py -p /dev/ttyS5 ←stcgal実行
- "Waiting for MCU, please cycle power:" ←が表示される。
- 電源投入(VCC接続)
|
ちゃんと認識した。(^^ めでたし、めでたし。
〇ちなみに
↑の方法で書き込む場合、電源にコンデンサがあると認識しないことが多い。(電源リセットだからね)
STC12C2052 (2017/09/24)にBash on Windowsでは使えないと書いたが、Windows10のWindows Subsystem for Linuxでもちゃんと使えた。ttySxの数字はWindowsのCOMxと同じ。(CygwinはttyS(x-1)=COMx)
- CPUボード
- 8031/8052 SBC (2017/10/08)
- STC12C2052 (2017/09/24)
- STC12C2052(2) (2017/10/08)
【最近の投稿】【最近のCPUボード】【最近のプログラミング】【2019の投稿】【2018の投稿】【2017の投稿】【2016の投稿】【2015の投稿】
« ダイソーのイヤホン <思いのほか良かった> | トップページ | 橋本愛の木綿のハンカチーフ »
「CPUボード」カテゴリの記事
- 久々の物欲(2022.05.21)
- stcgal <質問に答える>(2021.02.21)
- micro:bitで跳び上がると表示する名札 <ウケ狙い>(2020.11.18)
- micro:bit <BLEが乗った低価格マイコンボード>(2020.09.15)
- Google日本語モールス入力(2020.05.01)
コメント