Page 253 - Making PIC Microcontroller Instruments and Controllers
P. 253
us|ltc flfiEEl tN cou[TEF t{ooE 251
l!l!bi{m&;!i5 Basic marble counting routine to count directly to lhe Timerl
lorthis progmm
counler reglster pair diagram is in Figurc 17.5)(Cortnued)
Clhewiring
; bi!1=1 Use external cLock
; biL0=1 Start Tinerl, This bit turns in ON
oPtIoN REG =%01111111 ; sel biis. Page 21 of the datasheet
; bitT=O Pu1ls up all of PoRTB
; bi!6=1 hterrupl edse select. Rising
, bit5=1 Clock source. F,A4
' h i . r " T
; bit3=1 prescarar assigned to hrDT therefore prescate=1
; bi!2=1 Prescalar seLection
; bill=1 Prescalar selection
; bit0=1 Prescalar selection
I N T C O N = U 1 0 0 1 0 0 0 0 : s o l b i s t o r - n , e r ! - p . c o _ _ ] o
; Page 22
; bit?=1 G1oba1 interrupt enable
; b i . 6 - 0 e n a b l e s d 1 1 o e ; p r e r o - o s F L i , L e r r u p L
; bit5=0 enables flag for TMRo overflod- Goes with bit2
; bi!4=1 Enables inLerrupL for bit 0 on PORTB. Goes oiLh biLl
; bit3=0 enables interupt any bit on PoRTB. Goes vilh bit0
; b1!2=0 TMRo overflow flag or bit, TMRO is always on.
; bitl=o flaq for bilo on PoRrB. see bit4
; bit0=0 flag for any bit on PORI'B. See bit3
PAUSE 5OO
LCDOUT $FE, 1, "CI,EJARS THE T,CD. ':
PAUSE 500
t'URIL=0
IIIRlH=0
ON INTERRUPT GOTO INT_ROUTTNE ; inLeTTupt IATgE!
LOOP: , nain loop
\X=/,
LCDOUT $FB. $80, DEC5 x,u
\I:"
ICDOUT $FE, $8Ar ,BlNe INICON ;
'B=",BINa " *,DEC3 " ',DEC3
LDOuE $FE, 9C0, PORTB' TURIA. TMR1L
GoIo l,ooP ; end of toop
DrsaBtE ; disable interrupts
INr-ROUTIIIE: ; interrupt routine
TOGGIJE PORTB.l
x=256*rrdR1H + T!'RIL
rMlcoN.l=o ; rese! lhe interrupt flag for: B0
PAUSE 25
REgUlrlE ; resune progran
E![aBrJE ; enable interrupts
END ; end of progran