PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Einfache Kommunikation zwischen AVR und PC



toni123
05.11.2009, 16:13
Hallo Leute,


also entweder ich bin zu Doof oder das Internet mag mich heute einfach nicht.

Ich besitze das Pollin Evaluations Board, das ja auch eine RS232-Schnittstelle hat, mit der man ganz einfach Daten schicken und senden kann, oder?

Mein Problem ist, dass ich nicht weiß wie ich das mit der Programmierung anstellen soll.
Ich müsste doch ganz einfach nur einen Befehl über die RS232 schnittstelle senden können, der dann vom AVR erkannt und interpretiert wird, oder?
Nur finde ich dazu nichts in Google, bzw. hier im Forum. Überall sind es nur speziellere Fragen zu diesem Thema, in denen aber natürlich nicht erklärt wird wie man so etwas "einfaches" macht.
Ich hoffe ihr könnte mir helfen, und entschuldigt diese doch etwas "einfachere" Frage.

viele Grüße

Toni

Hubert.G
05.11.2009, 17:12
Wenn du noch sagst welche Programmiersprache du verwendest, dann kann dir sicher geholfen werden.

toni123
05.11.2009, 18:01
ich verwende basic =)

Hubert.G
05.11.2009, 18:54
Falls du BASCOM meinst, brauchst du nur nach dem Manual arbeiten.
Wenn du es nicht hast www.mcselec.com/index.php?option=com_docman&task=cat_view&gid=99&Itemid=54

toni123
05.11.2009, 22:03
Ok, danke ;) jetzt bekomme ich das auch hin,

allerdings komme ich wenn ich ihn einfach nur "Hello World" ausgeben lasse lauter komische zeichen.
Weiß jemand wieso?

Hubert.G
06.11.2009, 10:03
Da stimmt wahrscheinlich die Baudrate nicht oder die Taktfrequenz des Kontroller.

toni123
06.11.2009, 14:42
Danke für den Tip, hatte vergessen die Taktfrequenz richtig einzustellen. Allerdings finde ich im Manual nicht die richtige Stelle die beschreibt wie ich Programmiere dass der AVR auf bestimmte befehle wartet.
Weißt du wie das geht?

Neutro
06.11.2009, 16:42
Das kann man mit dem Inkey () Befehl machen.
Syntax dazu:

Dim A as byte

Do

A = Inkey()

If a = XXX Then
mach was
end if

loop

end

Ist ein einfaches Beispiel in dem die Variable A den (Byte)Wert annimmt der per RS 232 gesendet wurde.

MfG

Neutro

toni123
08.11.2009, 22:01
cool, danke,

wenn ich jetzt mit c# einen befehl sende sagt er mir (wenn ich hyperterminal nebenbei laufen lasse), dass der port geschlossen ist.

weiß jemand was zu tun ist?

Vitis
09.11.2009, 11:45
in hyperterminal die verbindung deaktivieren. die schnittstelle kann nur von jeweils einem programm verwaltet werden.

toni123
09.11.2009, 20:08
Funktioniert, vielen Dank ;)