Программирование

Вопросы по программированию Arduino.

помогите дописать скетч

Приветствую всех. я в ардуино новичек. помогите советом. как заставить выполняться программу пока есть сигнал на шим входе. например - пока есть сигнал, загорается светодиод, как сигнал пропадает, светодиод гаснет. и как зациклить работу в данном примере 

О поведении датчика давления BMP180

Замеряю время вызова функции опроса BMP180, температура, потом давление в одном флаконе (опросе). Для различных разрешений (точностей). МК ATMega328P, 16 МГц, 5 В. Замер времени по Timer1, 2000 кГц, 1 тик 0.5 мкс, начало измерения при вызове функции опроса, окончание - при возврате из функции. Помимо собственно измерений, там (в функции) и обсчет, чтение калибровочных коэффициентов и т.п.

Собственно измерения (температуры и затем давления) начинаются командой начала измерения и прекращаются при сбросе бита CSO в контрольном регистре 0xF4. Все по документации.

После перезагрузки скетч выполняется в 8 раз медленнее

Купил в Китае аналог Arduino Pro Micro ATmega32u4 16MHz 5v. До этого такими же пользовался, всё было без проблем. Выставляю Arduino Leonardo, свой порт. Заливаю стандартный скетч Blink. Выполняется правильно, 1 сек светодиод горит, ещё одну не горит. Отсоединяю питание и занаово подсоединяю. 8 сек горит и 8 не горит. Т.е. команды выполняются в 8 раз медленнее после перезагрузки. В чём проблема?

Отследить состояние кнопки

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

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

Смена режимов работы RGB ленты.

Прошу помощи в смене режимов мерцания RGB ленты, а именно в данном коде выбор группы по долгому зажатию кнопки. На текущий момент работает 1 группа (смена цветов 1.1-1.9) в if'e group1, при зажатии кнопки, происходит переход в другой if group 0, все как положено, НО по какой то причине при однократном нажатии снова включается group 1.

В кратце опишу что должен выполнять код:

Неясность с gprsSerial.available()

Объясните пожалуйста понятным языком, для чего нужна данная функция.

парсинг ascii to int

Мужики помогите, никак не могу найти решение.

С serial порта прихрлит сообщение вида X10AD6080 фиксированной длины где X-признак начала сообщения, 10AD6080 -  число 279797888 в 16-ричной системе счисления.

Так вот никак не могу получить это число.

Надо  его в Long int записать.

 

Нужен файловый менеджер на базе arduino mega 2560

Записывать и перезаписывать файлы данных, речевые ответы на SD-карту, примерно как на диктофоне.

Arduino mini 03

Всем привет! Очень нужна помощь знатоков. Создал Arduino mini 03 на atmega8, но никак не могу залить туда свой скетч через програматор Arduino as ISP, используя для последнего Arduino mega 2560.

Вот схема http://www.arduino.cc/en/uploads/Main/arduino_mini_schematic03.pdf

Прошу, помогите подробным советом!

Зависание датчика DHT21

Есть схема, собирающая данные о температуре. В ней используются датчики DHT21 и библиотека dht. В силу ряда причин иногда с датчиков (датчика) не поступает информация. Например, обрыв линии от датчика. Ситуация вполне обыденная, но вот проблема. Библиотека не умеет отрабатывать такие ситуации. При обрыве линии библиотечная функция ничего не выдает и ардуино тупо завичсает в ожидании данных от функции.