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

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

Atmega 328p (без кварца) + nrf24 + dht22

Здравствуйте!
Хочу сделать свою метиостанцию.
Есть елементы:
Atmega 328p
nrf24
DHT22
 
Atmega 328p - я перепрошил по уроку "Arduino ATmega328 Без кварца without crystal quartz bootloader" от автора Dmitry OSIPOV ( https://www.youtube.com/watch?v=wuEzIKybvXw ).
Подключил на макетной плате:
http://prntscr.com/9zesvq
 
Скетч:
 

Волшебство Arduino. Магия условий.

То ли я дурак, то ли мне везет на волшебство. Есть такой код в секции setup

 if (Serial1.available()) GetGps(); 
 else 
 {  
digitalWrite(GPS_ON, HIGH);
delay(2000);
digitalWrite(GPS_ON, LOW);
 }

Т.е. если порт доступен он берет данные гпс, если порт не доступен он включает gps. Этот код работал, пока я не допаял обвес на другие пины и активироваш ШИМ.

Помогите разобраться с ШИМ

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

Прерывания serial

вобщем дело было так

купил gps 6mv2

использовал прошивку tunny gps и ее библиотеки 

подключил дешманскую нано 328 на пины 4.3

запустил окно сриал данные идут все хорошо .. шайтан каробка работатет

далее подпаял 2 провода сдвигового регистра 74нс164

простой как 2 копейки с одной стороны подключил управление анодами с другой управление катодами

далее ардуину и плюс сдвигового запитал от dc преобразователя корм 12 вольт а преобразователь выдает  4.8 вольта

Перевод int в HEX для irsend

Добрый день!

Помогите решить задачу, над которой бьюсь несколько дней.

Задача: 

В переменной на ардуино хранится ИК команда, например, FDC23. Её нужно отправить ИК-светодиоду через irsend.sendNEC()

 

int ir=FDC23;

irsend.sendNEC(0xFDC23, 32) - Работает(ИК приемник правильно интерпретирует команду)

Помощь с кодом: запуск котла автомобильного подогревателя с помощью SIM800L

Уже недель бьюсь, никак не могу понять где загвоздка (работает как хочет, только не так как нужно).

Монитор порта . Комбинация ctrl+z

Здравствуйте 

Подскажите , пожалуйста , как из монитора порта отправить ctrl+z в плату для завершения отправки смс из SIM900?

помощь в коде

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

как менять (инвертировать) переменную var?

подскажите, как правильно записать инверсию var=1 и var=2 на примере: digitalWrite(13,!digitalRead(13));?

var=1(!var=2); что то типа этого, не знаю, как правильно

обходим delay();

Собственно возникла примерно такая проблема. Чтоб обойти делай заводим переменную unsigned long, пишем в нее значение millis() и потом сравниваем с неким значением.

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

Подскажите плиз как правильно делать в таких случаях :)