Uh, ok, wait, let me catch a working version one of the versions I coded... dunno if it works how I want it to work, but produces the error...
-------------------------- #!/usr/bin/perl use strict; use warnings; use IO::Handle; ############### my $port; my $loop; my $start; my $reset; my $setdigouts; my $hexsetdigouts; my $hexretversion; my $retversion; my $hexvers1; my $digins; my $hexdigins; my $diginsretcom; ### dbasevals my $user = 'jkirchh'; my $pword = '[EMAIL PROTECTED]:-)'; my $dbase = 'test'; my $table = 'foo'; my $driver = 'mysql'; my $host = 'localhost'; my $dbaseclose; my $dbasefinishcom; my $dbh; ### ############### $port = '/dev/cua0'; $start = chr '72'; $diginsretcom = chr '211'; $hexvers1 = chr '1'; $reset = chr '0'; ############### &open; &version; &readdigins; &resetdigouts; &close; ################## subs sub opendb { my $dbh = DBI->connect("DBI:$driver:database=$dbase; host=$host", $user, $pword, {'RaiseError' => 1,AutoCommit => 0}); print "\nopened DBI:$dbase on host $host with user $user\n"; } sub closedb { print "\nATTENTION!\n!C!ommit Changes or !R!ollback Database?\n"; $dbaseclose = <stdin>; chop $dbaseclose; if ($dbasefinishcom == 'C') { $dbh->commit; $dbh->disconnect; } elsif ( $dbasefinishcom == 'R') { $dbh->rollback; $dbh->disconnect; } } sub digins2dbi { # mysqlstatements hier rein... } sub version { print compu $hexvers1; $hexretversion = getc compu; $retversion = ord("$hexretversion"); print "\nVersion is: $retversion --> $hexretversion"; if ($retversion == '201') {print "\nCompulab ok\n"}; } sub readdigins { print compu $diginsretcom; sysread compu, $digins, 1; $hexdigins = ord("$digins"); print "\nDigital Inputs: $hexdigins --> $digins\n"; } sub open { open("compu","+<$port") || die "opening $port failed: $!"; system("stty 19200 -echo cstopb cbreak -parenb cs8 parodd < $port"); compu->autoflush(1); print "\nopened interface on port --> $port\n"; } sub setdigouts { $hexsetdigouts = chr ("$setdigouts"); print compu "$start"; print compu "$hexsetdigouts"; print "\nsent --> $setdigouts --> $hexsetdigouts\n"; } sub close { close 'compu'; print "\nclosed interface on port --> $port\n\n"; } sub resetdigouts { print compu "$start"; print compu "$reset"; print "\nresetted --> digoutputs\n"; } --------------------------- > Let's see your code! > > -- Brett -- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]