beckus / qemu_stm32

QEMU with an STM32 microcontroller implementation
http://beckus.github.io/qemu_stm32/
Other
524 stars 144 forks source link

ported the flash peripheral from pebble/qemu and added support to reset #36

Closed lcgamboa closed 2 years ago

lcgamboa commented 3 years ago

I adapted Pebble's support to load the file from a flash drive. The -pflash file.bin option should now be used instead of -kernel (which still works). The flash reset function loads the address of the stack and the pc that is specific to the ARM M3, allowing the qemu to be reset. Support for FLASH_REGS was copied from the https://github.com/baselsayeh/qemu_stm32_flash repository and added so that binaries compiled on Arduino run without generating problem. The programs write and check the flash latency value.

beckus commented 2 years ago

Thank you @lcgamboa for the contribution! Sorry for the very long delay in merging it.

lcgamboa commented 2 years ago

Hi @beckus, Your work on the stm32 implementation on qemu is fantastic. I have implemented two boards based on it, they are in the experimental version of PICSimLab. But some code compiled in arduino IDE doesn't work due to lack of DWT Cycle counter implementation. As my knowledge of qemu are few and the qemu documentation doesn't help, I have no idea how to get started. Glad to know that the project is still being held.

beckus commented 2 years ago

Thanks @lcgamboa , I'm glad you found the project useful. Although I enjoyed working on the project as a hobby, unfortunately I don't have much time to work on it these days, and am only doing very minimal maintenance. Interesting, I added a link to PICSimLab in the QEMU STM32 webpage. I'm not familiar with the DWT, so I don't have any suggestions. Even after working on this project, I still have a fairly limited understanding of the entire ecosystem...