Спонтанный отказ Arduino Nano.
- Войдите на сайт для отправки комментариев
Здравствуйте!
Столкнулся с такой проблемой. Имеется Arduino Nano. К ней подключено: 1. Джойстик с двумя потенциометрами; 2. Два светодиода; 3. Две кнопки; 4. Пьезоизлучатель; 5 модуль NRF24L01.
Залитый в Arduino Nano скетч при запуске издаёт звуковой сигнал и включает один светодиод. В цикле собираются данные с входов и массивом отправляются по радиоканалу. Модуль NRF24L01 включается только когда данные в массиве меняются и есть, что отправлять. Второй светодиод служит для индикации его включения и отправки массива. Питается всё пока от USB (4,8v).
Скетч работает идеально, но вчера вылез непонятный для меня сбой. Передающая часть была включена и прото лежала рядом ничего не передавая (состояния кнопок не менялись). Через некоторое время покоя Arduino издала звук, мигнула светодиодом, передала включение двигателей и повисла.
Я подумал обычный сбой в программе. Выключл, включил и ничего. Arduino не запускается. Компьютер её определяет как устройство, но сам вшитый скетч не работает и заливаться в неё ничего не хочет. Пробовал и Reset, и отключение/включение, и подавал питание со стабилизатора, а не с USB. Бесполезно. Горит только светодиод питания на самой ардуине и тишина. При этом ничего не греется. Внешне всё нормально
Было это вечером. Подумал, что накрылась ардуина, плюнул и пошел спать. Включил утром на всякий случай и чудо! Работает как ни в чём не бывало!
С чем это может быть связано? Такое поведение похоже на аппаратный сбой. Почему полежав ночь без питания всё снова заработало нормально? Сталкивался ли кто нибудь с таким?
Поскольку использоваться планирую для управления моделью, с таким поведеним модель может уплыть куда угодно.
1.
nrf24l01+ питаете 3.3в ?
2.
>> включается только когда данные в массиве меняются
понимаете, что случиться если пульт перестанет работать? Корабль уплывёт за горизонт. По-моему, лучше так: если джойстики не в нейтральном положении, пульт отправляет комманду не реже чем каждые 0.5 сек. Корабль останавливается, если не получал команду более 0.6 секунд.
3.
>> Через некоторое время покоя Arduino издала звук,
то есть перезагрузилась? окно монитора порта открывали? компьютер перезагружали?