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

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

Изменение файловых атрибутов даты-времени при создании/корректировке файлов на SD-карте

В процессе работы с записью данных на SD-карту (Arduino Mega 2560 + Ethernet Shield) понадобилось устанавливать файловые атрибуты, связанные с датой-временем, которые в обычном случае жестко устанавливаются в 01.01.2000 01:00.
Беглое ознакомление с библиотеками показало, что в libraries\SD\utility\SdFat.h наличествуют функции класса SdFile: timestamp и sync , позволяющие работать с файловыми атрибутами

Работа с временем и датой

Добрый день

Подскажите плз, есть ли стандартная библиотека для работы в Arduino с временем и датой?

Нужно сравнивать 2 набора значений дата+время: текущие, полученные из модуля часов ds1307 и значения, сохраненное ранее в eeprom. Ожидаемый результат операции - разница между ними в днях, часах,..

Библиотека AccelStepper

Код на основе ProportionalControl из библиотеки AccelStepper. 

Кнопка 1 сохраняет положени.

Кнопка 2 возвращает в сохранённое положение.

Кнопка 3 переводит в положение потенциометра.

Скорость переводов при нажатии кнопок 2 и 3 разная.

time = millis();

Использую в проге функцию  millis(); Задача программы при поступлении сигнала запустить через 5 сек  

time =millis();

if (RCval>1470&RCval<1550&&time>5000) {avar();}

 

void avar()

{

digitalWrite(9,1);
digitalWrite(10,1);
delay(strobArr1[4]);
digitalWrite(9,0);
digitalWrite(10,0);
delay(strobArr1[4]);

}

Arduino mega отсылка и прием сообщений от роутера (UART) через serial

Здравствуйте, помогите разобраться с проблемой. Есть код:

2 кнопки и никак не разберусь

Вот код проблема в том когда работают параметры одного из if значение постоянно увеличивается или уменьшается а нужно чтоб оно это делало всего на 1 единицу а не постоянно

serialEvent в новом классе

Здравствуйте. У меня имеется вот такой класс:

class Arscom : public HardwareSerial {
public:
  Arscom() : HardwareSerial(Serial){}
  void welcome();
  void setMouseEvent(void (*f)(byte, byte, byte));
  void setQuickEvent(void (*f)(byte*, int));
private:
  void (*mouseEvent)(byte, byte, byte);
  void (*quickEvent)(byte*, int);
};

как мне теперь добавить в мой класс функцию serialEvent? Я хочу чтобы мой класс сам реагировал на события от сериала.

Чтото вроде такого:

Ускоряем свою Arduino

В сети наткнулся на такую статью http://habrahabr.ru/post/141442/ . Не понимаю каким образом реализуется ускарение функции digitalWrite().

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

Запускаю скетч - пример ProportionalControl из библиотеки AccelStepper.