Форум обсуждения систем  

Вернуться   Форум обсуждения систем "Умный дом", проектов Ардуино, OpenWRT и других DIY устройств > Форум умного дома > Сделай сам > CyberWrt

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 06.10.2014, 11:29   #13
avgaz
Senior Member
 
Регистрация: 05.10.2014
Сообщений: 190
Вес репутации: 0
avgaz is an unknown quantity at this point
По умолчанию Re: Логин пас по умолчанию?

Цитата:
Сообщение от mebitek Посмотреть сообщение
Ты открываешь порт, ардуина перегружается. Поставь конденсатор земля-ресет.

PHP код:
$serial = new phpSerial;
$serial->deviceSet("/dev/ttyUSB0");
$serial->confBaudRate(57600);
$serial->deviceOpen();
sleep(1);
$read $serial->readPort();
echo 
$read;
$serial->deviceClose(); 
Зачем sleep?

Время чтения "даласа" тоже может добавить ошибки.
Зачем конденсатор то? sleep без него не срабатывает, вернее такое ощущение что не успевают данные придти, браузер уже погрузил страницу, а на ардуине только начинают мигать диоды чтения, если поставить sleep 2 сек или даже 1.8сек то данные выводятся.
Цитата:
Сообщение от mebitek Посмотреть сообщение
Аксиома. Если в линуксе что-то не работает, значит вы что-то делаете не так.
Это же касается флешки, если она в принципе работает, но при этом не работет где-то, значит go to первый пункт.
)))) ну что можно сделать с флешкой не так?
Цитата:
Сообщение от mebitek Посмотреть сообщение
PHP код:
void loop() {

  
sensors.requestTemperatures();
  
Serial.print("Sensor1  ");
  
printTemperature(Thermometer1);
  
Serial.print("Sensor2  ");
  
printTemperature(Thermometer2);

Здесь вы постоянно шлёте даные - это не правильно, правильно отправлять запрос и получать ответ.
И где признак конца строки?
Если не сложно можно пример скетча на основе того что я выложил как принять данные и отправить единичные значения с датчиков? как я понимаю сигнал на ардуину я отправлю с браузера к примеру или с кнопки или с урла, тут я разберусь, а вот со скетчем пока туговато у меня, как там вывести не поток данных с датчика а только единичный его опрос?
Цитата:
Сообщение от mebitek Посмотреть сообщение
PHP код:
$serial = new phpSerial;
$serial->deviceSet("/dev/ttyUSB0");
$serial->confBaudRate(57600);
$serial->deviceOpen();
sleep(1);
$read $serial->readPort();
echo 
$read;
$serial->deviceClose(); 
И вапще это всё не правильно. Делать нужно так:

PHP код:
 <?php
$filename 
"/dev/ttyUSB0";      //порт
$fp fopen($filename"r+");  //открыть порт

if ($fp//если порт открыт
   
{
       
отправляем что-то в портна что ардуина нам ответит
       и получаем ответ
построчно или посимвольно или как угодно
   


else echo 
"Не удалось открыть порт" ;
fclose($fp); // порт закрыть    
?>
И порт сконфигурировать прежде.
Что этот код что с классом смысл все тот же первая строка идет пустая, а как кстати прочитать данные по строчно в частности только 2 и 3 строку?
Дак порт вроде бы конфигурируется модулем "Драйвер USB Serial"

Последний раз редактировалось avgaz; 06.10.2014 в 11:31.
avgaz вне форума   Ответить с цитированием
 


Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход


Текущее время: 22:46. Часовой пояс GMT +3.


Powered by vBulletin® Version 3.8.5
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot
Яндекс.Метрика