Спонтанный отказ Arduino Nano.

MorAlex
Offline
Зарегистрирован: 12.10.2015

Здравствуйте!

Столкнулся с такой проблемой. Имеется Arduino Nano. К ней подключено: 1. Джойстик с двумя потенциометрами; 2. Два светодиода; 3. Две кнопки; 4. Пьезоизлучатель; 5 модуль NRF24L01.

Залитый в Arduino Nano скетч при запуске издаёт звуковой сигнал и включает один светодиод. В цикле собираются данные с входов и массивом отправляются по радиоканалу. Модуль NRF24L01 включается только когда данные в массиве меняются и есть, что отправлять. Второй светодиод служит для индикации его включения и отправки массива. Питается всё пока от USB (4,8v). 

Скетч работает идеально, но вчера вылез непонятный для меня сбой. Передающая часть была включена и прото лежала рядом ничего не передавая (состояния кнопок не менялись). Через некоторое время покоя Arduino издала звук, мигнула светодиодом, передала включение двигателей и повисла.

Я подумал обычный сбой в программе. Выключл, включил и ничего. Arduino не запускается. Компьютер её определяет как устройство, но сам вшитый скетч не работает и заливаться в неё ничего не хочет. Пробовал и Reset, и отключение/включение, и подавал питание со стабилизатора, а не с USB. Бесполезно. Горит только светодиод питания на самой ардуине и тишина. При этом ничего не греется. Внешне всё нормально

Было это вечером. Подумал, что накрылась ардуина, плюнул и пошел спать. Включил утром на всякий случай и чудо! Работает как ни в чём не бывало!

С чем это может быть связано? Такое поведение похоже на аппаратный сбой. Почему полежав ночь без питания всё снова заработало нормально? Сталкивался ли кто нибудь с таким?

Поскольку использоваться планирую для управления моделью, с таким поведеним модель может уплыть куда угодно.

toc
Offline
Зарегистрирован: 09.02.2013

1.
nrf24l01+ питаете 3.3в ?

2.
>> включается только когда данные в массиве меняются

понимаете, что случиться если пульт перестанет работать? Корабль уплывёт за горизонт. По-моему, лучше так: если джойстики не в нейтральном положении, пульт отправляет комманду не реже чем каждые 0.5 сек. Корабль останавливается, если не получал команду более 0.6 секунд.

toc
Offline
Зарегистрирован: 09.02.2013

3.
>> Через некоторое время покоя Arduino издала звук,

то есть перезагрузилась? окно монитора порта открывали? компьютер перезагружали?