This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

RTOS/MSP432P4111: Clock module timer period

Part Number: MSP432P4111

Tool/software: TI-RTOS

G'Day all,

I'm having trouble understanding the operation of the clock module.

In this discussion I refer to the screen grab from Execution Graph / Live Session attached below.

  • The red cursor is located on an RTOS/Clock module timer interrupt and corresponds to sequence number 1114 in the live session data
  • For reference, the time between the measurement marks is 1.68mSec.
  • The arrows pointing to the right indicate the RTOS/Clock Module Timer interrupts.
  • The arrows pointing to the left indicate when my Clock SWI runs (this runs every 2mSec just as I expect given my code configuration)
  • According to ROV - SWI 0x2001a068 is the Clock SWI
  • According to ROV - HWI 0x2001a020 is the RTOS/Clock module timer HWI (Timer_A0), configured as following in my .cfg file
    • Clock.tickPeriod = 1000;
    • Clock.tickMode = Clock.TickMode_DYNAMIC;
    • Clock.tickSource = Clock.TickSource_TIMER;
    • Clock.timerId = 0;
    • Clock.swiPriority = 1;

My question boils down to this: Why is the timing of the/Clock Module RTOS Timer interrupt irregular?

Given my RTOS/Clock module timer configuration (see below) I would expect to see timer interrupts once a millisecond (well, every 976mSec), but I get more than that.

I have the "suppress unnecessary timer ticks" option enabled, but I'm not sure if that suppresses just the Clock module SWI when unneeded, or if it suppresses the Timer interrupt as well.

I understand the RTOS uses this timer for more than just timing of clock functions (e.g Task_sleep() etc etc) but if I have a period of 1mSec for this timer, shouldn't that be the (maximum) cadence of the interrupt?


Cheers
Julian

**Attention** This is a public forum