User manual

Table Of Contents
PICDEM
TM
Lab Development Board User’s Guide
DS41369A-page 70 © 2009 Microchip Technology Inc.
The software flowchart for this lab is shown in Figure 4-6.
FIGURE 4-6: MAIN() SOFTWARE CONTROL LOOP FLOWCHART FOR
COMPARATOR LAB 3
The Initialize() configures the PIC16F690 as follows:
Configure PORTC pins RC0, RC1, RC2 and RC3 and digital outputs
•Comparator 1
- Enable Comparator 1.
- Make the Comparator 1 output available on the C1OUT pin configuring
TRISA2 as an output.
- Route the CV
REF output to the non-inverting reference input.
- Select pin C12IN0- as the inverting reference configuring TRISA1 as an input.
- Configure the C1OUT pin as an output.
•CV
REF Configuration:
-Configure CV
REF to route the 0.6V fixed voltage reference to the non-inverting
reference of Comparator 1.
Timer1 Configuration:
- Select the T1CKI pin as the Timer1 clock source making TRISA5 an input.
- Clear both Timer1 result registers TMR1H:TMR1L.
- Turn on Timer1.
•Timer0
-Select F
OSC/4 as the Timer0 clock source.
- Assign the prescaler to Timer0 and configure so that the TMR0 register
increments every 256th clock pulse.
- Enable Timer0 interrupt-on-overflow
- Clear the Timer0 interrupt flag
- Preload TMR0 with 10 (this ensures that a Timer0 interrupt will occur before
the Timer1 registers overflow).
- Enable Global Interrupts on the PIC16F690.
The Interrupt Service Routine, TMR0_ISR(), is shown in Figure 4-7.
main()
Initialize()
Loop Forever
Wait