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

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

Работа с прерываниями Мега2560

Друзья добрый день!

Подскажите, странная штука (хотя чудес не бывает).

Есть у меня кусок кода который занимается обработкой работы энкодера, но поменяв с 328 на 2560 он работать перестал. Испытания я проводил на 328меге, а реальное устройство 2560.В общем встрял я , а квалификации решить данный вопрос не хватает. Помогите пожалйста..

Ошибка в коде

int PhotosensorPin = A5;
unsigned int PhotosensorValue = 0;
 
 
void setup()
{
  pinMode(4, OUTPUT);
  pinMode(6, OUTPUT);
  Serial.begin(9600);
}
void loop()
{
  PhotosensorValue = analogRead (PhotosensorPin);
  if (PhotosensorValue < 300) digitalWrite(4, HIGH);
  else digitalWrite(4, LOW);
 

Как заставить работать реле через millis()

Есть задача включать реле на 50 минут и выключать на 20 минут. Пока что пробую на светодиоде по примеру Блинка без delay(). Для удобства тестирования светится 1 минуту, полминуты отдыхает. Вначале диод включается через положенную 1 минуту, а дальше не гаснет. Никак не могу понять, как довести до ума, без вашей помощи не обойтись мне! Вот код:

Как разделить на куски большой файл проекта?

Здравствуйте! С ардуино работаю недавно,и возникла потребность разделять код на куски. С каждым разом разбиратся все труднее,и труднее. 

Внятного ответа в сети не нашел,поэтому просто создал новый файл с расширением ino в папке с проектом, и он успешно отобразился в программе. Незнаю правильно ли это,но переменные и функции описанные в нем,работают. 

Вопрос номер два. Во втором файле проекта,который я создал ранее, был объявлен вот такой класс

вопрос по выводу информации на LCD A1602

добрый вечер!

Уважаемые форумчане прошу помощи в решении вопроса:

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

когда обьем воды в емкости становится больше 99 литров(трехзначной цифрой) и вновь возвращается к двухзначной, дальнейшее отоброжение начинает выводиться с десятичной. Очень хочется чтобы отображалось только целое число) Есть подозрение что все очень просто, но гугл не помог и личного опыта не хватае!

Управление сервоприводом через термоконтроллер

Уважаемые форумчане! Не пинайте сразу. Я новичок в теме ардуино. Хочется реализовать следующую задачу.
Есть термоконтроллер, который дает сигнал на разные провода, в зависимости от значения термодатчика. Есть сервопривод (медленный). Есть шим регулятор.
Задача механическая: сервопривод плавно регулирует ручку шим регулятора.

Повышение быстродействия программы

Добрый вечер. У меня проблема. Нужно организовать считывание сигнала длительностю 0,001 с. С частотой 100 Гц. Привожу скетч программы. Считывание и запись идут норамльно, пока не появляются другие команды в программе. Увеличивается время цикла программы и считывание начинает срываться и сбоить. Как можно увеличить быстродействие и написать программынй текст.

 

ds1307

Взял пример из библиотеки. По идее он должен записать системное время .Но получаеться что время записанное в ds1307 на 16 минут меньше системного. В чем может быть проблема?

Arduino и Ethernet Shield. Получение MAC-адреса

Всем добрый вечер.
Есть задача получить МАС-адрес подключенного ПК или любого другого устройства к Ethernet shield w5200. 
Есть у кого какие идеи по тому, как получить кадр на ардуино и разложить его на биты, или уже сразу вытащить МАС-адрес из полученного фрейма?

Написание библиотек для Arduino IDE

Здравствуйте, решил потренироватся и с протоколами передачи данных и с написанием библиотек, пока баловался с 1-wire, написал библиотеки для DHT11, DHT22 и библиотеку для работы с 1-wire. С DHT22 точно незнаю работает ли, так как нету этого датчика, вроде делал по даташиту. Если есть возможность, то проверьте работает ли с DHT22 и скажите какие есть косяки в коде библиотек. 

https://github.com/uaLion777/MyDHT

https://github.com/uaLion777/MyOneWire