Loading...
 

Zephyr project on STM32

   Zephyr Workbench, a VSCode extension to manage Zephyr on STM32.
It enables users to easily create, develop, and debug Zephyr applications.
Main features:
  • Install host dependencies.
  • Import toolchain and SDK.
  • Create, configure, build and manage apps.
  • Debug STM32.
You can directly download it from the VSCode marketplace
For more details, visit the Zephyr Workbench

System Workbench for STM32


The discussion of standard IO dynamic switching among semihost, UARTx, and NULL on STM32

France

Hi,

If you only want to implement console I/O using semihosting, the best way to go would probably be to add a file defining the __io_getchar and __io_putchar functions called by read/write as defined in syscalls.c as well as the initialise_function_handles function.

To avoid multiple definitions you must make the empty initialise_monitor_handles function to be weak in syscalls.c by adding __attribute__((weak)) in front of its definition.

To call initialise_monitor_handles can be done directly from the startup code (adding “bl initialise_monitor_handles” before “bl main”) but you can avoid modifying the startup file (which is in assembly language) by adding the constructor attribute to your definition of initialise_monitor_handles:
__attribute__((constructor)) void initialise_monitor_handles()  {
    // Your initialisation code
}

Then if you include your file, you get semihosting, if you don’t, you don’t even try to initialise it...

Bernard (Ac6)

 

Newest Forum Posts

  1. Монтаж камина с грилем в Москве - установка и барбекю by KpddomErorb, 2025-05-10 18:28
  2. SPI on Nucleo_STMH533RE by royjamil, 2025-05-04 20:13
  3. SPI on Nucleo_STMH533RE by higginsa1, 2025-03-25 07:37
  4. SPI on Nucleo_STMH533RE by royjamil, 2025-03-23 11:31
  5. SPI on Nucleo_STMH533RE by higginsa1, 2025-03-23 09:33
  6. Configuring DMA for ADC in SW? by sam.hodgson, 2025-03-04 12:58
  7. Build a project in "release" mode by info@creosrl.it, 2025-02-20 18:12
  8. Build a project in "release" mode by info@creosrl.it, 2025-02-20 17:05
  9. Build a project in "release" mode by tang, 2025-02-20 10:36
  10. Build a project in "release" mode by info@creosrl.it, 2025-02-19 17:35

Last-Modified Blogs