Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Скриптовые языки программирования > PHP
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 20.12.2013, 16:13   #11
Mr_freeman
Форумчанин
 
Аватар для Mr_freeman
 
Регистрация: 17.01.2010
Сообщений: 277
По умолчанию

Цитата:
Сообщение от raxp Посмотреть сообщение
Вы читаете, что вам пишут? Какой в .... echo и fopen, вам приведен пример из официальной документации для работы с последовательным портом через EXEC(). Повторяю вопрос, чем не устроило?
Я имел виду что проверял работу с командной строкой, чтобы потом это в exec() использовать. И у меня возникла проблема с доступом, которую я не могу решить.
Mr_freeman вне форума Ответить с цитированием
Старый 21.12.2013, 15:49   #12
raxp
Старожил
 
Регистрация: 29.09.2009
Сообщений: 9,713
По умолчанию

...потому-что вы не читаете, что вам пишут:
Цитата:
Кстати когда пытаюсь командной строкой через echo на порт послать данные
Через echo с физическими портами не работают. Иного варианта от вас в теме нет. Не ферштеен?
Разработки и научно-технические публикации :: Видеоблог :: Твиттер
Radar systems engineer & Software developer of industrial automation
raxp вне форума Ответить с цитированием
Старый 23.12.2013, 11:51   #13
Mr_freeman
Форумчанин
 
Аватар для Mr_freeman
 
Регистрация: 17.01.2010
Сообщений: 277
По умолчанию

Цитата:
Сообщение от raxp Посмотреть сообщение
Под Windows через mode:
Код:
exec("mode COM1 BAUD=9600 PARITY=N data=8 stop=1 xon=off");
 
    $fp = fopen ("COM1", "w+");
    if (!$fp) {
       echo "Not open";
    } else {
        fwrite($fp, чего-нить передаем);
    }
    fclose($fp);
Ок, я так и сделал, но у меня все та же ошибка с доступом как в самом первом сообщении.
Mr_freeman вне форума Ответить с цитированием
Старый 23.12.2013, 12:59   #14
raxp
Старожил
 
Регистрация: 29.09.2009
Сообщений: 9,713
По умолчанию

C этим денвером http://www.denwer.ru/dis/?url=Base/D...5.1_xdebug.exe у меня у все в ажуре. Сам-то COM порт доступен?

=======================
Делаете файлик send.php:
Код:
<?php
if (isset($_REQUEST['send'])) {
$fp = fopen("com1", "w+");
fwrite($fp, chr(110));
fclose($fp);     
}
if (isset($_REQUEST['sendd'])) {
$fp = fopen("com1", "w+");
fwrite($fp, chr(109));
fclose($fp);     
} 
if (isset($_REQUEST['read'])) {
$fp = fopen("com1", "w+");
if(fread($fp,1))
{
 $buffer = fread($fp,1);
 print $buffer;
}
fclose($fp);     
}        
?>
Создайте следующую страничку:
Код:
<html><head><title></title></head> 

<body> 
<h1>Передача-прием</h1>

<form method="post" action="send.php">  
<input type="submit" value="1" name="send">  
</form> 

<form action="send.php" method="post">
<input type="submit" value="2" name="read">  
</form>

</body></html>
оба файлика в директорию www.

p.s.: если с этим и/или стандартным виндозным терминалом вы не можете достучаться до открытия порта, то настраивайте привилегии, права для денвера в семерке. Запуск денвера обязателен из под админа. Еще UAC может мешать.
Разработки и научно-технические публикации :: Видеоблог :: Твиттер
Radar systems engineer & Software developer of industrial automation
raxp вне форума Ответить с цитированием
Старый 23.12.2013, 13:31   #15
Mr_freeman
Форумчанин
 
Аватар для Mr_freeman
 
Регистрация: 17.01.2010
Сообщений: 277
По умолчанию

Цитата:
Сообщение от raxp Посмотреть сообщение
p.s.: если с этим и/или стандартным виндозным терминалом вы не можете достучаться до открытия порта, то настраивайте привилегии, права для денвера в семерке. Запуск денвера обязателен из под админа. Еще UAC может мешать.
Порт точно доступен, иначе была бы другая ошибка. Пробовал денвер запустить от имени Администратора - не помогло. Есть ли смысл пробовать под самой учеткой Администратора? Что с UAC может быть?
Mr_freeman вне форума Ответить с цитированием
Старый 23.12.2013, 13:50   #16
Mr_freeman
Форумчанин
 
Аватар для Mr_freeman
 
Регистрация: 17.01.2010
Сообщений: 277
По умолчанию

Цитата:
Сообщение от raxp Посмотреть сообщение
C этим денвером http://www.denwer.ru/dis/?url=Base/D...5.1_xdebug.exe у меня у все в ажуре.
У меня такой же денвер стоит.

Цитата:
Сообщение от raxp Посмотреть сообщение
Код:
<?php
if (isset($_REQUEST['read'])) {
$fp = fopen("com1", "w+");
if(fread($fp,1))
{
 $buffer = fread($fp,1);
 print $buffer;
}
fclose($fp);     
}        
?>
Если не ошибаюсь, то w+ для чтения не подойдет?
Mr_freeman вне форума Ответить с цитированием
Старый 23.12.2013, 14:41   #17
raxp
Старожил
 
Регистрация: 29.09.2009
Сообщений: 9,713
По умолчанию

Цитата:
Есть ли смысл пробовать под самой учеткой Администратора?
что значит, есть ли смысл? В этом и есть смысл.

Цитата:
Порт точно доступен, иначе была бы другая ошибка
"failed to open stream" говорит о том, что не может получить доступ к порту в данном контексте, читаем справку:
Цитата:
fopen() закрепляет именованный ресурс, указанный в аргументе filename, за потоком.
Ферштеен? И уж проверьте другими утилитами, который раз повторяю.

Цитата:
Если не ошибаюсь, то w+ для чтения не подойдет?
всегда можно r или w успеть поставить http://cct.me.ntut.edu.tw/ccteducati....fopen.php.htm, вот только до этого у вас еще даже не доходит, до собственно чтения или записи.

Цитата:
w+
Open for reading and writing; place the file pointer at the beginning of the file and truncate the file to zero length. If the file does not exist, attempt to create it.
Разработки и научно-технические публикации :: Видеоблог :: Твиттер
Radar systems engineer & Software developer of industrial automation

Последний раз редактировалось raxp; 23.12.2013 в 14:45.
raxp вне форума Ответить с цитированием
Старый 23.12.2013, 20:15   #18
Mr_freeman
Форумчанин
 
Аватар для Mr_freeman
 
Регистрация: 17.01.2010
Сообщений: 277
По умолчанию

Цитата:
Сообщение от raxp Посмотреть сообщение
что значит, есть ли смысл? В этом и есть смысл.

"failed to open stream" говорит о том, что не может получить доступ к порту в данном контексте, читаем справку:

Ферштеен? И уж проверьте другими утилитами, который раз повторяю.

всегда можно r или w успеть поставить http://cct.me.ntut.edu.tw/ccteducati....fopen.php.htm, вот только до этого у вас еще даже не доходит, до собственно чтения или записи.
Прошу прощения, в первом сообщении я случайно написал не ту ошибку.
Ошибка которая там написана как раз возникает, когда недоступен порт. А когда он доступен:

Warning: fopen(COM1) [function.fopen]: failed to open stream: Permission denied in Z:\home\localhost\www\com\index.php on line 8

Извините, что ввел всех в заблуждение.
Mr_freeman вне форума Ответить с цитированием
Старый 25.12.2013, 01:28   #19
Mr_freeman
Форумчанин
 
Аватар для Mr_freeman
 
Регистрация: 17.01.2010
Сообщений: 277
По умолчанию

Окей, кажется я добился запуска скрипта без ошибок. Теперь не знаю как мне протестировать передачу и прием данных. Скачал кучу программ для виртуальных портов,но они друг с другом ругаются и я ничего не могу сделать(
Mr_freeman вне форума Ответить с цитированием
Старый 25.12.2013, 03:10   #20
raxp
Старожил
 
Регистрация: 29.09.2009
Сообщений: 9,713
По умолчанию

Поменьше телепатии: как добились, что конкретно было?

Кучу программ не надо, хватит и гипертерминала системного. Скачиваете виртуальный нуль-модем com0com и через него работаете гипертерминалом и скриптом, если нет железных портов или виртуальных портов over USB. Все.

Цитата:
Прошу прощения, в первом сообщении я случайно написал не ту ошибку.
Ошибка которая там написана как раз возникает, когда недоступен порт. А когда он доступен:

Warning: fopen(COM1) [function.fopen]: failed to open stream: Permission denied in Z:\home\localhost\www\com\index.php on line 8
повторяю еще раз, нет доступа к потоку - значит нет доступа к порту. Это не значит, что он физически недоступен, доступ может блокироваться на уровне самого апача или настройками ОС.
Разработки и научно-технические публикации :: Видеоблог :: Твиттер
Radar systems engineer & Software developer of industrial automation
raxp вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Работа с COM портами Spicus Общие вопросы C/C++ 0 29.01.2011 23:09
Работа с портами DedBoroda Общие вопросы Delphi 0 14.10.2010 18:24
Работа с сокетами(портами) groooovefree Софт 1 02.07.2010 09:53
Работа с RDP и портами. Alex77777 Фриланс 2 07.06.2010 12:06
Работа с USB или COM портами АлександрСергеевич Общие вопросы Delphi 2 26.12.2008 04:48