JTAGでプログラム書込み

JTAGで書込み ピン配置貼付

手持ちのstm32でboot loaderを使うことは諦め、JTAGでの書込みを試みることにする。

stm32+JTAGで検索するJTAGkey互換の書き込み器が流行っているようだ。作るか買うか迷っているうちに、OLIMEXARM-USB-OCD買っていたことを思い出した。JTAGkeyに手を出すのは、これを試した後でも遅くは無い。

で、ドライバーを探してインストールしたり、OpenOCDをインストールしたりして、なんとかプログラムを書込み、LEDを点滅することができた。めでたしめでたし。

ARM-USB-OCDのピン配置図を自分で描いて貼り付けた。メス-メスのジャンパワイヤと合わせて使いやすい。写真ではJTAGの信号を観測するためにメス-オスのジャンパワイヤをブレッドボードで中継させている。

Comment

  1. […] 先週注文したstm32f4xxの基板が予定通り午前中に到着。動作確認を行うためCPU周りの最小限の部品だけ実装する。 プログラム書き込みは、いつものOLIMEXのARM-USB-OCDでもできるはずなのだが、ST-Linkも使用できることが分かったので買ってみた。秋月電子で2,500円だ。 付属のよさげなケーブルはSTM32では使用不可接続するために資料を見ると、付属のよさげなケーブルはSTM-8でしか使用できないことが判明。厳密には、指す場所を変えればSTM-32でも使えるかもしれないが、ピンソケットに書かれた信号名が違ってしまうので使う気にならなかった。 ARM-USB-OCD用の自作ケーブルとジャンパーケーブルで接続。ST-Link UtilityをつなぐとCPUが認識されたので、これは順調かと思いきや、ハマってしまった。テストプログラムを書きこんでもLEDが点滅しない。 散々調べた挙句判明した原因は、ST-Linkとの接続ミス1箇所とスタートアップルーチンから予期せぬタイミングでSystemInit関数が呼び出されていたこと。 水晶の周波数を手持ちの部品の関係で設計値と違うものを使っていたので、pllの設定を行うSystemInit関数で引っかかることは予想できていたので、呼び出し部をコメントアウトして試していたつもりが、予期せぬ場所から呼ばれて止まっていた。 わかってしまえば、あとは順調で、コマンドプロンプトまで動作するようになった。 めでたしめでたし。 […]

Leave a Reply

メールアドレスが公開されることはありません。