Chapter 30 Periodic Interrupt Timer (PIT)
MPC5602P Microcontroller Reference Manual, Rev. 4
796
Freescale Semiconductor
Figure 30-9. Dynamically setting a new load value
30.4.1.2
Debug mode
In Debug mode, the timers are frozen. This is intended to aid software development, allowing the
developer to halt the processor, investigate the current state of the system (e.g., timer values) and then
continue the operation.
30.4.2
Interrupts
All of the timers support interrupt generation. Refer to
Chapter 9, “Interrupt Controller (INTC)
for related
vector addresses and priorities.
Timer interrupts can be disabled by setting the TIE bits to zero. The timer interrupt flags (TIF) are set to 1
when a timeout occurs on the associated timer, and are cleared to 0 by writing a 1 to that TIF bit.
30.5
Initialization and application information
30.5.1
Example configuration
In the example configuration:
•
The PIT clock has a frequency of 50 MHz
•
Timer 1 creates an interrupt every 5.12 ms
•
Timer 3 creates a trigger event every 30 ms
First the PIT module needs to be activated by writing a 0 to the MDIS bit in the PITMCR.
The 50 MHz clock frequency equates to a clock period of 20 ns. Timer 1 needs to trigger every
5.12 ms/20 ns = 256000 cycles and timer 3 every 30 ms/20 ns = 1500000 cycles. The value for the LDVAL
register trigger would be calculated as (period / clock period) – 1.
The LDVAL registers must be configured as follows:
•
LDVAL for Timer 1: 0x0003_E7FF
•
LDVAL for Timer 3: 0x0016_E35F
The interrupt for Timer 1 is enabled by setting TIE in the TCTRL1 register. The timer is started by writing
a 1 to bit TEN in the TCTRL1 register.
p1
p1
Timer Enabled
New Start
Value p2 set
p1
p2
Start Value = p1
p2
Trigger
Event