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

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

Скетч включения реле по смс

Добрый день всем ардуинцам.

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

Взял пример из библиотеки GSMSHIELD и начал дополнять его своим кодом: чтение даных с температурного датчика и отправка его через СМС.

Вот код:

Мой способ обработки нажатия кнопок (2 вывода контроллера, сколько угодно кнопок)

Покритикуйте мой способ обработки нажатия кнопок по прерыванию. Может прерывание тут вообще лишнее? Или как-то можно оптимизировать? Не реализована обработка одновременного нажатия двух и более кнопок.

Задача вообще стоит такая: выполнить действие по быстрому нажатию кнопки (менее 500 ms) или по длительному нажатию кнопки (более 500 ms)

Вывод float на символьно-цифровой экран 1602

Возникла небольшая проблема - не понял пока в чём дело.

Объявлен массив, по прерыванию прибавляется к каждому элементу определённое число (около 0,02), и результат выводится на экран. Всё прекрасно работает, пока выводимое число не станет 8192,00 (2 в степени 13) - дальше оно перестает увеличиваться. В чём загвоздка? почему упирается в 8192? Предел float во много раз больше...

Код:

Редактирование значения переменной с помощью кнопок на LCD дисплее

Здравствуйте, такой вопрос. В программе имеются переменная - настроечный коэффициент, типа double, к примеру, consKp=0.044 Мне необходимо иногда его редактировать, целую и дробную часть, то есть число отображается на дисплее, кнопками влево вправо нужно двигать курсор по разрядам, а кнопками вверх вниз соответственно увеличивать и уменьшать разряд, под которым курсор. При этом при каждое изменение должно сохраняться.

Скетч как отдельная библиотека = геморой

Ушатал меня в конец C++ своим синтаксисом, люди добрые научите как в библиотеке задать прерывания, делаю так

в Class.h

void setInterrupt();
void blink();

в Class.cpp

void Class::setInterrupt(){
attachInterrupt(0, blink(), LOW);
}
void Class::blink(){
}


При компиляции орёт это -  error: argument of type 'void (Class::)()' does not match 'void (*)()'

 

 

Обнуление переменной по нажатию кнопки

Здравствуйте, возникла проблема требуется обнулить переменную по нажатию кнопки как это можно сделать вот в этой программе:

Работа с Ethernet

Всем привет. :) Я новичек в Ардуино, играю с ней 4-й день. :) Появилась проблема, с которой не могу справиться сам.

У меня Ethernet модуль ENC28J60, для работы с ним я использую библиотеку UIPEthernet. Её работа идентична стандартной библиотеке Ethernet. Все стандартные скетчи для Ehernet работают, если заменить <Ethernet.h> на <UIPEthernet.h>.

сократить кто сможет помочь ?

if (results.value == 0x30B0020A
||results.value == 0x3000020A
||results.value == 0x30000A0A
||results.value == 0x3800020A
||results.value == 0x38000A0A
||results.value == 0x3400020A
||results.value == 0x34000A0A
||results.value == 0x3C00020A
||results.value == 0x3C000A0A
||results.value == 0x3080020A
||results.value == 0x30800A0A
||results.value == 0x3880020A
||results.value == 0x38800A0A
||results.value == 0x3480020A
||results.value == 0x34800A0A
||results.value == 0x3C80020A
||results.value == 0x3C800A0A
||results.value == 0x3040020A

серийный порт и Ethernet shield

С новым годом народ!

arduino uno, ethernet shield.

Прикоснулся первый раз к Ethernet шилду несколько дней назад, нашёл в сети код мигания светодиодом

http://robocraft.ru/blog/238.html

Попробовал, кое-что попровил, работает.

Вот код:

скачать файл с SD по Ethernet

есть всем известный гуляющий по интернету скетч управления реле через интернет для ардуино+ethernet шилд...все работает безупречно.вот он: