help on win32::serialport

help on win32::serialport

am 04.06.2007 23:12:25 von jis

Can anybody help with examples on reading a serial port.
Even after reading through the win32::serialport CPAN pod my attempt
to write a working code is gone futile.
I am trying to read a barcode with a scanner.

Please do help

regards,
jis

Re: help on win32::serialport

am 05.06.2007 12:10:24 von Sisyphus

"jis" wrote in message
news:1180991545.660022.273750@p77g2000hsh.googlegroups.com.. .
> Can anybody help with examples on reading a serial port.
> Even after reading through the win32::serialport CPAN pod my attempt
> to write a working code is gone futile.
> I am trying to read a barcode with a scanner.

I think your best chance of success would be to post to "Seekers of Perl
Wisdom" at perlmonks. Another option would be the 'perl-win32-users' mailing
list hosted by ActiveState, though it's really low volume these days. That's
not to say that there's no-one here who can help, but you've given us very
little to work with.

Wherever you post, it's better to provide a copy'n'paste of some code that
you've tried (along with a copy'n'paste of the error messages it generates).
That way, even if there's no-one around who can actually answer the
question, there might be someone lurking about who can see a fault in your
code and provide a correction.

Google might also be able to help out. I tried
http://www.google.com.au/search?hl=en&q=Win32%3A%3ASerialPor t+barcode&btnG=Google+Search&meta=

I couldn't see anything there that stood out as a likely solution, but I
didn't actually follow any of the links.

Cheers,
Rob

Re: help on win32::serialport

am 05.06.2007 17:29:19 von jis

On Jun 5, 5:10 am, "Sisyphus" wrote:
> "jis" wrote in message
>
> news:1180991545.660022.273750@p77g2000hsh.googlegroups.com.. .
>
> > Can anybody help with examples on reading a serial port.
> > Even after reading through the win32::serialport CPAN pod my attempt
> > to write a working code is gone futile.
> > I am trying to read a barcode with a scanner.
>
> I think your best chance of success would be to post to "Seekers of Perl
> Wisdom" at perlmonks. Another option would be the 'perl-win32-users' mailing
> list hosted by ActiveState, though it's really low volume these days. That's
> not to say that there's no-one here who can help, but you've given us very
> little to work with.
>
> Wherever you post, it's better to provide a copy'n'paste of some code that
> you've tried (along with a copy'n'paste of the error messages it generates).
> That way, even if there's no-one around who can actually answer the
> question, there might be someone lurking about who can see a fault in your
> code and provide a correction.
>
> Google might also be able to help out. I triedhttp://www.google.com.au/search?hl=en&q=Win32%3A%3ASeri alPort+barcode...
>
> I couldn't see anything there that stood out as a likely solution, but I
> didn't actually follow any of the links.
>
> Cheers,
> Rob

Atast i could figure out how it works.if anyobdy else searching for
the same here is the code.
This reads the barcode with the help of scanner.This is a basic
code.Ofcourse need to be modified for realtime use.

use strict;
use Win32::SerialPort;
sub openPort($);
sub closePort($);

my $bar;
my $DEVICE = "COM1";
my $data=0;
my $serial =openPort($DEVICE);
while(!($data=~/\r/))
{
$data=$serial->input;
$bar=$bar.$data;
}
print $bar;
closePort($serial);

sub openPort($)
{
my ($device) = @_;


my $serial = Win32::SerialPort->new ($device, 1);
die "Can't open serial port $serial: $^E\n" unless ($serial);

$serial->user_msg(1);
$serial->databits(8);
$serial->baudrate(9600);
$serial->parity("none");
$serial->stopbits(1);
return $serial;
}

sub closePort($)
{
my ($serial) = @_;
$serial->close();
}