Keil™, An ARM® Company

Technical Support

RL-ARM: USING RTX TOGETHER WITH STM32 LIBRARY


Information in this article applies to:

  • RL-ARM All Versions
  • RTX Kernel
  • MCBSTM32 Evaluation Board

QUESTION

I am using an STM32 device together with the RTX Kernel and the ST Microelectronics library, but it seems that RTX does not work correctly. When I use the function isr_evt_set(), the event is never set. Can I use the STM32 library together with RTX applications?.

ANSWER

On Cortex-M3 devices, RTX requires the SVC_Handler, PendSV_Handler and SysTick_Handler to work correctly. If you are using STM32 library and ST-style device configuration you must enable these handlers in the file stm32f10x_vector.s

...
    IMPORT  SVC_Handler     ;name changed according to RTX usage
    IMPORT  DebugMonitor
    IMPORT  PendSV_Handler
    IMPORT  SysTick_Handler ;name changed according to RTX usage
...
    DCD  SVC_Handler
    DCD  DebugMonitor
    DCD  0                  ; Reserved
    DCD  PendSV_Handler
    DCD  SysTick_Handler
...

Attached to this article is a corrected stm32f10x_vector.s configuration file.

ATTACHED FILES

Request the files attached to this knowledgebase article.

Last Reviewed: Monday, July 07, 2008


Did this article provide the answer you needed?
 
Yes
No
Not Sure