5 Einträge, 1 Seite |
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
#!/usr/bin/perl
use strict;
use vars qw($ob $port1 $return);
use Win32::SerialPort;
$port1="COM1";
$ob = Win32::SerialPort->new($port1) || die "Can't open $port1: $!";
$ob->baudrate (9600) || die "fail setting baudrate";
$ob->parity ("even") || die "fail setting parity";
$ob->databits (7) || die "fail setting databits";
$ob->stopbits (1) || die "fail setting stopbits";
$ob->handshake ("none") || die "fail setting handshake";
$ob->write_settings || die "no settings";
system "cls";
# Read Port Configuration
my $baud=$ob->baudrate;
my $parity=$ob->parity;
my $data=$ob->databits;
my $stop=$ob->stopbits;
my $hshake=$ob->handshake;
print "### Projekt Plasma ###\n\n";
print "Schnittstelle: $port1\nBaudrate: $baud\nParity: $parity\nDatabits: $data\nStopbits: $stop\nHandschake: $hshake\n\n";
my $tx="L00 -k .033 -0 -8.516,0 -1 .0025%\r";
$ob->write("$tx") or die ("Could not write to PC: $!");
sleep 1;
$return=$ob->input;
undef $ob;
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
while($complete eq "")
{
$rx=$ob->input;
$received=$received.$rx;
$receivedlength=$receivedlength+length($rx);
if($i == 0)
{
print "Warte auf Daten...\n\n";
}
if($i == 1 and $receivedlength > 0)
{
print "Empfange Daten...\n\n";
}
if($rx =~ "\/")
{
$checksum=$ob->status;
$complete=1;
$msg="ok";
}
if($rx =~ "not found")
{
$complete=1;
$msg="Datei wurde nicht gefunden.\nPruefen Sie Ihre Eingaben.";
}
if($i > $timeout and $receivedlength == 0)
{
$complete=1;
$msg="Timeout !\nDer PC antwortet nicht. Pruefen Sie die Verbindung.";
}
sleep 1;
$i++;
}
5 Einträge, 1 Seite |