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

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

Проблема с SIM800L

Всем доброго времени суток.

Возникла проблема с получаемым текстом SMS в телефоне при отправке с SIM800L.

В полученном тексте заменяет букву "w" и следующую за ней на "@".

Например, отправляю "gsm was offline", получаю в телефоне "gsm @s offline".

Подскажите куда копать?

Общение с SIM900 не перебивая

Всем привет!

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

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

if (gprsSerial.available()!=0) { 
      isNosendSms = true;
      return; }

если да, то ставим тру для неотосланной смс, которая формируется в условии

вольтметр на arduino nano и SSD1306 дисплее

прошу помощи, я начинающий, прошу не бить ) 

WeMos D1 отправка данных на удалённый сервер

Коннектится к сети без проблем, но не передаёт ничего в add.php. Вообще не обращается на сервер - логи пустые.

Рыбку хотя бы посеребренную или позолоченную ?

Можно ли не уходя от ардуиновского функционала выбора плат и библиотек, пользоваться какой-либо чуть более удобной IDE, хотя бы на несколько шагов ближе к Atmel Studio ?

Нужна удобная доступность внесения изменений в опции компилятора, возможно пользовательские профили,  работа с фьюзами и битлок  и хотя бы минимальные возможности отладки ...  

Bootloader arduino тоже удобен, но не принципиален.

Qt + Arduino через serial

Всем доброго времени суток. Имеется задача - управление сервомашинками, подключенными к ардуино, с компьютера, через приложение написанное на Qt. Управление осуществляется по нажатию клавиш на клавиатуре (к примеру, вперед - W). На qt код реализовал, по нажатию кнопки формирую массив qbytearray, Заношу в него данные, далее отправляю в com. К каждой передаче данных добавляю в конце символ, например t, чтобы ардуино могла понять, на какую серву посылать сигнал. Данные в com доходят, но ардуино не реагирует на них. В скетче использую readstring().

Почему поймал переполнение?

Вычисляю выражение  L=L+New-Old-1;  Если не использовать промежуточную переменную delta=New-Old-1;  L=L+delta;  то возникает переполнение .

Отрицательных чисел в явном виде не создаю, New приходит ко мне строго как беззнаковое uint32_t  и всегда больше Old  хотя на 1 или на 2.  Подозреваю компилятор изменил порядок выполнения формулы и  начал с вычитания ?  Значение New в первом цикле =0,  а после вычитания 1 переходит что-ли в -1, те 0xFF FF FF FF ?

узнать время между двумя миганиями

void loop(void) 
{  
 sensors_event_t event;
 tsl.getEvent(&event);
if (event.light>10)
{
 digitalWrite(13, HIGH);
}
else
{
 digitalWrite(13,LOW);
}

}

светодиод загорается, тухнет и через время снова загорается и так до бесконечности. как узнать сколько времени прошло между последними двумя горениями. хочу сделать индикатор потребляемой мощности в реальном времени. 

Wemos - прозрачный TCP шлюз

Приветствую.

подскажите, с чего начать чтобы написать скетч для Wemos и enc28j60 чтобы сделать прозрачный шлюз. Нужно чтобы через wi-fi цеплялся к домашней сети (client) и был виден сетевой интерфейс enc28j60. Можно в той же сети, можно в подсети. Главное чтобы была трансляция пакетов wifi -> ethernet.