問題タブ [openocd]
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.
c - cortexM3 から cortexM4 に「移行」する方法
私は SAM3S( cortex-m3) で実行される古いプロジェクトを持っています。Sam4S cortex-M4 で実行する必要がある新しいプロジェクトのベースとしてそれを使用する必要があります。oopeocd.cfg
を変更した後、このエラーが発生しましたが、実際の意味がわかりません:
ここで誰かが私が見るべきヒントを与えることができますか?
アップデート
今、私はこのエラーが発生します:
今何が問題なのかわからない
エド
stm32 - OpenOCD を使用して STM32F3 Discovery ボードをフラッシュしようとしています: 「フラッシュ バンクが見つかりません」
このレポを複製し、make flash
. 関連するルールは次のとおりです。
oocd.cfg:
make flash
次に、次の出力が得られます。
コマンドはそれprogram
を示してno flash bank found
おり、データは書き込まれていません。当然、verify
コマンドは失敗します。
0.9 タグから OpenOCD を構築しました。libusb-1.0-0-dev
ST-Link サポートに必要な aptitude を使用してインストールしました。
私の構成の何が問題なのですか、またはこのタスクで試すことができる OpenOCD の代替手段はありますか?
c - コマンド ライン パラメータはセミホスト プログラムにどのように渡されますか?
GNU ARM Eclipseプラグインによって生成され、セミホスティングが有効になっている STM32f4xx プロジェクト テンプレートを見ています。main
関数はargc
とパラメータの両方で定義されargv
ますが、これは独立した組み込みプログラムではほとんど役に立ちませんが、セミホスト型のデバッグされたプログラムの場合、何らかのメカニズムを使用して渡すことができます。だから私の質問は、このメカニズムにどのようにアクセスするのですか? 現在、テンプレートとプロジェクト設定に変更を加えていない場合、argv[0]
equals は string と同じですが、"foobar"
どこから来たのかわかりません。そして、他の文字列を渡す方法がわかりません。詳細情報:
- IDE: Eclipse + GNU Arm Eclipse プラグイン
- ツールチェーン: GCC ARM Embedded
- デバッグ: ツールチェーンからの Eclipse + OpenOCD + GDB
- ハードウェア: STM32f401vC
更新:定数がnewlib
コードの奥深くに埋め込まれているのではないかと疑い始めています。args の読み取りがトリガーされた場所 ( にあります_syscals.c
)はわかりますが、どこcall_host (SEMIHOSTING_SYS_GET_CMDLINE, &cmdBlock);
で処理されているのかわかりません。次に、に変換され、bkpt 0xAB
そこから失われます。
buildroot - buildroot でパッケージ バージョン (openocd) を更新する
buildroot-2012.11 を使用して組み込みシステム用の Linux イメージを生成するプロジェクトに取り組んでいます。
FTDI チップ (FT2232D) を使用する JTAG デバッガー用に openocd を構成する必要があります。
このビルドルート バージョンは openocd-0.5.0 を統合しており、最新の openocd リリースは 0.9.0 であることに気付きました。ft2232 (非推奨)の代わりにftdiインターフェイス ドライバーを使用したいので、このバージョンに更新することに興味があります。
次の行の /package/openocd/openocd.mk を変更して、それを達成しようとしました。
新しいopenocdファイルは正常にダウンロードされましたが、それをインストールしてopenocd-0001-fix-cross-compilation-host-libsub-was-used-before.patchを適用しようとすると、次のようになりました:
パッチをスキップすると、ビルド プロセスが停止し、イメージを生成できません。
私はインターネットでいくつかの調査を行っていますが、これを正しく行う方法が見つかりませんでした。
おそらく1つの明らかな解決策はbuildrootバージョンを更新することかもしれませんが、現在のバージョンで開発している人が他にもたくさんいるので、私は今その決定を下す立場にありません.
どんな助けにも感謝します。
c++ - Eclipse/OpenOCD でデバッグしようとしているときに「プログラム ファイルが存在しません」
最近、nrf51 bluetooth モジュールを入手し、Eclipse Mars でデバッグしようとしています。必要なツールチェーンと OpenOCD をインストールしました (STLink v2 を使用してボードをデバッグしています)。
コンソールで openOCD と arm-none-eabi-gdb を実行すると、すべて正常に動作します。OpenOCD サーバーが起動し、gdb ツールに接続できます。
ただし、Eclipse でデバッグ セッションを開始しようとすると、「起動中に例外が発生しました。理由: プログラム ファイルが存在しません」というエラーがスローされます。ビルド プロセスは正常に終了します。C/C++ 開発に Eclipse を使用したのはこれが初めてであり、数年ぶりに Eclipse を使用したので、何が問題なのかさえわかりません。
運が悪いので、プロジェクトの設定をいじってみました。誰でも私にヒントを与えることができますか?
北欧の SDK サンプルの 1 つをコンパイルしようとしたので、既存の Makefile を使用しました。結果のファイルをデバッグできるように変更しました。
stm32 - STM32 L1 Discovery ボードを実行できません
新しい STM32 L1 ディスカバリー ボードを持っていますが、壊れているようです。しかし、私は完全にはわかりません。
ボードを USB 経由で Linux マシンに接続すると、ボードは問題なく起動し、デモはベンダーの説明どおりに動作します。
しかし、実際にこのボードに接続することはできません。
ボードが接続されているようで、ST-LINKとDISCOVERYを切り替える大きなジャンパー(CN3)がDISCOVERYに設定されています。しかし、st-link ユーティリティを使用しようとすると、受信します。
また、OpenOCD はボードと通信できません。
ボード上のチップは STM32L152RCT6 です。以前は STM32F0..4 で作業していましたが、そのような問題は一度もありませんでしたが、以前は L シリーズで作業したことがなかったので、これがボードの問題なのか、ここで重要なことをスキップしているのかわかりません。
編集: OpenOCD を使用すると、予期しない動作がわかりました。最初の実行時にエラーが発生します:
2 回目の実行時:
その後、デバイスはシステムから消え、dmesg
メッセージを残します:
アダプターの速度に問題があるのではないかと思いますが、今のところわかりません。
EDIT2: Windows ST リンク ユーティリティを試してみましたが、ボードに接続できず、ボードが「検出エラー」または「接続エラー」を引き起こし、ソフトウェアが SWD 周波数またはモードの変更を提案します。文字通りすべての組み合わせで疲れましたが、どれも機能しません。
EDIT3:これが誰かを助けるなら、ボードは送り返されました、私はそれが実際に壊れているという情報を得て、私は新しいものを手に入れました. 新しいものは期待どおりに完璧に動作します。
openocd - Beaglebone Black の OpenOCD
これはこのボードでの初めての投稿であり、JTAG デバッグの世界にもかなり慣れていません。以前にいくつかの商用製品を使用したことがありますが、OpenOCD に切り替えたいと考えており、これまでに多くの失敗を経験しています。 . Flyswatter2 と彼らが提供するキットを使用して Beaglebone Black に取り付けようとしましたが、ほとんどの結果は次のようになります。
アダプタの速度を落とそうとしましたが、デバイスは実際に再起動しますが、カーネルが起動すると、上記のようなエラー メッセージが表示されます。
これらのエラーメッセージはまだ少しわかりにくいので、どこから始めればよいかよくわかりません。アイデア/考え/提案はありますか? ソースを掘り下げて、必要に応じて調整を加えたいと思いますが、今は少し無知すぎてそうすることができません!
eclipse - Openocd は、STM32F429 Discovery ボードの Eclipse デバッグについて「コード (1) で失敗しました」と報告します
STM32F429 Discovery ボードの Eclipse (luna) でデバッグ セッションを開始したとき。次のエラーが表示されます。
OpenOCD はコード (1) で失敗しました。
コンソール ペインの情報は次のとおりです。
Open On-Chip Debugger 0.9.0-dev-00223-g1567cae (2015-01-12-13:43) GNU GPL v2 の下でライセンス バグ レポートについては、 http: //openocd.sourceforge.net/doc/doxygen/bugsを参照してください.html 情報 : 選択したトランスポートが低レベルのターゲット コントロールを引き継ぎました。通常の JTAG/SWD アダプター速度と比較すると結果が異なる場合があります: 2000 kHz adapter_nsrst_delay: 100 srst_only 分離 srst_nogate srst_open_drain connect_deassert_srst GNU ARM によって開始 Eclipse 情報: クロック速度 2000 kHzプロシージャ「init」の「トランスポート」
デバッグ セットアップで参照されている「ボード」ファイルは、stm32f429discovery.cfg です。
これを別の ST-Micro ボードで動作させたところ、完全なデバッグ セッションを問題なく実行できました。突然、ボードにアクセスできなくなり、このボードで発生したのと同じエラーが発生しました。
Linux で動作する純粋なオープン ソース ソフトウェアを使用して、これらのボードを操作できるようにしたいと考えていました。誰かが私をこの状況から抜け出させてくれることを願っています。
前もって感謝します。
乾杯!!
debugging - openocd を使用した STM32F7 検出のフラッシュとデバッグ
最近、STM32F7 ディスカバリー ボード [1] を購入しました。このボードには st-link デバッガーが組み込まれているため、openocd を使用してフラッシュしようとしています。ツールチェーンは動作しています (makefile と arm-none-eabi-gcc を使用しています) が、Eclipse を使用してボードをフラッシュして、グラフィカル デバッガーを使用できるようにしたいと考えています。
そのために、git リポジトリから openocd をインストールし、次の構成ファイルを使用して起動します。
そして、eclipse で次のコマンドを arm-none-eabi-gdb と共に使用して、ボードをフラッシュします。
eclipse でデバッグ チェーンをセットアップするために使用したチュートリアル [2] または他の SO 投稿 [3][4] からのコマンドを含む、さまざまなコマンドのリストを試しました。ときどき書き込み操作が失敗し、そうでないときは間違った PC で終わることがあります (たとえば、リセット ハンドラのアドレスである 0x080004ac ではなく 0xfffffffe)。そのため、CPU は (メモリの外部に) 存在しないものを実行しようとし、失敗します。
何が間違っているのか分かりますか? 小さな精度 : 私は Linux で作業しています。
乾杯、
アントワーヌ。
[1] : www.st.com/web/en/catalog/tools/FM116/SC959/SS1532/LN1848/PF261641?sc=stm32f7-discovery
[2] : vedder.se/2012/12/debugging-the-stm32f4-using-openocd-gdb-and-eclipse/
[3] : stackoverflow.com/questions/5535110/stm32-gdb-openocd-commands-and-initialization-for-flash-and-ram-debugging
[4] : stackoverflow.com/questions/17003519/stm32f4discovery-openocd-telnet-uploading-demo-program
[5] : github.com/texane/stlink
[編集]
また、github [5] の st-link プログラムを使用して gdb でロードしようとしたところ、同様のエラーが発生しました。