| 1 | = STM32F105 = |
| 2 | |
| 3 | |
| 4 | The STM32F105 BSP, based on the STM32F4 BSP, is compiled according to |
| 5 | http://alanstechnotes.blogspot.fr/2013/03/setting-up-rtems-development.html |
| 6 | |
| 7 | Having compiled the toolchain, RTEMS is compiled for the STM32F105 BSP following |
| 8 | http://s937484.blogspot.fr/2013/10/rtems-stm32f407-discovery-board-posted.html |
| 9 | |
| 10 | We run the example on Qemu supporting the STM32 architecture as described at: |
| 11 | https://github.com/beckus/qemu_stm32 |
| 12 | |
| 13 | The trick is that, as indicated at ftp://ftp.rtems.eu/pub/rrr/RRR_Quick_Start_Guide_en.pdf, the |
| 14 | console is connected to UART3. Qemu as found on the previous GIT site only implements UART2: |
| 15 | edit hw/arm/stm32_p103.c to add both UART1 and UART3 by including |
| 16 | |
| 17 | DeviceState *uart1 = DEVICE(object_resolve_path("/machine/stm32/uart[1]", NULL)); |
| 18 | DeviceState *uart3 = DEVICE(object_resolve_path("/machine/stm32/uart[3]", NULL)); |
| 19 | assert(uart1); |
| 20 | assert(uart3); |
| 21 | stm32_uart_connect((Stm32Uart *)uart1,serial_hds[0],STM32_USART1_NO_REMAP); |
| 22 | stm32_uart_connect((Stm32Uart *)uart3,serial_hds[2],STM32_USART3_NO_REMAP); |
| 23 | |
| 24 | having compiled Qemu with these updates, and RTEMS for the STM32F105 BSP, the example is loaded using |
| 25 | |
| 26 | qemu-system-arm -M stm32-p103 -serial stdio -serial stdio -serial stdio -kernel hello.bin |
| 27 | |
| 28 | (three times -serial stdio to indicate that all three UARTs outputs are displayed on stdout). The result is |
| 29 | VNC server running on `::1:5900' |
| 30 | LED Off |
| 31 | |
| 32 | |
| 33 | * BEGIN OF TEST HELLO WORLD *** |
| 34 | Hello World |
| 35 | * END OF TEST HELLO WORLD *** |