in reply to Best way to read/write to a serial port
#!/usr/bin/perl -l use strict; use warnings; use Device::SerialPort qw( :PARAM :STAT 0.07 ); $| = 1; my $port = '/dev/tty24'; my $conf = '~/.conf'; my $ob = Device::SerialPort->new($port, 1) || die "Can't open $port: $!"; my $STALL_DEFAULT = 10; my $timeout = $STALL_DEFAULT; my $arb = $ob->can_arbitrary_baud; my $data = $ob->databits(8); my $baud = $ob->baudrate(115200); my $parity = $ob->parity("even"); my $hshake = $ob->handshake("rts"); my $stop = $ob->can_stopbits; my $rs = $ob->is_rs232; my $total = $ob->can_total_timeout; $ob->stopbits(1); $ob->buffers( 4096, 4096 ); $ob->can_baud; $ob->can_databits; $ob->can_dtrdsr; $ob->can_handshake; $ob->can_parity_check; $ob->can_parity_config; $ob->can_parity_enable; $ob->can_rtscts; $ob->can_xonxoff; $ob->can_xon_char; $ob->can_spec_char; $ob->can_interval_timeout; $ob->can_ioctl; $ob->can_status; $ob->can_write_done; $ob->can_modemlines; $ob->can_wait_modemlines; $ob->can_intr_count; $ob->write_settings; print "A = $arb\n", "B = $baud\n", "D = $data\n", "S = $stop\n", "P = $parity\n", "H = $hshake\n", "R = $rs\n", "T = $total"; $ob->write_drain; $ob->close; undef $ob;
|
|---|