Page 101 - Making PIC Microcontroller Instruments and Controllers
P. 101

l|MERo   9t



                                                                                   seconds,
                   l8fagiiifl${::   Timerc usage  per  microEngineerlng Labs  program (Hours,
                    and minules digiialc  ock)  (Corlinued)
                                               ;  s e r  i n i r i a l  r i n e  r o  0 0 : 0 0 : 0 0
                    MINUTE  =  0
                    SECOND  =  0
                    TICKS  =  0
                                               ;  force  flrst  display
                                                             I   i  c . . , -  - . - - . . .  r 6 . 1 8 4
                                               ;  nilliseconds
                    oPTroaI_RtG  -  %01010101  ,  set  fl'IR0  connguration   and  enable
                                               ;  PORTB  pullups
                    rN:rcoN  =  %10100000      ;  enable  TMRo inlefupLs
                    ON  INTERRI'PT  GOTO TTCKINT   ;
                                               ;  nain  progrran  toop  -
                    !4AIIILOOP:                ;  in  this  case,  i!  only  updaLes  ihe  LcD
                                               ;  with  the  it
                    TRISB =  %11110000         ;  enable  aLl  buttons
                    PoRTB  =%00000000          ;  PoRTB lines  Lor  !o  read  buttons
                                               :  ' h e ' n  d l l  o r r i o _  P  A s s 6 d  o  "  r i n e
                    IF  PORTB.T  -  0  ttlEN  DECIIIN
                    IF  PORTB.6  =  0  EBEN  INCIIIN  last  2  bulcons  set  ninute
                    IF  PORTB.s  -  0  EEEN  DECHR
                    IF  PORTB.4  =  0  EIIEN  INCHR
                                                      f,lsl   2  butbons  set  hour
                    CHKttP:   IF  OPDATE  =  1  4HEN

                                                      disptay  tine  as  hh: m:  ss
                    DHOLR  =  SOUR                    change  hour  0  to  12
                    IF   {EouR  //   12)  =  0  lsBN
                          D H O t t R - D E O U R + 1 2
                    ENDIF
                    IF  HOI'R  <  12  EIIEN           check   for   !-14 0r  PM
                      LCDOIII  DEC2  DHOUR.   ":",   DEC2  IIINUIE,   \.2,   DEC2  seconil,   \   lU{?'
                      EIJSE
                                                    \:'?,              s:,,
                        r,cDotrt  DEcz  (DHouR  -  12),   DEC2 MrNUrE,      DEC2  SECOND,
                        \   PM/
                      ENDIF

                    ENDIF
                    GCTO  MAINI,OOP

                    INCMIIiI:   MIIiIUTE  =  MINUTE  +  1  ;
                    IF  MINU:rE  >-  60  tllEN
                      MINUTE  -  0
                    ENDIF
                    GOTO  DEBOT'NCE
                                                    ;  lncremen!   hours
   96   97   98   99   100   101   102   103   104   105   106