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'm using RTX for ADuC7126 and have a question regarding the OS_TICK variable. Here is my configuration:
// Tick Timer Configuration // ============================= // <o>Hardware timer <0=> Timer 0 (RTOS) // Define the on-chip timer used as a time-base for RTX. // Default: Timer 0 #ifndef OS_TIMER #define OS_TIMER 0 #endif // <o>Timer clock value [Hz] <1-1000000000> // Set the timer clock value for selected timer. // Default: 2611200 (2.61MHz at 41.78MHz Core Clock and prescaler by 16) #ifndef OS_CLOCK #define OS_CLOCK 2611200 #endif // <o>Timer tick value [us] <1-1000000> // Set the timer tick value for selected timer. // Default: 10000 (10ms) #ifndef OS_TICK #define OS_TICK 100 // 100us #endif
When I change OS_TICK from 100 to 1000 (1ms), I noticed the entire app slowed down. From reading the OS_TICK description above, I thought it would only affect timer and delay functions such as os_tmr_create() and os_dly_wait() since the tick size has changed. My assumption is that the rest of the app would continue to operate at 2.61MHz. Please advise.
Reducing the number of task switches performed every second can slow down the application, depending on what goals there is for the application, and how well the different tasks can make use of their allocated time slices.