avr: make brightness module ready for ATmega devices.

This commit is contained in:
Martin Preuss
2026-04-16 21:28:17 +02:00
parent 0be8ad101a
commit 0c8d812a7a

View File

@@ -88,16 +88,20 @@ Brightness_Every100ms:
breq Brightness_Every100ms_startMeasure
ret
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
Brightness_Every100ms_readValue:
sbic ADCSRA, ADSC
inr r16, ADCSRA
sbrc r16, ADSC
ret ; return if bit still set, leave brightnessTimer at "1"
; conversion complete, read value
ldi r16, BRIGHTNESS_INTERVAL ; restart timer
sts brightnessTimer, r16
in r16, ADCL
in r17, ADCH ; read value from ADC
inr r16, ADCL
inr r17, ADCH ; read value from ADC
sts brightnessLastValue, r16
sts brightnessLastValue+1, r17
; convert to 1/0