PEMBERITAHUAN: Harap baca dan ikuti instruksi di #906 sebelum mengirimkan tiket. Jadi pastikan semua kolom terisi.
[x] Saya melakukan upaya serius untuk menghindari duplikat atau masalah yang hampir serupa
Jenis programer/papan: Inbuilt
st-util
diharapkan/deskripsi:
Masalah saya muncul saat mengikuti tutorial untuk skrip tautan minimal di: https://vivonomicon.com/2018/04/02/bare-metal-stm32-programming-part-1-hello-arm/
Kode sumber untuk ini juga dapat ditemukan di https://github.com/WRansohoff/STM32F0_minimal
Kode mengkompilasi dll tanpa masalah.
Saya kemudian menjalankan st-util
, dan terhubung ke papan menggunakan arm-none-eabi-gdb main.elf
dan target extended-remote :4242
Kemudian saya memuat program menggunakan load main.elf
.
Di sinilah perilaku v1.5.0 dan v1.6.0 berbeda.
Dalam v.1.5.0, program dapat dilewati menggunakan si
, dan saya dapat masuk ke dalam loop dan melihat r0
bertambah.
Dalam v.1.6.0, menggunakan si
menyebabkan penghitung program segera melompat ke 0xfffffffe
, dan r0
tidak bertambah.
Namun, terkadang r7
berhasil disetel ke 0xdeadbeef
.
Saya juga telah melakukan ini menggunakan OpenOCD 0.10.0, dan dapat melewatinya dengan baik.
Saya harus mencatat bahwa saya membangun v1.5.0 dari sumber menggunakan libusb 1.0.23 dan menerapkan patch #704 .
Tolong beri tahu saya jika Anda membutuhkan informasi lebih lanjut.
Dari jenis perangkat keras apa programmer Anda? Tolong jelaskan lebih tepat untuk melengkapi kumpulan info dasar.
Apakah versi toolset yang lebih baru berfungsi (lagi)?
Saya menggunakan pemrogram bawaan untuk papan Nucleo dan Discovery, yang saya yakini adalah ST-Link v2, dan pemrogram usb ST-Link v2 untuk pil biru.
Ini tidak berfungsi pada v1.6.1 - ini adalah versi yang saya gunakan di macOS, sementara di openSUSE saya menggunakan v1.6.0.
@gcohara Bisakah Anda mencoba cabang develop
? Saya mengujinya di stm32f07 dan berhasil.
Baru saja mencobanya di cabang develop
dan saya dapat mengonfirmasi bahwa itu berfungsi!
Maaf, aku benar-benar harus melakukan itu.
Tolong jangan tutup tiket terbuka karena ini bertentangan dengan tugas pemeliharaan rutin dan pelacakan. Tiket yang diselesaikan ditutup secara otomatis oleh sistem pelacakan masalah.