Здравствуйте! Сразу скажу - образование биологическое :)) А занимаюсь сейчас тем, что пытаюсь написать программу на Perl для контроля электронных весов Sartorius. Есть такая нужда. Весы имеют интерфейс к RS-232, однако пришлось немного перепаять пины под DB25S, как было указано в мануале весов (если понадобится, я всю распайку представлю). по мануалу, весы всю информацию скидывают в ком-порт. И это действительно так. Скидывают,когда на них кнопочку "принт" нажмешь и я их скриптом забираю и пишу в файл. Но также по мануалу, весы должны управляться командами, посылаемыми с компьютера. Команды в ASCII и имеют следующий формат: Esc ! CR LF, где ! - есть буква команды какого-либо конкретного действия. Таким образом для вывода показаний весов в ком-порт, им нужно выслать команду Esc P CR LF. И вот тут проблема. Эту команду я вывожу в порт и вот так: print DEV '\033\120\015\012'; и так my $coma = printf ("%c%c\r\n",27,80); и так my $coma = pack "c*",$esc,$char,$CR,$LF; и по всякому, но весы не слышат команды. А когда я просто написал такой скрипт: #!/usr/bin/perl # co.pl print '\033\120\015\012'; а потом сделал : perl co.pl >> goggy , то потом в cat goggy получил только перевод строки, но без символа P. когда же \033 (Esc) убираешь, то символ выдается. Отсюда, хотелось бы знать, а что вообще означает Esc в начале строки?
Возможно вопрос не совсем адекватный, но простите новичка в таких вопросах. Если подскажете, что почитать, буду очень признателен. zlinuxan zlinuxan@zmail.ru