Estoy trabajando en un equipo móvil con linux y manejado con lenguaje PERL, en el cual he conectado una pequeña impresora. A esta le envío algunos comandos de impresión los cuales me reconoce unos y otros simplemente no. Obviamente hay un tema de que mi experiencia en esto es de apenas 2 días y es muy problable que algo esté haciendo mal y no me halla dado cuenta. Es por eso que pongo aquí el codigo que estoy usando para que me ayuden a saber que es lo que estoy haciendo mal y si me pueden ayudar a imprimir el pdf417.
el codigo es el siguiente:
NOTA: En perl el signo # significa que lo siguiente es un comentario (excepto en la primera linea)
______________________________________________
Código PHP:
#!/usr/bin/perl
use Device::SerialPort;
use strict;
my $serial = Device::SerialPort->new("/dev/ttyUSB0");
$serial->baudrate(9600);
$serial->databits(8);
$serial->stopbits(1);
$serial->parity('none');
$serial->handshake('none');
$serial->read_const_time(100);
my $recv;
my $codigo;
$serial->write("\e@");
$serial->write("\x1B\x0C");
$serial->write("\x1D\x57\x1E\x1E");
$serial->write("\n\n\n");
$serial->write("\n *****");
$serial->write("\x1B\x61\x0");#centrado x2=derecho,x1=centrado x0=izquierda
$serial->write("\x1D\x21\x3");#aumenta el tamaño dela letra
$serial->write("\x09"); #mueve hacia el siguiente tab
$serial->write("\x1B\x2D\x2 COBRADO");#underline
$serial->write("\x09"); #mueve hacia el siguiente tab
$serial->write("\x1B\x2D\x0"); #fin de underline
$serial->write("\x1D\x21\x0"); #fin del tamaño de letra aumentada
#$serial->write("\x1B\x32");#un espacio
$serial->write(" ***** \n");
#pdf-417
$serial->write("\x1C\x45\x1\x2C\x1\x13");
$serial->write("9992245239083");
$serial->write("\x00");
$serial->write("\n");
#pdf-417
#$serial->write("\x1C\x48\x02");
#$serial->write("999224832");
#$serial->write("\x00");
$serial->write("\n");
#codigo de barra
$serial->write("\x1D\x6B\x02");
$serial->write("9992245239083");
$serial->write("\x00");
#intento hacer un recuadro
$serial->write("\x1D\x28\x4D\x20\x50\x40\x50");
print "OK\n";
$serial->write("\n\n\n\n\n\n");
getc;
$estado = 0;
exit();
Si me pudieran explicar como realizar un recuadro (un frame) se los agradecería también.
Espero su ayuda chicos, muchas gracias.