Guten Tag,
ich habe ein Problem mit meiner Perl Ansteuerung für mein Arduino unter
Windows 7 64-Bit. Ich hoffe es findet sich ein Perl-Kenner.
Arduino Code:
Bei Empfangen einer "1" oder "0" soll sich der H/L Zustand des PIN11
ändern. Über den Serielen Monitor klappt alles.
1 | #define ledPin 11
|
2 | int incomingByte;
|
3 |
|
4 | void setup() {
|
5 |
|
6 | Serial.begin(9600);
|
7 | pinMode(ledPin, OUTPUT);
|
8 | }
|
9 |
|
10 | void loop() {
|
11 | if (Serial.available() > 0) {
|
12 |
|
13 | incomingByte = Serial.read();
|
14 |
|
15 | if (incomingByte == '1')
|
16 | {
|
17 | digitalWrite(ledPin, HIGH);
|
18 | Serial.println("LED ist eingeschaltet!");
|
19 | }
|
20 |
|
21 | if (incomingByte == '0')
|
22 | {
|
23 | digitalWrite(ledPin, LOW);
|
24 | Serial.println("LED ist ausgeschaltet!");
|
25 | }
|
26 | }
|
27 | }
|
Perl Code (Ausschnitt):
Leider passiert beim Senden nichts. Die Tx/Rx LEDs auf der Platine
blinken kurzzeitig, mehr aber nicht.
Beim Auslesen der Baudrate, databits etc. habe ich keine Probleme.
1 | my $ob = Win32::SerialPort->new ('COM3') || die;
|
2 | $ob->write("1");
|
Ich habe auch schon das Modul FIRMATA getestet gehabt, leider auch ohne
Erfolg.
Ich hoffe mir kann einer von Euch helfen. Google konnte mir leider NICHT
helfen.
Gruß.