M@tes
18.05.2008, 22:21
Hab das Perl endlich mal soweit bekommen, das ich keine @INC Fehler mehr bekomme.
Das Win32::SerialPort Modul läuft also! =D> Nur bekomm ich keine Daten raus?
Hab da Baud, Parität, Stopbits,... eingestellt aber nünt. Habt ihr da ev ein Codefetzen? Glaub eben, meines ist irgendwie nicht ganz i.O.
Hier mal der Testcode:
#!/usr/bin/perl -w
use strict;
use Win32::SerialPort;
my $serial = Win32::SerialPort->new('COM4' || die "Fehler!");
my $baud = $serial->baudrate;
my $parity = $serial->parity;
my $data = $serial->databits;
my $stop = $serial->stopbits;
my $hshake = $serial->handshake;
print "B = $baud, D = $data, S = $stop, P = $parity, H = $hshake\n";
$serial->baudrate(9600);
$serial->parity('none');
$serial->databits(8);
$serial->stopbits(1);
$serial->handshake("none");
#$serial->read_interval(100); # Zeit Zwischen einzelnen Zeichen, bei Überschreitung Abbruch
#$serial->read_const_time(10000); # Maximale Gesamtzeit zum Einlesen von Zeichen, dann Abbruch
# Send request
#$serial->write("n");
# Wait one second
#select(undef, undef, undef, 1);
# Read response
my($count, $datas) = $serial->read(100); # Entweder 100 Zeichen einlesen, oder Zeitaus
print "-> $datas";
undef $serial;
Das Win32::SerialPort Modul läuft also! =D> Nur bekomm ich keine Daten raus?
Hab da Baud, Parität, Stopbits,... eingestellt aber nünt. Habt ihr da ev ein Codefetzen? Glaub eben, meines ist irgendwie nicht ganz i.O.
Hier mal der Testcode:
#!/usr/bin/perl -w
use strict;
use Win32::SerialPort;
my $serial = Win32::SerialPort->new('COM4' || die "Fehler!");
my $baud = $serial->baudrate;
my $parity = $serial->parity;
my $data = $serial->databits;
my $stop = $serial->stopbits;
my $hshake = $serial->handshake;
print "B = $baud, D = $data, S = $stop, P = $parity, H = $hshake\n";
$serial->baudrate(9600);
$serial->parity('none');
$serial->databits(8);
$serial->stopbits(1);
$serial->handshake("none");
#$serial->read_interval(100); # Zeit Zwischen einzelnen Zeichen, bei Überschreitung Abbruch
#$serial->read_const_time(10000); # Maximale Gesamtzeit zum Einlesen von Zeichen, dann Abbruch
# Send request
#$serial->write("n");
# Wait one second
#select(undef, undef, undef, 1);
# Read response
my($count, $datas) = $serial->read(100); # Entweder 100 Zeichen einlesen, oder Zeitaus
print "-> $datas";
undef $serial;