Код: Выделить всё
;===проверим на завершение заряда===
;====коеффициент примерно 0.98====
Utest_max:
ldi R16, high(4100)
ldi R17, low(4100) ;4.18В
cp R19, R17
cpc R18, R16
brlo u_next ;если напряжение ниже
;а если напряжение 4.18В или больше,то
sbi PortB,0 ;вкл. полевик
ret
u_next:
ldi R16, high(4020)
ldi R17, low(4020) ;4.10В
cp R19, R17
cpc R18, R16
brlo u_norm
ret
;если напряжение 4.10В или меньше,то
u_norm:
cbi PortB,0 ;выкл. полевик
ret
Кроме того, все параметры подогнаны под мВ, и импульсы передаются как 1/4 от мВ. Соответственно там они примутся, умножаться на 4, и мы получим те же мВ, плюс поправочный коэффициент, который будет индивидуальным для каждого балансира, но его можно будет настроить в "меню" меги8, и он будет храниться в ПЗУ, как на тестере батареек 18650.