-
Notifications
You must be signed in to change notification settings - Fork 78
emulate the zephyr os failed! #64
Comments
unfortunatelly the emulation of NVIC is incomplete. I plan to address this in a future version, but for now try to avoid the missing registers. |
Disabled the MPU config in the zephyr then "Bad write offset" disappeared. Output bellow:
|
Ok, try to identify the code using SCR/CCR and disable it too. Apart from these messages, does the application start? |
Haven't started |
Could you place a breakpoint on the start code (the reset vector) and single step to see how far it gets? |
Everytime i start the qemu , it stop at qmonitor, the option "-s -S" not working ! |
Not like this, run a debug session. For this start QEMU as a GDB server, and direct a GDB client to it. If you did not do this before, I suggest you follow the GNU MCU Eclipse blinky tutorial and learn how to run debug sessions on QEMU. |
It's huang in the uart:
Code bellow
|
To output trace messages, use semihosting calls, not the uart. |
If I remember right, QEMU also implements ARM ITM, it is even faster than semihosting. |
@BrendanSimon, here is another example why the curent model of dealing with peripherals is not ideal; peripherals that are not implemented properly should not be there at all; in this particular case the uart should be fixed, but all other not implemented peripherals should display an error when accessed, to know that they are not implemented. |
I am debugging in eclipse-mcu, it works fine,except the output message。 |
Redirect it to semihosting or ITM and it'll be fine. For examples how to do it, see the projects generated by the STM32 project templates. |
After redirect to semihosting it's worked fine, now i plan to fixed the uart side effect to roburst qemu-mcu. |
I'm not sure I understand this, but if you manage to fix QEMU, please send PRs and I'll analyse them. I recently updated the QEMU build scripts and it is now easier to build it for development purposes. |
I want to add the support for the nucleo-f767zi, now i have get STM32F7x.json from svd file。According the qemu-mcu code , i just need to add the board class for nucleo-f767zi ! Do you have any suggestion to port this ? Before that I was doing this work at qemu-3.1.0. Only cpu work well. |
Is there any document for developer ? |
well, you need to add the board class, with picture, leds & buttons positions, but you also must be sure the device class is implemented properly, and then add functionality for the mandatory peripherals. unfortunatelly there is no documentation, you need to check the source code. the reference is the stm32f4-discovery board. there is some rework planned for qemu, to further automate adding support for new devices, but it might take some time. |
there have problem for emulating nucleo-f767zi board. The system clock is slowlly. |
can you estimate how much slower? |
I find the problem. In the RCC the nucleo-f767zi use hsi as clock source cpu_freq_hz = 16000000 |
Does QEMU run at the same speed as the physical board now? |
But in the 400MHz will huang up! here's output
|
I have difficulties to follow you. Please run on QEMU only applications that you previously tested on the physical board and are confirmed to be functional. If you identify functional differences, explain them clearly such that I can reproduce them. |
Prerequisites
Description
emulate the zephyr os failed at qemu-system-gnuarmeclipse
Steps to Reproduce
Versions
urls
zephyr-sdk: https://github.com/zephyrproject-rtos/meta-zephyr-sdk/releases/download/0.9.5/zephyr-sdk-0.9.5-setup.run
zephyr: https://github.com/zephyrproject-rtos/zephyr
Attached File
The text was updated successfully, but these errors were encountered: