#!/usr/bin/perl -w
#
# This is an example file showing how to send data to the serial port.
#
# It does not include error checking.
#

use strict;

#use Device::SerialPort; # on UNIX
use Win32::SerialPort; # on Windows

sub openPort($);
sub closePort($);

#my $DEVICE = "/dev/ttyS1"; # on UNIX
my $DEVICE = "COM1";  # on Windows

my $serial = openPort($DEVICE); 
$serial->write("\xFE\x58");           # Clear Screen: 254 88
$serial->write("\xFE\x47\x05\x02");   # Goto(5,2):  254 71 5 2
$serial->write("Hello World");
closePort($serial);



#**************************************************************************
#*  Serial functions
#**************************************************************************

#* Open raw serial port using:
#*    8 data bits
#*    1 stop bit
#*    19200 bps
#*    no parity
sub openPort($)
{
	my ($device) = @_;

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

	$serial->user_msg(1);
	$serial->databits(8);
	$serial->baudrate(19200);
	$serial->parity("none");
	$serial->stopbits(1);
	$serial->handshake("rts");

    return $serial;
}

sub closePort($)
{
	my ($serial) = @_;

	$serial->close();
}
