Ви не увійшли.
Digispark втрачає прошивку
У мене є проблема з платою digispark. Короткий опис:
Мій скетч керує сервоприводом через натискання кнопок. Живлення схеми від акумулятору через підвищуючий модуль MT3608. Також використовується плата зарядки та захисту акумулятору TP4056. В самому акумуляторі теж може бути вбудована плата захисту, це не вдалося перевірити. Скетч працює правильно.
Проблема полягає в тому, що коли сервопривід впирається в перешкоду, він докладає великих зусиль, щоб переміститися далі і просаджує живлення. Тут спрацьовує якийсь один або декілька захистів і напевно на деякий час живлення пропадає. По ідеї, після відновлення живлення контролер має запустити виконання програми з початку. Але він цього не робить. Допомогає лише перепрошивка мікроконтролеру.
У деяких випадках перезавантаження все таки допомогає і програма починає виконуватися, але частіше за все доводиться перепрошивати.
Чому це відбувається і як це побороти?
Мікроконтролер - Digispark Attiny85 з мікро юсб входом, можливо що китайський клон
Неактивний
Чому це відбувається і як це побороти?
Увімкнення BOD має допомогти, спробуйте залити bootloader з відповідними fuse bits (lfuse:0xe1 efuse:0xfe hfuse:0x5d - для BOD level at Vcc = 2.7V).
Поправка: (lfuse:0xe1 efuse:0xfe hfuse:0xdd - для BOD level at Vcc = 2.7V), якщо hfuse:5d - відключите зовнішній Reset і доведеться використовувати HV programmer.
Прошивка не слетает. Ищите проблему в питании или программе.
Ну проблеми з живленням дійсно є, я не кажу що їх нема. Спрацьовує захист на платі зарядки, або захист на платі dc-dc перетворювача, або ще можливо на самому акумуляторі є плата захисту (я не можу їх розібрати, бо не маю права зіпсувати зовнішній вигляд, вони в термоусадці, тому не можу сказати є там захист чи немає).
Але після цих проблем якщо підключити мікроконтролер до нормального джерела живлення він не відновлює свою роботу доки не перепрошиєш.
Неактивний
Немає сенсу їх переглядати, їх треба встановити, а для цього знадобиться програматор чи принаймні плата на базі 328р.
Але після цих проблем якщо підключити мікроконтролер до нормального джерела живлення він не відновлює свою роботу доки не перепрошиєш.
Ну тогда причина скорее одна, Вы используете для прошивки штатный бутлоадер, и когда просаживается напряжение, то контроллер идет в ресет и начинает работу с бутлоадера, а он в свою очередь при помехах по питанию может вытворить что попало, например затереть кусок флеша... в таких случаях лучше отказаться от бута и шить программатором.
Неактивний
Якщо я зміню ф'юзи на нормальні, це усуне проблему з бутлоадером?
Увімкнення BOD з високою ймовірністю усуне вашу проблему, bootloader при цьому можна залишити і прошивати плату через USB.