Forum: Mikrocontroller und Digitale Elektronik µC -> PC und umgekert


von Snatch (Gast)


Lesenswert?

Hallo zusammen,

ich habe es nun endlich hinbekommen, unter VB.NET auf meinen Atmega 
zuzugreifen. Ich kann Daten senden und empfangen und kann ihn auch 
Fernstuern LED An/Aus etc.

Jetzt möchte ich natürlich mehr. Ich möchte 4 ADC-Kanäle auf dem PC 
anzeigen lassen und einige Taster über den PC bedienen.

Nun kommt mein Problem. Wie sellt man das an? Ich kann zwar Daten 
senden, aber die füllen im Moment immer nur eine Variable. Ich weis 
nicht wie ich es erklären soll, es geht hier nicht um Code oder um die 
Programiersprache. Es geht darum, wie man so ein Programm am besten 
aufbaut. Wie kann der µC unterscheiden, welche Taste ich gedrückt habe 
und wie kann er unterschiedlich darauf reagieren, dass VB wiederum weis, 
wozu der gesendete Wert nun gehört. Einzelne Funktionen sind leicht, 
aber eine Kombination aus allem oder das senden von z.B. 4 ADC-Wertden 
von unterschiedlichen Kanälen machts mir schwer.

Hat mir vielleicht jemand einen Tipp, wie man sowas strukturiert am 
besten?

Gruß
Snatch

von Bernd (Gast)


Lesenswert?

So etwas nennt sich Protokoll. Auf dem MC brauchst du eine 
Empfangsroutine die entsprechend auswertet was getan werden soll.

PC sendet: getAdcValueChannel1
MC sendet: als Antwort den Wert zurück

usw. Denk dir ein Protokoll aus und auf Anfrage deines PC's führt der MC 
entsprechende Programmteile aus und Antwortet.

von Karl H. (kbuchegg)


Lesenswert?

> Einzelne Funktionen sind leicht,
> aber eine Kombination aus allem oder das senden von z.B.
> 4 ADC-Wertden von unterschiedlichen Kanälen machts mir schwer.

Wie machst du es denn, wenn du zu Hause anrufst und deine kleine 
Schwester bittest etwas für dich zu erledigen?
Deine Schwester geht auch nicht her und macht von sich aus das Fenster 
auf, wenn du anrufst. Sondern du teilst ihr mit, was sie tun soll.

Und genauso muss dein VB Programm dem Mega mitteilen, was er tun soll.
Dazu kann er zb Codes schicken.
'A' bedeutet: LED ein
'B' bedeutet: LED aus
'C' bedeutet: Wert vom ADC1 schicken
etc....

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.