Ардуино + USB + Win. Вопрос от новичка.

Использование системы в различных ситуациях, вопросы программирования сценариев.

Модератор: immortal

NoFear
Сообщения: 9
Зарегистрирован: Вт дек 10, 2013 6:49 pm
Благодарил (а): 0
Поблагодарили: 1 раз

Re: Ардуино + USB + Win. Вопрос от новичка.

Сообщение NoFear » Ср дек 11, 2013 5:20 pm

sergejey писал(а):
Могу даже в коде показать как оно сделано, но почему не работает пока не разбирался -- в самое ближайшее время попробую починить, обещаю :)
Буду весьма признателен. Если не сейчас, то на будущее пригодится, а пока вариант только через эзернет шилд прием/передачу организовывать?
NoFear
Сообщения: 9
Зарегистрирован: Вт дек 10, 2013 6:49 pm
Благодарил (а): 0
Поблагодарили: 1 раз

Re: Ардуино + USB + Win. Вопрос от новичка.

Сообщение NoFear » Чт дек 12, 2013 12:31 am

код кнопки:

Код: Выделить всё

exec("mode com3: BAUD=9600 PARITY=N data=8 stop=1 xon=off"); 
$fp =shell_exec("C:/_majordomo/apps/arduino_gw/arduino_gw.exe 1"); 
fwrite($fp);
fclose($fp);
say("Светодиод включен с сервера",5);
Корявый скетчик:

Код: Выделить всё

int LedPin = 13;
int Baton = 3;
byte inByte = 0;
byte sch = 0;
boolean lastBaton = LOW;
boolean led = LOW;

void setup ()
{
pinMode (LedPin, OUTPUT);
pinMode (Baton, INPUT);
Serial.begin(9600);

}

boolean BatPosition(boolean last)
 {
   boolean current = digitalRead(Baton);
   if (last != current)
   {
     delay(20);
     current = digitalRead(Baton);
        Serial.println(last);
   }
   else sch = 0;
   return current;
 }

void loop ()
{
while(Serial.available() == 0)
 {
  boolean f = BatPosition(lastBaton);
   if(f == HIGH && lastBaton ==LOW)
   {
      if (sch == 0 && led == LOW)
        {
          sch = 1;
          led = HIGH;
          Serial.println("GET /objects/?object=Vikluchatel&op=m&m=SvetodiodRefresh&");
        }
        else if (sch == 0 && led == HIGH)
        {
          sch = 1;
          led = LOW;
          Serial.println("GET /objects/?object=Vikluchatel&op=m&m=SvetodiodRefresh&");
        } 
       f = lastBaton; 
   }
   digitalWrite(LedPin,led);
 }
inByte = Serial.read()-'0';
if (inByte == 1) led = HIGH;
else led = LOW;
 digitalWrite(LedPin,led);
}
Всё работает! Принимает, отсылает.. осталось только прикрутить блэкджек и шл..
fillauto
Сообщения: 14
Зарегистрирован: Ср окт 23, 2013 2:39 pm
Благодарил (а): 0
Поблагодарили: 1 раз

Re: Ардуино + USB + Win. Вопрос от новичка.

Сообщение fillauto » Чт дек 12, 2013 9:32 am

NoFear писал(а): Всё работает! Принимает, отсылает.. осталось только прикрутить блэкджек и шл..
Спасибо, попробую.
Пробовал по аналогии запускать из командной строки - ничего не слалось в COM-порт.
NoFear
Сообщения: 9
Зарегистрирован: Вт дек 10, 2013 6:49 pm
Благодарил (а): 0
Поблагодарили: 1 раз

Re: Ардуино + USB + Win. Вопрос от новичка.

Сообщение NoFear » Чт дек 12, 2013 11:16 am

fillauto писал(а): Пробовал по аналогии запускать из командной строки - ничего не слалось в COM-порт.
Кстати, при отсылке на com порт - программа ничего не показывает.. просто тихо, мирно шлет всё транзитом... Но нам же это и надо)
fillauto
Сообщения: 14
Зарегистрирован: Ср окт 23, 2013 2:39 pm
Благодарил (а): 0
Поблагодарили: 1 раз

Re: Ардуино + USB + Win. Вопрос от новичка.

Сообщение fillauto » Чт дек 12, 2013 11:40 am

Вроде comport toolkit-ом смотрел. Значит плохо смотрел. Нам это и надо, но вобщем-то для отладки было бы полезно добавить перед каждой строчкой значок - направления передачи (> или <) и все же показывать данные отсылаемые в com-порт. Для полноты картины.
Аватара пользователя
sergejey
Site Admin
Сообщения: 4284
Зарегистрирован: Пн сен 05, 2011 6:48 pm
Откуда: Минск, Беларусь
Благодарил (а): 75 раз
Поблагодарили: 1559 раз
Контактная информация:

Re: Ардуино + USB + Win. Вопрос от новичка.

Сообщение sergejey » Чт дек 12, 2013 11:51 am

NoFear писал(а):
fillauto писал(а): Пробовал по аналогии запускать из командной строки - ничего не слалось в COM-порт.
Кстати, при отсылке на com порт - программа ничего не показывает.. просто тихо, мирно шлет всё транзитом... Но нам же это и надо)
Э... так выходит работает? Я всё же тогда сделаю что б показывало для наглядности, плюс нашёл недоработку -- если в отрплавляемой строке пробел, то шлётся как несколько строк (пробелы отделяют строки отправляемы в ком-порт).

Сергей Джейгало, разработчик MajorDoMo
Идеи, ошибки -- за предложениями по исправлению и развитию слежу только здесь!
Профиль Connect -- информация, сотрудничество, услуги
NoFear
Сообщения: 9
Зарегистрирован: Вт дек 10, 2013 6:49 pm
Благодарил (а): 0
Поблагодарили: 1 раз

Re: Ардуино + USB + Win. Вопрос от новичка.

Сообщение NoFear » Чт дек 12, 2013 12:04 pm

Я проверку когда делал - присваивал на Арде значение переменной и пересылал обратно в эфир. Так и убедился, что всё шлется как надо.
sergejey писал(а): Э... так выходит работает? Я всё же тогда сделаю что б показывало для наглядности, плюс нашёл недоработку -- если в отрплавляемой строке пробел, то шлётся как несколько строк (пробелы отделяют строки отправляемы в ком-порт).
Правильно же) При запуске "с параметром" пробел - это разделитель параметров вроде.. или нет?))
Аватара пользователя
sergejey
Site Admin
Сообщения: 4284
Зарегистрирован: Пн сен 05, 2011 6:48 pm
Откуда: Минск, Беларусь
Благодарил (а): 75 раз
Поблагодарили: 1559 раз
Контактная информация:

Re: Ардуино + USB + Win. Вопрос от новичка.

Сообщение sergejey » Чт дек 12, 2013 1:10 pm

NoFear писал(а):Я проверку когда делал - присваивал на Арде значение переменной и пересылал обратно в эфир. Так и убедился, что всё шлется как надо.
sergejey писал(а): Э... так выходит работает? Я всё же тогда сделаю что б показывало для наглядности, плюс нашёл недоработку -- если в отрплавляемой строке пробел, то шлётся как несколько строк (пробелы отделяют строки отправляемы в ком-порт).
Правильно же) При запуске "с параметром" пробел - это разделитель параметров вроде.. или нет?))
Да, правильно. Но всё же правильнее строку целиком отправлять, как мне видится.
В общем, сейчас переделал немного и отправляется сразу вся строчка целиком и пишется в окне, что было отправлено -- проверил на своём контроллере, всё работает.
Ссылка на новую версию: http://smartliving.ru/download/arduino_gw_05.zip
(так же обновил ссылку на сайте)

Сергей Джейгало, разработчик MajorDoMo
Идеи, ошибки -- за предложениями по исправлению и развитию слежу только здесь!
Профиль Connect -- информация, сотрудничество, услуги
NoFear
Сообщения: 9
Зарегистрирован: Вт дек 10, 2013 6:49 pm
Благодарил (а): 0
Поблагодарили: 1 раз

Re: Ардуино + USB + Win. Вопрос от новичка.

Сообщение NoFear » Чт дек 12, 2013 5:46 pm

Огромное спасибо за оперативность! Такое отношение весьма приятно)
PAV
Сообщения: 949
Зарегистрирован: Пт дек 06, 2013 11:30 am
Откуда: Москва
Благодарил (а): 68 раз
Поблагодарили: 94 раза

Re: Ардуино + USB + Win. Вопрос от новичка.

Сообщение PAV » Пт дек 20, 2013 11:38 am

Как в ардуине считать строку, разбить ее на части и использовать для управления. Пишу сам, н оесли кто уже сделал, поделитесь.
выполнить команду 1 или 0 получается, как сделать чтобы строку типа pin11 status1 ардуинка выполняла?
Ответить