led7seg.s
changeset 28 51344df466ca
parent 26 db2ec641c955
child 30 5226e512755c
equal deleted inserted replaced
27:359c1771c366 28:51344df466ca
    24 ;; SPI
    24 ;; SPI
    25 .include "spi.inc"
    25 .include "spi.inc"
    26 
    26 
    27 ;; LCD
    27 ;; LCD
    28 .include "led7seg.inc"
    28 .include "led7seg.inc"
       
    29 
       
    30 ;; DIPs
       
    31 .include "dip.inc"
    29 
    32 
    30 ;; ADC
    33 ;; ADC
    31 .include "adc.inc"
    34 .include "adc.inc"
    32 
    35 
    33 ;; Timer
    36 ;; Timer
    47         mov         XL, r0
    50         mov         XL, r0
    48         mov         XH, r1 
    51         mov         XH, r1 
    49 
    52 
    50         rjmp       Timer_Sleep
    53         rjmp       Timer_Sleep
    51 
    54 
    52 ;; Show ADC value
    55 ;; Show value
    53 Main_ShowADC:
    56 Main_ShowValue:
    54         ; load value to r16
    57         ; load value to r16
    55         mov         r16, r10
    58         rcall       DIP_Read8
    56         ; rcall       ADC_Read8
    59         ; rcall       ADC_Read8
    57 
    60 
    58         ; display from r16
    61         ; display from r16
    59         rcall       LED7_ShowHex
    62         rcall       LED7_ShowHex
    60         
    63         
    62         ldi         XL, 0
    65         ldi         XL, 0
    63         ldi         XH, 16
    66         ldi         XH, 16
    64         rcall       Timer_Sleep
    67         rcall       Timer_Sleep
    65 
    68 
    66         ; continue
    69         ; continue
    67         rjmp        Main_ShowADC
    70         rjmp        Main_ShowValue
    68 
    71 
    69 ;; Count down from F
    72 ;; Count down from F
    70 ; Returns once we've hit zero
    73 ; Returns once we've hit zero
    71 Main_Countdown:
    74 Main_Countdown:
    72         ; init from F
    75         ; init from F
   196     
   199     
   197     ; LCD (requires interrupts, blocks)
   200     ; LCD (requires interrupts, blocks)
   198         rcall       LED7_Init    
   201         rcall       LED7_Init    
   199     
   202     
   200     ; Run
   203     ; Run
   201         ; rcall       Main_ShowADC
   204         rcall       Main_ShowValue
   202         ; rcall       Main_Spin
   205         ; rcall       Main_Spin
   203         rcall       Main_Countup
   206         ; rcall       Main_Countup
   204         ; rcall       Main_Countdown
   207         ; rcall       Main_Countdown
   205         rcall       Main_Blink
   208         ; rcall       Main_Blink
   206 
   209 
   207 end:
   210 end:
   208         rjmp        end
   211         rjmp        end
   209 
   212