Контроллер питания

Контроллер питания выполнен на ATtiny45. Используется очень удобный для меня вариант за 140 рублей - и печатка, и расспаянный контроллер, и разъем ISP - всё расспаяно и не нужно геммороиться.

Доступны для скачивания исходник прошики + проект AVRStudio на github и сама прошивка.

Логика работы следующая:

1. Начальное состояние - есть питание и нет АСС. Планшет питается постоянно и спит. Хаб не запитан, OTG не включено.

2. Включили АСС - ждем 1 секунду. Не выключили - включаем питание хаба и ждем еще 1 секунду и включаем OTG на планшет.

3. Пропал АСС? Ждем 2 секунду его повторного появления, если не дождались - выключаем OTG.

4. Ждем нового появления ACC в течении 20 минут. Если не дождались - идем в п/п 1. Дождались - идем в п/п 2.

5. В каждом из п/п 2, 3, 4 - контролируем напряжение батареи. Если оно меньше BAT_LOW (у меня это 10В) более 10 секунд - то выключаем OTG, через 10 секунд отключаем хаб и ждем в таком состоянии пока в течении 30 минут не будет держаться напряжение BAT_LOW плюс 1В - в таком случае возвращаемся к п/п 1.