Forum: Mikrocontroller und Digitale Elektronik UART unter linux verwenden


von Basti H. (basti1508)


Lesenswert?

Hallo zusammen,

ich benutze das myAVR MK2 Board. Im moment habe den Code unter Windows 
getestet. Das Sisy AVR bringt eine funktion über das mySmartUSB Terminal 
den Daten-modus für den Programmer zu aktivieren, sodass die daten 
zwischen PC un dem controller fließen können.

Wie kann ich diesen modus nun unter linux aktivieren?
oder kann ich das auch vom kontroller paus beim initialisieren?

Hoffe auf baldige Hilfe.. zerbreche mir seit mehreren Tagen den schädel 
:S

von Tom M. (Gast)


Lesenswert?

Der Programmer sollte sich als USB Device beim System anmelden und wird 
oft als /dev/ttyUSB0 eingehängt. Mittels `dmesg' kannst du das auf der 
Kommandozeile prüfen. Ist das soweit okay?

Dieses Device kannst du z.B. mit screen öffnen, also:

screen /dev/ttyUSB0 57600

(ctrl-a z beendet screen wieder).

von Basti H. (basti1508)


Lesenswert?

ja das ist mir klar :)

Ich versuche es noch mal anders zu beschreiben.

Wenn man den Programmer mit Board am Pc per USB anschließt, aktiviert 
sich der Programmer im programming mode, hier werden Daten anscheinend 
nur zum flashen hergenommen. Per windows GUI kann ich den Programmer auf 
den data mode umschalten, jetzt werden Daten z.B. von einer Seriellen 
konsole zum RxD Port weiter geleitet.

Wie kann ich diesen data-mode unter linux aktivieren. Mir avrdude?

von g457 (Gast)


Lesenswert?

> Wie kann ich diesen data-mode unter linux aktivieren.

Erst mal rauskriegen was der Hersteller da macht. Am einfachsten in den 
Quellcode kucken. Falls das nicht möglich ist, weil der Hersteller sich 
zu fein ist, den rauszurücken, dann belausche die Schnittstelle und 
protokolliere mit, was übertragen wird. Mit etwas Glück kannst Du die 
Übertragung nachstellen und dann (im einfachsten fall) per
1
$ cat < $replayattack > $dev
die Schnittstelle umschalten.

von g457 (Gast)


Lesenswert?

Ich mal mal die Ingrid: Stelle fest: Es gibt eine Doku vom Hersteller 
:-) Auf [0] ist unter 'mySmartUSB-Kommandos' ein Archiv verlinkt, das 
neben einer recht einfachen cmd auch die nötigen Kommandos im Klartext 
enthält: 'pass-throughRS232.txt' klingt vielversprechend, Anwendung 
gemäß _mySmart.cmd.

HTH

[0] 
http://shop.myavr.de/index.php?404;http://myavr.de:80/shop/article.php?artDataID=36

von Basti H. (basti1508)


Lesenswert?

oh das is ja super :)
ich hab das so ähnlich gerade auch gefunden und das mal versucht in 
einen python code umzusetzten, geht aber nicht.. hier der code:
1
#!/usr/bin/python
2
import serial
3
4
s = serial.Serial(port='/dev/ttyUSB0', baudrate=19200)
5
s.write("\xE6\xB5\xBA\xB9\xB2\xB3\xA9d")

von g457 (Gast)


Lesenswert?

> baudrate=19200

..laut _mySmart.cmd will der '500000':
1
mode %1 500000,n,8,1

..oder macht 'mode' da was anderes bei '500000' (..meine Dos-Zeiten sind 
doch schon ein paar Dekaden Geschichte..).

von Basti H. (basti1508)


Lesenswert?

Soo habs jetzt selbst gefixed!
also mit python würde das wiefolgt gehen:
1
# coding: utf-8
2
import serial
3
4
s = serial.Serial(port="/dev/ttyUSB0", baudrate=19200)
5
s.write("浺¹²³©d")
6
print s.readline()

Bei Fragen bitte Fragen, ich denke jetzt verstehe ich das Ding :P

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.