com_03.pl to HTML.

index -|- end

Generated: Tue Feb 2 17:54:28 2010 from com_03.pl 2005/07/08 1.3 KB.

#!c:/perl/bin/perl.exe
# Do Events from Serial Input
#
# Matt Mankins 
#
# http://www.loremipsumbooks.com/
use strict;
use Win32::SerialPort;
use Time::HiRes qw(sleep);
# unbuffered output
$| = 1;
my %action;
# Set this to whatever port you receive stuff on    
my $port = "COM3";
print "Starting serial port\n";
die unless -e "printer_$port.cfg";
my $port_obj = start Win32::SerialPort ("printer_$port.cfg") || die "Can't open pager_$port.cfg: $^E\n"; 
print "Starting main loop\n";
while (1)
{
    my $gotit = "";
    until ($gotit = $port_obj->input)
    {
   #print "sleepy\n";
   sleep .2;
    }
    &load_actions;
    print "$gotit\n";
    if ($action{$gotit})
    {
   print "doing ".$action{$gotit}."\n";
   # Do the action
        `$action{$gotit}`;
    }
    sleep 1;
}
#  $port_obj->write($to_print);
$port_obj->close();
sub load_actions
{
   # This populates the global %action with a program that should be run when we receive certain input
   open (WOTD, 't:\wotd');
   my $wotd = ;
   close WOTD;
   ACTIONS:
   {
        $action{"A"} = 'c:\perl\bin\perl.exe c:\utils\speak '.$wotd;
        $action{"C"} = 'c:\perl\bin\perl.exe c:\Inetpub\wwwroot\utils\n.pl';
        $action{"DC"} = 'c:\utils\next.pl';
   }
}
1;

index -|- top

checked by tidy  Valid HTML 4.01 Transitional