Привет. Не первый раз замечаю, что со временем работая моя arduino uno начинает тупо игнорировать паузы. Конкретно сейчас у меня запущен скрипт, который зажигает светодиод на 1 секунду, а затем гасит на 9 и проверяет что там прислал блютуз, и шлёт ему тоже самое в ответ. Скрипт залила вчера на плату, оставила включенным. И если вчера всё было четко, то сейчас светодиод мигает так, будто хочет у меня вызвать приступ эпилепсии.
Тот факт, что пауза игнорируется также подтверждает то, что и ответ от блютуза в терминал приходит без задержек. Т.е. раньше, условно, если я через терминала отправляла что-то на блютуз, то ответ я дожидалась когда светодиод мигнёт. Сейчас я могу отпралять в любой момент и получать ответ мгновенно.
Этот код легко может вызвать выход за границу массива, порчу памяти и далее может быть что угодно.
Никакого контроля размера сообщения от блютуз в нем не предусмотрено.
Более того, я не вижу никаких механизмов, которые могли бы менять длительность задержек в исправной плате. Поэтому как-то слабо верится.
Сдается мне, барышня, что вы чего-то недоговариваете.
Если в прошлые разы у вас не было “подобной работы с памятью” - значит могли быть другие, настолько же грубые ошибки в коде.
ну я тоже считала, что такое в принципе не может быть. Но имеем что имеет. Мб плата неисправна, я не знаю. Увы, сейчас другой для тестов нет.
Ошибки, безусловно, могли быть, однако, на мой взгляд, вы меня переоцениваете, если верите в то, что я способна поменять поведение функции delay на таком уровне.
Не договаривать нечего. Код я дала, поведение описала. Не надо быть прожженым кодером, чтобы видеть, что ни при каких обстоятельствах лампочка не может мигать так быстро, а блютуз не может отвечать каждый раз мгновенно. Это не тысячи строк когда, где где-то внутри может скрыться подвох
На данный момент лампа моргает стабильно как надо. К блютузу подключение со вчера произведено не было и никаких соответственных манипуляций.
Монитора нет, Started не посмотреть. Вся эта схема затевалась просто ради того, чтобы узнать насколько мне хватит старых аккумуляторов, ёмкости которых я не знаю. Блютуз и плата основные потребители, так что только их и подключила и написала простой скрипт. Кто знал, что там такое начнется.
Вывод millis() норм идея, спасибо. Буду выводить на блютуз