問題タブ [segger-jlink]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
debugging - J-Link デバッガーを起動するとハングする
うまく機能していました。ここで、J-Link Debugger ソフトウェアを起動すると、空の「ターミナル」ウィンドウが表示され、ハングします。
Windows-7 Pro 64ビットラップトップの電源を完全にオフにし、ターゲットボードの電源を切り、ボードを起動してからラップトップに...同じ問題が発生しました。USB-SS で J-Link BASE プローブ v9.3 に接続された Windows
対象デバイスはSTM32F427II
c - 監視コマンドでの GDB コンビニエンス変数の使用
JLink SAM-ICEarm-none-eabi-gdb
を使用しJLinkGDBServer
て組み込みシステムをデバッグするために使用しています。組み込みシステムは、ATSAMD21 MCU を使用します。
JLinkGDBServer のドキュメントの 25 ページを読んで、次のコマンドを使用してマイクロコントローラーのメモリ位置を読み取ることができることを知りました。
そして、それはうまく機能します。今、私が抱えている問題は、これを自動化し、さまざまなメモリを読み取る必要があることです。そのため、これを実行しようとしました:
しかし、明らかにそれは私にとってはうまくいきません。誰が何が起こっているのか知っていますか?このようなメモリ位置を読み取るにはどうすればよいですか?
c - K64F をフラッシュしようとしましたが、CPU を停止できませんでした
カスタム ボードに配置された Cortex M4 をプログラムしようとしています。プロセッサは MK64FN1M0VLL12 です。OpenSDA を使用して USB 経由でビンをロードする FRDM-K64F 開発ボードを使用してコードを作成しました。コードは mbed で書かれていますが、私の知る限り、プログラムをプロセッサにロードするためのサポートはありません。製品版のボードでは、OpenSDA インターフェースが含まれていなかったので、J-Link プログラマー経由でプログラムをロードすることを計画していました。
J-Link コマンダー ツールを使用して、何らかの応答を得るには、ボードのリセット ボタンを押し続ける必要があることがわかりました。リセットを押さないと、次のようになります。
ビンをロードしようとすると、CPU が停止していないというメッセージが表示されます。まだリセットを押しているかどうかに関係なく、これを取得します。
OK メッセージは少し誤解を招きます。LEDが点滅するだけのプログラムをアップロードしようとしたのですが、LEDが点滅しません。
ここからどこへ行けばいいのかわからない。グーグルの数日間は、私を実りある場所に導きませんでした。
debugging - CLion での J-Link GDB デバッグ
少し前に、CLionにリモート GDB デバッグのサポートが追加されました。Seggers の J-Link GDB サーバーでセットアップしようとしています。
私のセットアップ:
- Ubuntu 16.04 を実行する VM VirtualBox
- J-Link ドライバー: V6.10
- 対象チップ:nRF51(ARM Cortex M0)
- CLion 2016.2.2
私は通常 Windows で作業しますが、CLion は Windows でリモート GDB をサポートしていないため、VirtualBox で Ubuntu を実行して動作させようとしています。上記のリンクにあるブログの助けを借りて、画像に示すように CLion でデバッガーを構成しました。私が使用した引数は、J-Link のドキュメント (ドキュメント: UM08001) といくつかの推測に基づいています。 GDB サーバーのセットアップ
私の問題は、デバッガーを実行するとプロセスが停止し、CLion のコンソール出力が次のようになることです。
「ターゲットに接続できませんでした。電源、接続、および設定を確認してください。」
端末から JLinkGDBServer を実行しようとしましたが、次のようになりました。
誰かが私が間違っていることの手がかりを持っていますか?
linux - J-Link OpenSDA ファームウェアと GDB を使用した mBed-OS 5 のデバッグ
OpenSDA をサポートするMK64FN1M0xxx12開発キットを使用しています。デバッグを容易にするために、SEGGER デバッガ コマンド セットをサポートするJ-Linkファームウェアをフラッシュしました。これを行う前に、自分のデバイスが公式にサポートされていることを確認しました。
より詳細にするために、 mbed-os 5、特にuVisorセキュリティ パッチをデバッグしようとしています。uVisor Github ページには、GDB セッションを介してデバイスに接続してデバッグ プリントを受信するための指示を提供するデバッグに関する記事があります。J-Link セッションを適切に接続できましたが、バイナリを実際にデバッグできないようです。さらに、デバイスを適切にフラッシュできないようです。ただし、バイナリをデバイス RAM にプッシュすることはできます。
彼らの指示は次のとおりです。
それで、私は彼らの仕事を複製しようとしました。J-Link 経由でデバイスに接続する
GDB クライアント セッションを確立する
結果のJ-Linkコンソール出力
ほとんどうまくいっているようですが、私は GDB に精通しておらず、どこで問題が発生しているのかを知ることができません。load
J-Link コンソール出力から、2 番目が RAM の初期の内容を上書きしているように見えます。この命令を省略した場合 (最後のfile
コマンドを保持した場合)、エラーは報告されませんが、経由の接続nc
はデバッグ メッセージを表示しません。
uVisor デバッグ ライトアップ (GDB コマンド リストに続く) にもかかわらず、実行時に多くの種類のメッセージを報告する必要があることが示されています。これに加えて、(一見) ボードに正常にダウンロードされたプログラムが、実行時に正常に動作しません (LED が点滅しないなど)。
uVisor で以前に数回見つけたように (非常に新しいため)、ドキュメントが古くなっている可能性があります。また、調査の結果、他のユーザーはmonitor flash download = 1
フラッシュ プログラミングを有効にするためにコマンドを使用する必要があることがわかりましたが、私にはうまくいかないようでした。このコマンドの出力は と表示Flash download enabled
されますが、私が知る限り (出力と経過時間を考慮すると) フラッシュには何も書き込まれません。
debugging - CLion の GDB モニターコマンド
リモート GDB を使用して組み込みプロジェクトをデバッグしようとしています。私のシステム:
- ターゲット: ARM Cortex M0。
- SEGGER J-Link GDB サーバー V6.10 コマンド ライン バージョン
- アーム-なし-eabi-gdb 7.10.1.20160616-cvs
- CLion 2016.2.2、ビルド #CL-162.1967.7
- Ubuntu 16.04
私の .gdbinit ファイルには次のものがあります。
何日も私を悩ませてきたのは、端末から直接 gdb を使用してデバッグすると問題なく動作するが、CLion でデバッガーを使用するとうまくいかないことです。CLion では、次のエラーが表示されます。
「モニター」コマンドは、このターゲットではサポートされていません。
私の理論では、端末は「モニターリセット」コマンドを受け入れるというものです(少なくとも文句はありません)。一方、CLion はエラーを出力しますが、リセットを行わずにその後に進むように見えます。その結果、CLion で新しいデバッグ セッションを開始すると、main() の先頭から開始しないようです。
CLion は監視コマンドをブロックしていますか? もしそうなら、なぜですか、そして回避策はありますか?