I have been trying to write some code around the GIF that Darrel Taylor showed me but with mixed results. I have included the GIF and the code. Can someone take a look at it to see if what I am doing is a start? I am just using the LED to see if anything is working. It flashes but not when I expect it should
Thanks Don
(From Darrel Taylor)
I'll second the Comparator idea, but with a little difference. (Don't filter the signal)
Set a timer to have a delay of 20ms or more.
Using the comparator Interrupts, reload that timer every time you get a pulse.
If the voltage drops below the comparator's trigger point, the timer will overflow.
Use the timer interrupt/flag to determine when there's an error condition
Here is what I have for code:
Code:OSCCON = $60 'Set up oscillator 4mhz CMCON = %11000001 TRISB = %00000000 'Set port B to output TRISA = $%11111111 'Set port A to input T0CON = %01000110 'Set up Timer 0 Config bits prescale 128 INTCON.7 = 1 'Enable all unmasked interrupts INTCON.6 = 1 'Enable all unmasked peripheral interrupts RCON.7 = 0 'Disable interrupt priority Intcon.5 = 1 'Timer 0 overflow interrupt enable bit PIE2.6 = 1 'Comparator interrupt enable bit Main: While Pir2.6 = 0 or Intcon.2 = 0 'Check to see if comparator interrupt bit or Timer0 interrupt bit is set wend if TMR0IF = 1 then gosub LED TMR0L = $64 'Preload Timer 0 Pir2.6 = 0 'Clear comparator interrupt bit goto main LED: High portb.4 pause 100 low portb.4 pause 100 goto LED End




Bookmarks