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

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

Помогите в скетч всроить очистку буфера

Помогите в в скетч всроить очистку буфера

Работа с битами

День добрый!

 

Есть такая задача, нужно из данных в виде четырёх шестибитных цифр, сделать шесть четырёхбитных, при этом не сильно нагрузив контроллер, ибо это всё делается внутри цикла.

То есть к примеру у нас есть B111111  B100000 B100000 B010101, числа доступны из заданных переменных, и каждый раз разные. 

Три кнопки на Analog

Хочу подключить три кнопки через аналоговый пин (0) ардуины.  Подключаю по этой схеме:

Код такой:

Управление светодиодной платой подключенной через I2C с помощью AT команд.

У меня есть светодиодная плата artofcircuits. Возможно она стандартная. Возможно была сделана по спец. заказу. В описании к этой плате сказано что ею можно управлять через AT команды. Например так:

Ответное СМС

Имеется Уно, gsm Shield sim900.

Необходимо отправить ответное смс.

Вот так я настраиваю модуль в setup:

Включение и выключение одного светодиода разным числом в пакете данных nrf24+ Ардуино



Вопрос в чём есть ардуино мега с nrf24, и есть ардуино про мини тоже с nrf24. Мне нужно что бы когда пришёл пакет данных допустим с числом 111, что бы  включить светодиод по 2пину ардуины, а если пришёл пакет допустим с числом 112 то светодиод потух.

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

собрать unsigned long из Serial.read();

Доброго времени суток!

Есть входящий поток данных , мне необходимо "поймать" 4 первых байта и собрать в unsigned long

например так:

byte i = 0:
unsigned long *ptrVar;
while (Serial.available()) {
	if (i < 4) ptrVar[i] = Serial.read();
	i ++;	
}
Serial.println(*ptrVar);

В итоге получаю 10, хотя при чтении идут сплошные  нули. Что делаю не так?

Помогите разобраться с кодом

char str;
void setup(){
  Serial.begin(9600);
}
void loop(){
if (Serial.available()>0)
{
str=Serial.read();
  Serial.print(str);
}
if (str=="on")
{
}
}

 

Подскажите что сдесь не так? Если сравнивать с числовой переменной, то все ок. А мне нужно именно строку. Подскажите пожалуйста.?

Помогите разобраться с программой

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

Готов за это заплатить)

Функция чтения из буфера серийного порта

Скетч не мой. Я новичек arduino, но есть желание разобраться. Неправильно отрабатывает "Функция чтения из буфера серийного порта gsm модема одной строки", а может быть и "Функция чтения всего буфера с серийного порта gsm модема" . При получении команды от модема gsmSerial определение "+CMT" происходит не каждый раз. Проверял в proteus и через монитор порта arduino на живом железе. Пробовал для теста менять "+СMT" на "1" опредение "1" тоже происходит не каждый раз.