This program uses all of the PICs built-in timers, basically timers 0-2 are setup to cause an interrupt. An
interrupt subroutine has been written for each timer; at preset intervals (0.5s, 0.25s, & 0.1s) a message is
transmitted to the PC. The main program is stuck in a loop transmitting “main…” every second, Timer0_ISR
transmits “Interrupt_T0…” every 0.5s, Timer1_ISR transmits “Interrupt_T1” every 0.25s and Timer2_ISR
transmits “Interrupt_T2” 10-times a second. These messages are received using a PC running the DOS
based test program in RX terminal mode, hence testing of the PIC timer interrupts including crude timing
analysis is achieved, for example there should be two “Interrupt_T0…” messages between every “Main…”.
See figure 10.7a for a simplified flowchart of the program.