#1 2023-02-18 04:18:01

Rodney
Учасник
Зареєстрований: 2023-02-18
Повідомлень: 4

Digispark: злітає прошивка при зникненні живлення

Digispark втрачає прошивку
У мене є проблема з платою digispark. Короткий опис:
Мій скетч керує сервоприводом через натискання кнопок. Живлення схеми від акумулятору через підвищуючий модуль MT3608. Також використовується плата зарядки та захисту акумулятору TP4056. В самому акумуляторі теж може бути вбудована плата захисту, це не вдалося перевірити. Скетч працює правильно.
Проблема полягає в тому, що коли сервопривід впирається в перешкоду, він докладає великих зусиль, щоб переміститися далі і просаджує живлення. Тут спрацьовує якийсь один або декілька захистів і напевно на деякий час живлення пропадає. По ідеї, після відновлення живлення контролер має запустити виконання програми з початку. Але він цього не робить. Допомогає лише перепрошивка мікроконтролеру.
У деяких випадках перезавантаження все таки допомогає і програма починає виконуватися, але частіше за все доводиться перепрошивати.
Чому це відбувається і як це побороти?
Мікроконтролер - Digispark Attiny85 з мікро юсб входом, можливо що китайський клон

Неактивний

#2 2023-02-18 07:39:57

Kino
Учасник
Зареєстрований: 2019-02-28
Повідомлень: 50

Re: Digispark: злітає прошивка при зникненні живлення

Прошивка не слетает. Ищите проблему в питании или программе.

Неактивний

#3 2023-02-18 11:57:40

akapulko
Гість

Re: Digispark: злітає прошивка при зникненні живлення

Чому це відбувається і як це побороти?

Увімкнення BOD має допомогти, спробуйте залити bootloader з відповідними fuse bits (lfuse:0xe1 efuse:0xfe hfuse:0x5d - для BOD level at Vcc = 2.7V).

#4 2023-02-18 12:08:18

akapulko
Гість

Re: Digispark: злітає прошивка при зникненні живлення

Поправка: (lfuse:0xe1 efuse:0xfe hfuse:0xdd - для BOD level at Vcc = 2.7V), якщо hfuse:5d - відключите зовнішній Reset і доведеться використовувати HV programmer.

#5 2023-02-18 16:14:12

Rodney
Учасник
Зареєстрований: 2023-02-18
Повідомлень: 4

Re: Digispark: злітає прошивка при зникненні живлення

Kino пише:

Прошивка не слетает. Ищите проблему в питании или программе.

Ну проблеми з живленням дійсно є, я не кажу що їх нема. Спрацьовує захист на платі зарядки, або захист на платі dc-dc перетворювача, або ще можливо на самому акумуляторі є плата захисту (я не можу їх розібрати, бо не маю права зіпсувати зовнішній вигляд, вони в термоусадці, тому не можу сказати є там захист чи немає).
Але після цих проблем якщо підключити мікроконтролер до нормального джерела живлення він не відновлює свою роботу доки не перепрошиєш.

Неактивний

#6 2023-02-18 16:15:20

Rodney
Учасник
Зареєстрований: 2023-02-18
Повідомлень: 4

Re: Digispark: злітає прошивка при зникненні живлення

А як мені переглянути ф'юзи на мікроконтролері на платформі Digispark? Є простий спосіб це зробити?

Неактивний

#7 2023-02-18 16:28:04

akapulko
Гість

Re: Digispark: злітає прошивка при зникненні живлення

Немає сенсу їх переглядати, їх треба встановити, а для цього знадобиться програматор чи принаймні плата на базі 328р.

#8 2023-02-19 09:12:40

Kino
Учасник
Зареєстрований: 2019-02-28
Повідомлень: 50

Re: Digispark: злітає прошивка при зникненні живлення

Rodney пише:

Але після цих проблем якщо підключити мікроконтролер до нормального джерела живлення він не відновлює свою роботу доки не перепрошиєш.

Ну тогда причина скорее одна, Вы используете для прошивки штатный бутлоадер, и когда просаживается напряжение, то контроллер идет в ресет и начинает работу с бутлоадера, а он в свою очередь при помехах по питанию может вытворить что попало, например затереть кусок флеша... в таких случаях лучше отказаться от бута и шить программатором.

Неактивний

#9 2023-02-19 21:07:58

Rodney
Учасник
Зареєстрований: 2023-02-18
Повідомлень: 4

Re: Digispark: злітає прошивка при зникненні живлення

Якщо я зміню ф'юзи на нормальні, це усуне проблему з бутлоадером?

Неактивний

#10 2023-02-19 22:52:26

akapulko
Гість

Re: Digispark: злітає прошивка при зникненні живлення

Якщо я зміню ф'юзи на нормальні, це усуне проблему з бутлоадером?

Увімкнення BOD з високою ймовірністю усуне вашу проблему, bootloader при цьому можна залишити і прошивати плату через USB.

Швидке повідомлення

Введіть повідомлення і натисніть Надіслати

Підвал форуму