b0bclr BUZZER
b0bset BuzzerEnable
ret
;****************************
;Test temperature subroutine
;****************************
TestTemperature:
; b0bclr TestTemperatureEnable
b0bclr FADLEN
mov a,#0x93
b0mov ADM,a
mov a,#0x20
b0mov ADR,a
b0bset FADS
b0bts1 FEOC
jmp $-1
b0mov a,ADB
b0mov resultH,a
b0mov a,ADR
and a,#00001111b
b0mov resultL,a
swap resultH
and a,#11110000b
or resultL,a
swapm resultH
mov a,#00001111b
and resultH,a
b0mov a,resultH
b0bts1 FZ
jmp $+5
b0mov a,resultL
sub a,#0x10
b0bts1 FC
jmp TestTemperature01
b0mov a,resultH
sub a,#0x0f
b0bts0 FC
jmp TestTemperature01
clr errorcounter
b0bclr TempError
ret
TestTemperature01:
b0mov a,errorcounter
sub a,#5
b0bts0 FC
jmp $+3
incms errorcounter
ret
b0bset TempError
ret
;****************************
;Test current subroutine
;****************************
TestCurrent:
b0bclr FADLEN
mov a,#0x97
b0mov ADM,a
mov a,#0x20
b0mov ADR,a
b0bset FADS
b0bts1 FEOC
jmp $-1
b0mov a,ADB
b0mov CurrentH,a
b0mov a,ADR
and a,#00001111b
b0mov CurrentL,a
swap CurrentH
and a,#11110000b
or CurrentL,a
swapm CurrentH
mov a,#00001111b
and CurrentH,a
ret
;****************************
;Test voltage subroutine
;****************************
TestVoltage:
b0bclr FADLEN
mov a,#0x91
b0mov ADM,a
mov a,#0x20
b0mov ADR,a
b0bset FADS
b0bts1 FEOC
jmp $-1
b0mov a,ADB
b0mov VoltageH,a
b0mov a,ADR
and a,#00001111b
b0mov VoltageL,a
swap VoltageH
and a,#11110000b
or VoltageL,a
swapm VoltageH
mov a,#00001111b
and VoltageH,a
ret
;*********************
SystemTimerEnd:
b0bclr F4mS
incms TimerBuz





