Foros del Web

Foros del Web (http://www.forosdelweb.com/)
-   Programación General (http://www.forosdelweb.com/f14/)
-   -   error perl com1 ayuda (http://www.forosdelweb.com/f14/error-perl-com1-ayuda-582113/)

Alphabravo 01/05/2008 20:35

error perl com1 ayuda
 
hola tengo este programa en perl, tengo conectado el movil por usb y me detecta como modem y me dice que esta en COM1.

[CODE#!C:\perl\bin\perl.exe -w


use Win32::SerialPort;

$com="COM5"; # no colon here!
$PortObj=Win32::SerialPort->new($com);
$PortObj->baudrate(9600);
$PortObj->databits(8);
$PortObj->parity("none");
$PortObj->stopbits(1);
$PortObj->handshake("none");
$PortObj->write_settings;


$Message="probando";


$PortObj->write("AT+CMGF=1 & Chr$(13)");
$PortObj->write("AT+CSCA= & Chr$(34) & 12345 & Chr$(34) & Chr$(13)");
$PortObj->write("AT+CMGS= & Chr$(34) & +5410 & Chr$(34) & Chr$(13) ");
$PortObj->write("$Message & Chr$(26) & Chr$(13)");


sleep 1; #delay for reply to be sent

$result=$PortObj->input;
print "$result";

$PortObj->close;
undef $PortObj;

exit(1);[/CODE]

pero cuando lo corro me manda este error

doesn't claim to be a serial port at progra.pl line7
can't call method "baudrate" on an undefined value at progra.pl line8

jferrero 02/05/2008 01:46

Re: error perl com1 ayuda
 
Porque en el código tienes puesto COM5, no COM1, en la línea 6, creo.

A ver... si tienes un teléfono móvil conectado por USB que te lo detecta como modem y/o puerto serie, entonces es que el software que acompaña al cable de conexión hace ver esa conexión como un puerto serie virtual. Lo que hay que hacer es saber cuál es.

En Windows, en el Panel de control, en el apartado Hardware o Sistema, llegas a la parte de dispositivos. Allí deberían aparecer todos. Pinchando en cada uno, debería dar información del controlador que lo está soportando. Y de ahí deducir cuál es el que ha creado el software del cable.

Otra opción es usar el propio software del cable. De los que conozco, todos informan del dispositivo que han creado.

Prueba a cambiar la línea 7 por

$PortObj = Win32::SerialPort->new($com) or die "No puedo abrir $com: $^E\n";

a ver si te da más información.

Alphabravo 02/05/2008 21:45

Re: error perl com1 ayuda
 
hola ya cheque y me sale como COM2 y ya le puse en el programa en perl que es com2 y lo que me dices

$PortObj = Win32::SerialPort->new($com) or die "No puedo abrir $com: $^E\n";


y me manda el mismo error y dice no puedo abrir com2

como le puedo hacer que sera ? gracias

Alphabravo 20/05/2008 17:58

Respuesta: error perl com1 ayuda
 
por k me manda ese error ayuda? como puedo hacerle conecte el movil por usb y la pc me lo detecta como com 1 y lo configuro y todo y cuando lo corro me manda ese error por que ? ayudap


La zona horaria es GMT -6. Ahora son las 19:40.

Desarrollado por vBulletin® Versión 3.8.7
Derechos de Autor ©2000 - 2026, Jelsoft Enterprises Ltd.