Thread Device::SerialPort <--> Win32::SerialPort (13 answers)
Opened by foobar12345 at 2017-07-09 14:03

foobar12345
 2017-07-09 14:03
#186809 #186809
User since
2011-07-20
20 Artikel
BenutzerIn
[default_avatar]
hi @all,

ich hab folgendes kleine testscript, funktioniert unter linux 1a.

die daten werden von einem µc empfangen und sauber wieder ausgegeben ...

ist da eventuell schon etwas falsch dran ?

Code: (dl )
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
#!/usr/bin/env perl
use strict;
use warnings;
use Device::SerialPort;

$|=1;

my $serDev = $ARGV[0] || '/dev/ttyUSB0';
my $port = Device::SerialPort->new($serDev);
my $serSpeed = $ARGV[1] || 115200;
my $serDB = $ARGV[2] || 8;
my $serPA = $ARGV[3] || 'none';
my $serSB = $ARGV[4] || 1;

unless ($port) {
print "Serial port: $serDev not found, use\n\n";
print " $0 <device> <speed> <baud> <parity> <stopbits>\n\n";
print " $0 /dev/ttyACM0 115200 8 none 1\n\n";
exit;
}
$port->databits($serDB);
$port->baudrate($serSpeed);
$port->parity($serPA);
$port->stopbits($serSB);
$port->read_char_time(1); # don't wait for each character
$port->read_const_time(500); # 0.5 sec per unfulfilled "read"

$port->write("PAGE\n");
$port->lookclear;


weil wenn ich das unter windows versuche kommen überhaupt keine daten bei
meinem µc an ;(

Code: (dl )
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
#!/usr/bin/env perl
use strict;
use warnings;
# use Device::SerialPort;
use Win32::SerialPort;

$|=1;

# my $serDev = $ARGV[0] || '/dev/ttyUSB0';
my $serDev = $ARGV[0] || 'COM3';
# my $port = Device::SerialPort->new($serDev);
my $port = new Win32::SerialPort($serDev);
my $serSpeed = $ARGV[1] || 115200;
my $serDB = $ARGV[2] || 8;
my $serPA = $ARGV[3] || 'none';
my $serSB = $ARGV[4] || 1;

unless ($port) {
print "Serial port: $serDev not found, use\n\n";
print " $0 <device> <speed> <baud> <parity> <stopbits>\n\n";
print " $0 /dev/ttyACM0 115200 8 none 1\n\n";
exit;
}
$port->databits($serDB);
$port->baudrate($serSpeed);
$port->parity($serPA);
$port->stopbits($serSB);
$port->read_char_time(1); # don't wait for each character
$port->read_const_time(500); # 0.5 sec per unfulfilled "read"

$port->write("PAGE\n");
$port->lookclear;


hat eventuell jemand einen tip für mich ... ?

View full thread Device::SerialPort <--> Win32::SerialPort