PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : kommunikation pc microcontroller



epos
21.06.2007, 20:35
hallo! kann mir jemand sagen, wie ich daten vom pc an den microcontroller sende? haltet mich für blöd oder nicht, aber ich finde zu diesem thema einfach keine allumfassende seite!
ich möchte mit dem pc dem microcontroller zum beispiel sagen, dass er die led am port x einschalten soll!
wie mach ich das?
möchte auch ein programm schreiben wo man zum beispiel auf knopfdruck dem microcontroller sowas wie oben miteilt!
nach vielem googeln war ich immer noch nicht schlauer! dauernd irgendwas, dass das unter windows xp so schwer ist...! wie macht ihr dass? von mir aus auch unter win 95/98 , ist mir auch egal!
wie bringe ich dem microcontroller bei meine befehle zu lesen?
danke für eure hilfe! ](*,)

eugengraf
21.06.2007, 20:46
Na ja, als erstes wählst du dir die Schnittstelle aus über die du die Daten übertragen willst. RS232 (oder auch serielle genannt) ist am einfachsten.

Im uC-Programm machst du eine Whileschleife, die deine serielle Ausliesst und ein Switch-Case, die abhängig vom empfangenen Befehl eine Aktion ausführt und am PC startest du z.B. ein Terminalprogramm (z.B. in jedem Windows verfügbarer Hyperterminal).

Eugen

Xtreme
22.06.2007, 06:26
Du musst dir also eine Art Befehlssatz erstellen. Ich finde es immer am einfachsten wenn man die Befehle in ASCII Klartext hält, z.b. PinXon bzw toggleX. Deiner Phantasie sind keine Grenzen gesetzt.
Das Programm am µC muss nun den Text den es über seriell Empfängt zerlegen. Also erkennen um welchen Befehl es sich handelt und die mitgesendete Variabel X auslesen. Danach wird die entsprechende routine aufgerufen.
Versuche aber die Befehle immer "gleich" aussehen zu lassen. Dann kann man sie am µC leichter auswerten.
Außerdem ist es hilfreich wenn man einfach den Befehl lesen kann und weiß was gemeint ist (also %ooo238 sagt keinem Menschen was, und dem Programmierer nach ein paar Jahren evtl auch nix mehr).

Ein Beispiel: Übertragung von z.b. 4 PWM werten an den µC

PWM(100,50,0,256)

=> Der µC würde dann folgendes machen:
ersten drei Buchstaben auslesen "PWM" => Routine PWM
dann ( bis 1. Komma lesen => 1. wert.

Besser wäre:

PWM(100,050,000,256)

denn die Länge und somit Position der Werte ist nun fest und man braucht nicht immer erst nach den Kommas suchen.
Verstanden? :)

FuX
17.08.2007, 14:56
Hallo,

ich mach gerade auch so was daheim mit dem microcontroller daten an den PC senden mit Hyperterminal.

Wenn du willst kann ich dir eine Datei schicken.
geht ganz einfach

Gruß FUX

Xtreme
17.08.2007, 15:37
Ich glaube er hat es inzwischen selbst geschafft... man muss ja nun wirklich nicht das große Brain sein um sowas zu machen... Basics ;-)