
Functional Description and Application Information
Real Time Interrupt (S12SRTIV1)
MM912F634
Freescale Semiconductor
262
If the Frequency Divider Rate is set lower or equal to three the RTI interrupt service routine will access the RTICTL register with
in a timing window which is less or equal the synchronization delay. Hence the interrupt service routine which access the RTICTL
register to clear the RTIF bit is executed such frequently that the RTIRT bits are permanently locked. Therefore the following
sequence is recommended if RTIRT bits should be changed for a current selected Frequency Divider Rate of two or three:
- Access the RTICTL register to clear the RTI interrupt flag (RTIF bit) and disable the RTI interrupt (clear RTIE bit) by a
single write access.
- Execute a software loop in which the RTICTL register is written to modify the RTIRT bits until the new Frequency
Divider Rate is taken (read back value of RTIRT bits equals new value)
- Access RTICTL register to enable RTI interrupts again.
If the actual Frequency Divider Rate of the RTI is set to a rate higher than three the write access to clear the interrupt flag (RTIF
bit) in the RTICTL register can be used to modify the RTIRT bits of the RTICTL register.
4.34.7.3
Modification of Modulus Down Counter rate (RTICNT register)
Applications which frequently access the RTICNT register should follow below recommendations.
If the RTICNT register is accessed with in a timing window which is less or equal the synchronization delay the following
sequence is recommended:
- Access the RTICTL register to clear the RTI interrupt flag (RTIF bit) and disable the RTI interrupt (clear RTIE bit) by a
single write access.
- Execute a software loop in which the RTICNT register is written to modify the rate until the new Frequency Divider Rate
is taken (read back value of RTICNT bits equals new value)
- Access RTICTL register to enable RTI interrupts again.
If the RTICNT register is accessed in a timing window which is higher than the synchronization delay, only the RTICNT register
needs to be written and wait until next time-out occurs.