Arduino - Serial.readline() funktioniert nur in der Pythonkonsole

OP #3585051
Lesenswert?
• ▲
▼
Arduino - Serial.readline() funktioniert nur in der Pythonkonsole?!

wenn ich folgenden Code in die Pythonkonsole eingebe, kommt immer wie 
erwartet "Hello world" (welches mein Arduino schickt):

import serial

ser = serial.Serial('/dev/ttyACM0', 9600)
while 1 :
    ser.readline()


Wenn ich das ganze z.B. in Eclipse mit PyDev ausführe, kommt keine 
Ausgabe.
Das Programm startet und zeigt nichts an.
Woran liegt das?
Wie kann man das ändern?

Gruß Tristan
Gast #3585065
Lesenswert?
• ▲
▼
Tristan S. schrieb:
> Woran liegt das?
Vielleicht wird bei Eclipse der controller nicht resetet, so das du ewig 
auf dein "Hello World" warten kannst, aber niemals bekommen wirst, weils 
schon lange vorbei ist.

Tristan S. schrieb:
> Wie kann man das ändern?
Per Python den Controller zu einem Reset zwingen
Versuch mal:

ser = serial.Serial('/dev/ttyACM0', 9600)
ser.setDTR(false)
sleep(1) # warte eine Sekunde
ser.setDTR(true)
sleep(1) # warte eine Sekunde
while 1 :
   ser.readline()

Die sleeps sind damit der Bootloader auf dem Arduino durchlaufen kann.
Vielleicht musst du die beiden setDTR() auch tauschen, also erst true 
und dann auf false setzen. Musst du mal ausprobieren.


Aber abgesehen davon:
Tristan S. schrieb:
> import serial
>
> ser = serial.Serial('/dev/ttyACM0', 9600)
> while 1 :
>     ser.readline()
>
> Wenn ich das ganze z.B. in Eclipse mit PyDev ausführe, kommt keine
> Ausgabe.
Jo, du machst da ja auch nirgends eine Ausgabe! Ergo kannst du auch 
nichts sehen...

Grüße

Antwort schreiben

Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt. Bitte hier nur auf die ursprüngliche Frage antworten, für neue Fragen einen neuen Beitrag erstellen.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.