注意: チケットを送信する前に、#906 の指示を読み、それに従ってください。 したがって、すべてのフィールドが入力されていることを確認してください。
[x] 重複または類似の問題が発生しないように真剣に取り組みました
プログラマー/ボードタイプ: 内蔵
st-util
期待される/説明:
https://vivonomicon.com/2018/04/02/bare-metal-stm32-programming-part-1-hello-arm/ の最小限のリンカー スクリプトのチュートリアルに従っているときに、私の問題が発生しました
これのソース コードは、 https://github.com/WRansohoff/STM32F0_minimalでも見つけることができ
コードなどは問題なくコンパイルされます。
次にst-util
実行し、 arm-none-eabi-gdb main.elf
とtarget extended-remote :4242
を使用してボードに接続します
次に、 load main.elf
を使用してプログラムをロードします。
これが、v1.5.0 と v1.6.0 の動作が分岐する場所です。
v.1.5.0 では、 si
を使用してプログラムをステップスルーでき、ループに入ってr0
がインクリメントされるのを確認できます。
v.1.6.0 では、 si
と、プログラム カウンターがすぐに0xfffffffe
にジャンプし、 r0
はインクリメントされません。
ただし、 r7
が0xdeadbeef
正常に設定される場合があります。
また、OpenOCD 0.10.0 を使用してこれを実行しましたが、問題なく実行できました。
libusb 1.0.23 を使用してソースから v1.5.0 をビルドし、パッチ #704 を適用したことに注意してください。
さらに情報が必要な場合はお知らせください。
あなたのプログラマーはどのハードウェアタイプですか? 基本情報のセットを完成させるために、より正確に説明してください。
新しいツールセット バージョンは (再び) 機能しますか?
Nucleo ボードと Discovery ボードには組み込みのプログラマーを使用しています。これは ST-Link v2 であり、ブルーピルには ST-Link v2 USB プログラマーであると思います。
v1.6.1 では動作しません。これは私が macOS で使用していたバージョンですが、openSUSE では v1.6.0 でした。
@gcohara develop
ブランチを試していただけますか? stm32f07 でテストしましたが、うまくいきました。
develop
ブランチで試してみたところ、動作していることを確認できました!
ごめんなさい、とにかくそうすべきでした。
これは定期的なメンテナンス タスクと追跡に影響するため、オープン チケットをクローズしないでください。 解決済みのチケットは、問題追跡システムによって自動的にクローズされます。