We are running a survey to help us improve the experience for all of our members. If you see the survey appear, please take the time to tell us about your experience if you can.
I use the Keil MDK for study the CMSIS-RTOS RTX Version 4.74, it is the up to date version. My Development Board is Cortex-M4 STM32F407VG. I use the "Manage the run-time environment" build the project. In the RTX_Conf_CM.C, #define OS_TIMERS 1. But when I run the below program , osTimerCreate returns 0 to id1 and id2. why? Thanks.
#include "cmsis_os.h" int count = 0; void Timer1_Callback (void const *arg){count++;} // prototypes for timer callback function void Timer2_Callback (void const *arg){count--;} osTimerDef (Timer1, Timer1_Callback); // define timers osTimerDef (Timer2, Timer2_Callback); uint32_t exec1; // argument for the timer call back function uint32_t exec2; // argument for the timer call back function int main (void) { osTimerId id1; // timer id osTimerId id2; // timer id // Create one-shoot timer exec1 = 1; id1 = osTimerCreate (osTimer(Timer1), osTimerOnce, &exec1); if (id1 != NULL) { // One-shoot timer created } // Create periodic timer exec2 = 2; id2 = osTimerCreate (osTimer(Timer2), osTimerPeriodic, &exec2); if (id2 != NULL) { // Periodic timer created } }
.
Hello Long Shi, I have the same problem with my project; did you find the solution? Thanks for your answer.