1 package RFID::Biblio::Reader::Serial;
6 use Device::SerialPort qw(:STAT);
7 use Data::Dump qw(dump);
11 RFID::Biblio::Reader::Serial - helper to provide serial port
19 Open serial port (if needed) and init reader
30 $self->init && return $self;
36 my $serial_obj = $self->port;
43 return $self->{port} if defined $self->{port};
45 my $settings = $self->serial_settings;
46 my $device = $settings->{device} ||= $ENV{RFID_DEVICE};
47 warn "# settings ",dump $settings;
50 warn "# no device, serial port not opened\n";
54 $self->{port} = Device::SerialPort->new( $settings->{device} )
55 || die "can't open serial port: $!\n";
57 $self->{port}->$_( $settings->{$_} )
58 foreach ( qw/handshake baudrate databits parity stopbits/ );