Модераторы: korob2001, ginnie
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Telnet и Perl 
:(
    Опции темы
rcdimon
Дата 27.10.2010, 16:09 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 766
Регистрация: 12.7.2004
Где: Москва

Репутация: 1
Всего: 2



Всем привет.

Есть достаточно убогий девайс на 8-и битном микроконтроллере. Тем не менее у него есть Ethernet и на нем запущен убогий Telnet сервер.

Необходимо написать программу на Perl для работы с девайсом. 

Обычные команды можно выполнять с помощью обычной программы telnet. Но у девайса реализована функция загрузки прошивки по сети. И загрузка прошивки осуществляется по телнету. 

Сначала необходимо авторизоваться. Для этого надо просто отправить строку-пароль. 
Потом надо отправить команду prog, которая переводит девайс в режим приема прошивки. Прошивка кодируется и передается символами от A до P (английские), а не в чистом бинарном виде.
После посыла девайсу команды prog он высылает пакет-подтверждение входа а режим программирования, который выглядит так "ABAAHF" и на конце еще байты 13 10


Вот такая у меня программа 

Код

use Net::Telnet ();

my $pass = '1';

$t = new Net::Telnet (-host => '192.168.0.80');
sleep(1);
@lines = $t->cmd($pass);
print @lines;
sleep(1);
@lines = $t->cmd('prog');
print @lines;


Почему-то пароль отправляется нормально, нормально приходит ответ. А при посылке prog вылетает по таймауту. Смотрю с помощью сниффера- команда в девайс ушла, девайс нормально ответил. Но вылетает по таймауту. Никак не пойму как же заставить его нормально принимать ответ от девайса.

Это сообщение отредактировал(а) rcdimon - 27.10.2010, 16:09
PM MAIL ICQ   Вверх
rcdimon
Дата 27.10.2010, 19:09 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 766
Регистрация: 12.7.2004
Где: Москва

Репутация: 1
Всего: 2



Вообще можно как ни будь сделать, чтобы по одному символу скидывалось или до нажатия энтера что было введено?

Это сообщение отредактировал(а) rcdimon - 27.10.2010, 19:09
PM MAIL ICQ   Вверх
shamber
Дата 27.10.2010, 21:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1422
Регистрация: 5.9.2006
Где: Россия

Репутация: нет
Всего: 18



Цитата(rcdimon @  27.10.2010,  19:09 Найти цитируемый пост)
чтобы по одному символу скидывалось или до нажатия энтера что было введено?

не совсем понятно, что ты хочешь. 
PM MAIL Jabber   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Perl: CGI программирование"
korob2001
sharq
  • В этом разделе обсуждаются вопросы относящиеся только к CGI программированию
  • Если ваш вопрос не относится к системному или CGI программированию, задавайте его в общем разделе
  • Если ваш вопрос относится к системному программированию, задавайте его здесь
  • Интерпретатор Perl можно скачать здесь ActiveState, O'REILLY, The source for Perl
  • Справочное руководство "Установка perl-модулей", качать здесь


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, korob2001, sharq.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Perl: разработка для Web | Следующая тема »


 




[ Время генерации скрипта: 0.0704 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.