avr: make brightness module ready for ATmega devices.
This commit is contained in:
@@ -88,16 +88,20 @@ Brightness_Every100ms:
|
|||||||
breq Brightness_Every100ms_startMeasure
|
breq Brightness_Every100ms_startMeasure
|
||||||
ret
|
ret
|
||||||
Brightness_Every100ms_startMeasure:
|
Brightness_Every100ms_startMeasure:
|
||||||
sbi ADCSRA, ADSC ; start conversion
|
inr r16, ADCSRA ; start conversion
|
||||||
|
sbr r16, (1<<ADSC)
|
||||||
|
outr ADCSRA, r16
|
||||||
|
; sbi ADCSRA, ADSC ; start conversion
|
||||||
ret
|
ret
|
||||||
Brightness_Every100ms_readValue:
|
Brightness_Every100ms_readValue:
|
||||||
sbic ADCSRA, ADSC
|
inr r16, ADCSRA
|
||||||
|
sbrc r16, ADSC
|
||||||
ret ; return if bit still set, leave brightnessTimer at "1"
|
ret ; return if bit still set, leave brightnessTimer at "1"
|
||||||
; conversion complete, read value
|
; conversion complete, read value
|
||||||
ldi r16, BRIGHTNESS_INTERVAL ; restart timer
|
ldi r16, BRIGHTNESS_INTERVAL ; restart timer
|
||||||
sts brightnessTimer, r16
|
sts brightnessTimer, r16
|
||||||
in r16, ADCL
|
inr r16, ADCL
|
||||||
in r17, ADCH ; read value from ADC
|
inr r17, ADCH ; read value from ADC
|
||||||
sts brightnessLastValue, r16
|
sts brightnessLastValue, r16
|
||||||
sts brightnessLastValue+1, r17
|
sts brightnessLastValue+1, r17
|
||||||
; convert to 1/0
|
; convert to 1/0
|
||||||
|
|||||||
Reference in New Issue
Block a user