OpenSDA v2/2.1 ブートローダーは、ボードを Windows 10 マシンに接続すると破損する可能性があることが報告されています。この問題を修正する更新された OpenSDA ブートローダーは、 www.NXP.com/openSDA から入手できます。この問題を扱ったArmの ブログ記事 もあります。
影響を受けるボードでブートローダを再プログラムするには、K20 OpenSDA MCU に接続された JTAG ポートに Segger JLink や Keil ULink プログラマなどの外部デバッガが接続されている必要があります。便宜上、OpenSDA v2.2ブートローダーのバイナリは、この投稿の下部に添付されています。
Segger JLink を使用している場合は、最新の JLink ソフトウェアおよびドキュメンテーション パック をダウンロードし、次の JLink.exe コマンドを使用して K20 OpenSDA MCU に接続します。
次に、次のコマンドを使用してブートローダーを再フラッシュします。
これは、ブリックされたOpenSDAボードを回復し、再ブリックされるのを防ぐ方法に関する別の投稿です。
ボード上のOpenSDAの詳細については、 www.nxp.com/opensda をご覧ください。
はい、J-Link EDU miniを使用してボードを再び機能させました。もう細かいことは覚えていません。それ以来、私は遊ぶ機会がありませんでした。Windows 10コンピューターに接続する前に、ファームウェアを更新する指示に従うべきだったと思います。破損した後、それを修正する唯一の方法は、ファームウェアをインストールするためにSegger J-Linkのようなものを購入することでした。
1月1日の投稿から、J-Linkを使用してその0244_k20dx_bl_0x50000.binファイルをK20チップにロードできたようです。 その後、K64はメンテナンスとして表示され始めました。 そこから、k20dx_frdmk64f_if_crc_legacy_0x5000.binファイルをそのドライブにドラッグしたようです。
私はちょうどMouserを通じて2つのFRDM-K64Fボードを購入しました。USBポートにボードを接続しました。Keil Vision IDE を実行しましたが、デバッグ インターフェイスが MBED CMSIS-DAP として表示されます。MBED という名前のフォルダが開き、mbed.htm と fail.txt が入っています。fail.txtの内容は、1 つの単語の TIMEOUT です。ボードは定期的にリセットされ続けました。
mbed.htmをクリックすると、mbedログインページがWebブラウザに表示されました。ログイン後、https://os.mbed.com/platforms/FRDM-K64F/
ファームウェアのアップグレード手順を段階的に実行したところ、ボードが故障しているように見えました。USBポートに差し込むと、Keil IDEは認識しなくなり、KDSも認識しなくなりました。
私はこのスレッドに来て、Windows 10の問題である可能性があると思ったので、ストレージからWindows 7コンピューターを取り出し、ボードをUSBポートに接続しました。ボードは定期的にリセットされなくなりました。フォルダにはmbed.htmしかなく、fail.txtはありません。ファームウェアをアップグレードするためのステップバイステップの手順を繰り返すことができました。同じバージョンのKeil IDEをインストールし、プログラムのダウンロードとデバッグができました。
ボードをWindows 10コンピューターに接続し直すと、DAPLINKという名前のフォルダーが開き、mbed.htmとDETAILS.TXTが入っていました。Keil IDE は、デバッグ アダプターを DAPLink CMSIS-DAP として認識します。これで、Windows10でプログラムをダウンロードしてデバッグできます。
Windows 10 は 2015 年 7 月にリリースされました。FRDM-K64Fボードには、NXP(c)2016のシルクスクリーンがあります。これは、NXPが古いFreescale製品のサポートを放棄したことを意味しますか?これらのデバイスに基づいて新しいものを開発するのは避けるべきですか?
これで、k20dx_frdmk64f_if_crc_legacy_0x5000.binをMAINTENANCEドライブにドラッグし、ボードがFRDM-K64FDドライブとして表示されるようになったので、進歩していると思います。その後、mbedWinSerial_16466.exeをインストールすることができ、デバイスマネージャーにmbedシリアルポートが表示されるようになりました。
チップに最も近い10ピンヘッダーを使用してK20に接続することになっていると思っていました。JTAGターゲットインターフェースを選択して接続できました。ファイル0244_k20dx_bl_0x50000.binをボードにロードすることができました。これで、FRDM-K64Fを差し込むと、メンテナンスドライブとして表示されます。これは、リセットボタンを押しているときと押していないときの両方です。その中にDETAILS.TXTというファイルが1つあります。更新する前に、リセットボタンを押し続けるとボードはBOOTLOADERドライブとして表示されます。そのドライブには、開かないことを示すhtmファイルが1つあります。約 20 秒後、そのドライブは消えます。
Hi Leon,
ログには次の情報が表示されます。
>>デバイス「MK20DX128XXX5」が選択されました。
これが私の考えでは問題です。デバッグ接続が K64F ではなく K20 (OpenSDA 回線) に接続しようとしますか?
したがって、K20と話す代わりに、J-linkCommanderで次のデバイスを使用してください。
MK64FN1M0xxx12
正しい SWD デバッグ ヘッダーに接続していることを確認してください。
https://mcuoneclipse.files.wordpress.com/2017/07/debugging-frdm-k64f-with-linkserver-lpc-link2.png
記事 Using the FRDM-K64F with CodeWarrior |Eclipse上のMCUは、ボードのさまざまなデバッグオプションも示しています。
お役に立てば幸いです。
Erich
もうすぐ2020年になりますが、これらのボードがすでにWindows 10で動作するように更新されているのは面倒すぎると思います。
FRDM-K64FボードとSegger J-Link mini eduを持っています。J-Link Commander V6.60cを使用すると、「ターゲットに接続できません」というメッセージが表示されます。理由はわかりません
これがJ-LinkCommanderのテキストです。
SEGGER J-Link Commander V6.60c (2019年12月23日16:15:43コンパイル)
DLLバージョンV6.60c、コンパイル済み、2019年12月23日16:14:31
J-LinkとUSB接続している...わかりました
ファームウェア:J-Link EDU Mini V1コンパイル済み2019年12月13日11:16:57
ハードウェアバージョン:V1.00
S / N:801016825
ライセンス: FlashBP, GDB
VTref=0.000V
「connect」と入力してターゲット接続を確立し、「?」と入力してヘルプを表示します
Jリンク>コネクト
デバイス/コアを指定してください。
選択ダイアログに「?」と入力します
デバイス>MK20DX128XXX5
ターゲットインターフェースを指定してください。 J) JTAG (デフォルト) S)SWDの T) cJTAG ティフ>ス ターゲットインターフェース速度[kHz]を指定します。
スピード>4000
デバイス「MK20DX128XXX5」が選択されました。
SWD経由でターゲットに接続する
ターゲットに接続できません。
Jリンク>
どなたかいらっしゃいますか?Thx クリストフ
ねえshuichiy、みんな
あなたとまったく同じ問題。FRDM-K22Fが実行されているLS1012ARDBを実行すると、もちろんWIN10ホストも実行されます。
私もKEIL MDK Pro(フラッシュには光で十分、制限なし)とULINK Pro JTAGプローブを使用しているので、K22をフラッシュすることができました。
ただし、それは少し面倒です:HEXファイルのみがその方法でフラッシュできるため、最初にBINをHEXに変換する必要があります。KEILが提案したようにsrec_cat.exeを使用しています。
..\srecord-1.63-win32>srec_cat.exe 0244_k20dx_bl_0x8000_OK.bin -Binary -o 0244_k20dx_bl_0x8000_OK.hex -Intel
このようなHEXファイルは、K22で効果的に点滅します。そのためには、もちろん、空のuVisionプロジェクトが配置され、コードはありませんが、正しい「ターゲット1」と関連する構成(ここではNXP MK22FX512AVLH12)が必要です。また、RDBで電源がオンになっており、フラッシュが発生するように前面USB(DAP)も接続されていることを確認する必要があります。
したがって、私にとっては、すべて正しく行ったと思いますが、BINからHEXへの変換が何か間違っていたのか、それともKEILの「ターゲット1」構成が間違っているのか疑問です(私は疑います)。
どなたか手伝っていただけますか?もし私がこれを実現することができれば、もちろんここで私の発見を共有することができます - 確かにその問題を抱えているのは私だけではありません。いくつかの答えをお願いします!
Thx Christophe
J-Linkを間違ったコネクタに接続した可能性があると思います-ボードのもう一方の端にあるコネクタではなく、USBポートの近くのSWDコネクタに接続していることを確認してください。
皆さん、こんにちは
FRDM-K22Fで同じ問題が発生しました。
私はデバッガとしてKeil uVision V5とULINK2を持っていますが、ブートローダーの.binをどのようにプログラムするかはまだわかりませんuVisionのファイル。
回避策がある場合は、アドバイスをいただけますか?
ありがとうございます
秀一
Hi,
jtagが標準ですので、JLinkの代わりにAVR jtagプログラマを「mySmartUSB MK3」として使うことは可能ですか、それともAVRボード専用ですか?
ご助言いただけますと幸いです。
-Valerio
私の #frdm-k82f はレンガの状態です。0244_k20dx_bl_0x8000ファイルをMK20DX128XXX5にロードしようとしています。「Kinetisのロック解除」を実行してもフラッシュエラーが発生しますスクリーンショットを見つけてください。誰かが私が問題を見つけるのを手伝ってくれますか
私は自分のボードでプロセスを実行したところ、最終的に、SDAをホストする部品のIDではなくMCU IDを指定していることに気づきました。FRDM-K66 ボードを持っていますが、SDA は MK20DX128VFM5 で動作します。ああ。
しかし。私はまだ森から抜け出していませんが、自分がどのように間違っていたかに気付く前に、あらゆる種類のフラストレーションを見ていました。
Hello,
このガイドを使用して、j-link を使用して新しいバイナリを twr-kv58220m ボードにロードしようとしました。ただし、j-linkはボードへの接続を拒否し、次のものを提供します。
ボードは継続的にリセットしたいようです。誰かが私がこれを回避する方法について何かアイデアを持っていますか?
更新:別のコンピューターを使用して、別のブートローダー(「SDAブートローダー」)をボードにロードすることができましたが、これでUSBまたはJTAGを使用してボードを再びコーディングできます。実際には解決策ではありませんが、可能な回避策です。これがお役に立てば幸いです..
-マイク
ブートローダーは、.binでプログラミングするときに更新しますこの投稿に添付されていたファイル。そのため、現時点ではブートローダー部分を更新する唯一の方法であるため、外部デバッガープローブが必要です。
次に、ブートローダーを更新した後、投稿でリンクしたDAPLinkアプリのようなOpenSDAアプリをロードして、ボードを完全に更新する必要があります。
-アンソニー
FRDM-K22Fでは、OpenSDA v2.2を更新した後、
CMSIS-DAP BOOTLOADER ?
FRDM-K28FにはすでにOpenSDA 2.2ブートローダーが付属しているため、そのボードを更新する必要はありません。
Hi Alven,
FRDM-K22Fでは、外部デバッガ(Segger JLinkやKeil U-Linkなど)をJ12ヘッダーに接続する必要があります。次に、.binでプログラムしますこの投稿に添付されているファイルで、OpenSDAブートローダーをバージョン2.2に更新します。ボードをコンピューターに接続すると、大容量記憶装置として列挙されます。次に、FRDM-K22F用の最新のDAPLink OpenSDAアプリケーション(https://www.nxp.com/assets/downloads/data/en/ide-debug-compile-build-tools/OpenSDAv2.2_DAPLink_frdmk...)をドラッグアンドドロップすると、すべてが更新されます。
-アンソニー
バージョンについて本当に混乱しています、K22 FのopenSDA 2.2にアップグレードする方法は?
FRDM-K28Fはどうですか?
Hi Pete,
私はそのベータv2.1ブートローダー( https://mcuoneclipse.com/2016/06/26/how-to-recover-the-opensda-v2-x-bootloader/ と FRDM-K22Fを回復する方法を参照してください - 質問| mbed )をFRDM-K64FとWindows 10(64ビット)で数日間使用しており、ブートローダーの上書きに問題はありません。唯一のことは、このV2.2ブートローダーはアプリケーションのベースアドレスとして0x8000を使用しているため、V2.0アプリ(例:Segger または P&E) は機能しません。0x8000バージョンをロードする必要があります。これは、たとえば、FRDM-K64FのSegger MSDファームウェア( https://mcuoneclipse.com/2016/06/19/segger-opensda-firmware-with-virtual-msd/ を参照)を使用できないことを意味します。ただし、このファームウェアはベースアドレスを0x5000と想定しています。OpenSDA v2.2には2つのバリエーション(0x5000と0x8000)があることを願っています。それ以外は、これまでのところ、私にとっては問題なく機能しています。
お役に立てば幸いです。
Erich
Hi Iggy,
https://mcuoneclipse.com/2016/06/26/how-to-recover-the-opensda-v2-x-bootloader/
別の FRDM ボードを使用してブートローダーをプログラムする方法。
お役に立てば幸いです。
Erich
この問題のステータスの更新を取得できますか?
こんにちは、Win 10マシンにBOOTLOADERモードに接続したときにFRDM KV31Fボードに同じ問題が発生したようです。ボードを切断した後、他のPCではまったく検出できなくなりました。外部デバッガなしでこの問題に対する他の解決策はありますか?私は趣味/学生であり、確かに外部デバッガーを買う余裕はありません。
どうもありがとう