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

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

Mega 2560+ rfid+RTC+SD

Всех приветствую!

Использую железо Mega 2560+ rfid(rdm6300)+RTC+SD

Задача : приложив rfid метку, на sd карту ведется запись кода метки и текущего времени.

На просторах Интернета нашел множество примеров, из которых соорудил такой код

Arduino+Ubuntu server+PHP

Всем привет. Ну вот наконец, после почти месяца самостоятельных изысканий я созрел для того, чтобы обратиться за помощью к сообществу (:

Итак - прошу помощи знатоков в вопросе передачи и считывания данных с ардуино с помощью php на платформе Ubuntu server. Ниже - описание проблемы и конфигурация среды.

Действия по времени

Здравствуйте, собственно задача управлять нагрузками в определённое время, но так, чтобы loop выполнялся не зависимо от времени... что-то типа

int time; //какая-то переменная с временем
void loop(){
if(time == 14.40 ){ ...действие1 }
if(time == 16.20 ){ ...действие2 }
if(time == 19.55 ){ ...действие3 }
...
}

Может гуру подскажут варианты реализаций...заранее спасибо!

В программировании новичёк, изредко работаю с php, так что не пинайте...

Ethrnet? USB? COM?

Доброго всем здоровьечка!

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

И так. Начинаюшие ардуинщики мигают лампочками, я этот период пережила, и пережила получения данных от сенсоров и датчиков, классической температуры, и влажности.

Но дальше больше, теперь хочется эти данные передовать на компьютер, на сервер, и где-то хранить долго долго.

Прирывания при связи по Ком Порту.

Есть Шаговик -> Ардуино -> Win Приложение.

В программе указывается сколько шагов сделать, отправляться команда. Адушка выполняет. Все работает.

Задача во время выполнения отправить другую команду, например остановить.

К сожалению Адушка, за новую команду не возьмется пока текущею не выполнит(Я понимаю что Адушка работает последовательно с командами, и не имеет понятия поточности, хотя в нете есть много примеров). Кто подскажет в каком направление копать?

Еще раз мигаем светодиодом без Delay

Я уж и не припомню сколько раз тут на форуме отсылал новичков к примеру Мигаем светодиодом без delay()

Но... не нравится мне он. Зато нравится процесс "критиковать чужое" :)

Кратко что не нравится:

1. Типы переменных выбранны "от балды"
2. Используются переменные там где можно было оботись без них.
3. Излишне засоряется глобальное простраство имен

Датчик DHT 11 и Дисплей. Помогите с кодом

Купил всеми известный дешёвый датчик DHT 11, прочитал о нём на амперке, взял оттуда код, залил, датчик выдаёт много ошибок.

Код с амперки:

Джойстик вместо кнопок

Шаговый двигатель управляется кнопками (библиотека AccelStepper). Скорость и ускорение регулируются и всё работает отлично.

void loop()
{ 
  if(ButtonLeftState == HIGH )
  {
    stepper.setSpeed(SPEED);
    stepper.setAcceleration(ACCEL);
    stepper.move(64000L);
  }
  else if(ButtonRightState == HIGH )
  {
    stepper.setSpeed(SPEED);
    stepper.setAcceleration(ACCEL);
    stepper.move(-64000L);
  }
  else if(ButtonStopState == HIGH )
  {
    stepper.stop();
  }
  stepper.run();
}

 

ИК упровление пк и другим оборудоваием (нужна помощь!)

Доброго времени суток! Помогите дописать программу чтобы можно было упролять не только оборудованием но и ПК

есть вот такая программа по упровлению к примеру светодиодами, при удержании на кнопки ИК пульта горит светодиод

так вот помогите дописать код что-бы при нажатии на другую кнопку пульта компьютер воспринимал как нажатие клавиши на клавиатуре, также и движени курсора

#include <IRremote.h>

помогите усовершенствовать программу Attiny85

//analog read pin 4,3,2
//pwm 1,0
//miso-50; mosi-51;sck-52;ss-53.
//long a;
void setup()
{
                                  //Serial.begin(9600);  
pinMode(1,OUTPUT);
}
void loop()
{
digitalWrite(1,HIGH);
long b=micros();
long r1,r2,d_c,c1,c2,c3,c4;
d_c=analogRead(1);//pinul pentru d_c
r2=analogRead(3);//pinul pentru r2
r1=analogRead(2);//pinul pentru r1

d_c=(d_c) * (100) / (1023); //facem duty cicle de la 0-100 din 0-1024
//Serial.println(d_c);
r2 =(r2) * (2000-1) / (1023)+1;
r1 =(r1) * (999-1) / (1023)+1;