[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: php - serial port
Dmitry K
доброго всем дня сталкнулся с такой задачей: нужна реализация в ввиде php кода соендинения с ком портом и отправки в него символа "1" вебсервер lighttpd работающий на вайфай роутере также на роутере установлен сам php и mySQL сервер вобщем поднят полноценный веб сервер вчем неоходимость: к роутеру через усб подключен микроконтроллер(arduino) на роутере установленны драйвера которые дают контроллеру виртуальный ком порт dev/ttyUSB0 так вот задача организовать никий скрипт или даже полноценную CMS для обмена данными с контроллером что посоветуете уважаемые гуру



Спустя 46 минут, 12 секунд (10.02.2012 - 13:18) caballero написал(а):
обратится к СОМ порту как к файлу и записать туды 1

Спустя 31 минута, 16 секунд (10.02.2012 - 13:49) vital написал(а):
Цитата (caballero @ 10.02.2012 - 12:18)
обратится к СОМ порту как к файлу и записать туды 1

И что, пустит? Проверить что ли.

Спустя 2 минуты, 2 секунды (10.02.2012 - 13:51) Dmitry K написал(а):
если вас не затруднит продемонстрируте ввиде кода пожалуйста

Спустя 15 минут, 50 секунд (10.02.2012 - 14:07) caballero написал(а):
fopen("COM1")
и т.д.

Спустя 50 минут, 13 секунд (10.02.2012 - 14:57) Dmitry K написал(а):
и еще вопрос подскажите как прочитать данные с ком порта?

Спустя 1 минута, 23 секунды (10.02.2012 - 14:59) caballero написал(а):
fopen("COM1")

Спустя 3 минуты, 40 секунд (10.02.2012 - 15:02) Dmitry K написал(а):
я конечно прошу прощения тк как понимаю что задаю вам весьма глупые вопросы но всеже если вам не сложно то по детальней или укажите где прочесть просто в голове уже каша путаюсь

Спустя 3 минуты, 1 секунда (10.02.2012 - 15:05) Dmitry K написал(а):
http://code.google.com/p/php-serial/ - и вам чтонибуть это говорит? прокоментируйте пожалуйтса

Спустя 1 час, 49 минут, 36 секунд (10.02.2012 - 16:55) caballero написал(а):
клас делает тоже самое пищет через fwrite
только он более продвинутый
это на случай если надо что то бюльше чем 1 записать
опять же там для винды и линуха
пробуй его если хочешь

Спустя 12 минут, 27 секунд (10.02.2012 - 17:07) Dmitry K написал(а):
смысл в том что отправить "1" 'это просто соеобразный hello world подскажите пожалуйста как подключить библиотеку и как отправить единичку в порт порт dev/ttyUSB0, пробовал выполнить все сам заменив com1 на dev/ttyUSB0

<?php
deviceSet("COM1");

// Then we need to open it
$serial->deviceOpen();

// To write into
$serial->sendMessage("1");

// Or to read from
$read = $serial->readPort();

// If you want to change the configuration, the device must be closed
$serial->deviceClose();

// We can change the baud rate
$serial->confBaudRate(9600);

// etc...
?>

закидываю на сервер в один каталог с классом чтение и запись к файлам выставленна в 777 в результате при выполнение в браузере test.php браузер говорит что типа такого файла нет хотя закидываю я его туда через фтп и он там есть оО в чем может быть дело?

Спустя 4 минуты, 12 секунд (10.02.2012 - 17:12) caballero написал(а):
ты ж сам дал ссылку там и пример есть
стащи это клас и подключи как обычно через include

или просто

fopen("dev/ttyUSB0")
fwrite("1")

Спустя 4 минуты, 42 секунды (10.02.2012 - 17:16) Dmitry K написал(а):
спасибо сейчас попробую

Спустя 1 час, 27 минут, 35 секунд (10.02.2012 - 18:44) Dmitry K написал(а):
неработает (

Спустя 58 минут, 14 секунд (10.02.2012 - 19:42) caballero написал(а):
Цитата
неработает (

значит не судьба.

или разбирайся с настройками порта.
проверь какая скорость выставлена количество битов и все такое
класс позволяет выставить такие параметры тоже чтобы порту соответствовало

Спустя 15 минут, 3 секунды (10.02.2012 - 19:57) Dmitry K написал(а):
fopen("dev/ttyUSB0")
fwrite("1") - прорабатывает но на контроллере не загорается лампочка , а алгоритм таков када на ком порт контроллера приходит 1 он должен зажеч лампочку када ноль потушить, так вот когда я просто из консоль пишу данные в порт все прорабатывает как нужно
echo "1" > /dev/ttyUSB0 - если вы знакомы с линуксом означает отправить еденичку в порт ttyUSB0 что говорит нам отом что связь существует и работает но вот когда пытаюсь обратиться к порту через пхп скрипт пусто п.с. роутер при загрузке автоматически запускает настройку параметров порта 9600 кбит.с ... необходимо ли выполнять вновь настройку в скрипте пхп? и существуют ли еще какието способы обратиться в порт? посоветуйте чтонибуть,

Спустя 3 минуты, 42 секунды (10.02.2012 - 20:01) caballero написал(а):
клас должен работать
посмотри по коду как он в линухе выводит.
может там что то другое например юзер от имени которого выполняетися PHP не имеет правов писать в порт

Спустя 6 минут, 59 секунд (10.02.2012 - 20:08) Dmitry K написал(а):
ладно буду пробовать хотя почемуто уверен причина не в этом так как выстави chmod 777 на исполнительный файл пхп

Спустя 4 минуты, 55 секунд (10.02.2012 - 20:13) caballero написал(а):
ну это можно проверить
в PHP есть функция system или типа того
пни из нее шеловский скрипт

если не сработает - разбирайся с правами
а сработает то можешь так и юзать - параметром в шел передал и все
и вернуть наверно можно как то

и кстати причем тут cmod на файл? Я о юзере говорил

Спустя 1 час, 12 минут, 25 секунд (10.02.2012 - 21:25) Dmitry K написал(а):
а можеш подсказать как его проверить? правильный ли юзер

Спустя 14 минут, 45 секунд (10.02.2012 - 21:40) Dmitry K написал(а):
<?php phpinfo(); ?> - тестовый скрипт выдающий информацию о состоянии пхп отрабатывает как часы, почему в моем случае загвоздка непонятно
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.