Hallo µC-Gemeinde, ich habe eine kurze^^ Frage an euch Profis! Ich möchte mit Hilfe eines Xmegas (128A1) eine bestehende USART-Kommunikation zwischen PC und µC erweitern. Ich möchte dabei eine Paramterliste (Name, Wert, ...) übertragen, welche ich gegebenenfalls auch verändern kann. Das heißt ich möchte den Wert der Variablen via PC verändern können. Ich stehe zur Zeit voll auf dem Schlauch und hätte gern ein paar Anregungen von euch, wie so ein Protokoll aussehen könnte. Danke.
Bisher habe ich eine Matrix (Parameter[Zeilen][Spalten]), welche ich aller x µsec schicke. void USART_Para(void) { USART_Transmit(uc_Parameter[uc_Tx_ZCounter][uc_Tx_SpCounter]); uc_Tx_SpCounter++; if(uc_Tx_SpCounter >= Spalten) { uc_Tx_ZCounter++; if(uc_Tx_ZCounter >= Zeilen) {uc_Tx_ZCounter=0;} uc_Tx_SpCounter=0; USART_Transmit(0x0D); } }
>Ich stehe zur Zeit voll auf dem Schlauch
Ich möchte Dir höflich empfehlen erstmal ein wenig mit dem Stichwort
"Protokoll" bzw. "Kommunikationsprotokoll" zu googeln und vor allem
allgemeine Texte darüber zu lesen.
Stelle Dir dabei folgende Fragen:
1. Was ist und soll ein Kommunikationsprotokoll?
2. Was sind seine Eigenschaften und wie werden sie ausgedrückt?
3. Was sind die programmatische Mechanismen um es zu implementieren?
4. Wie wird ein Protokoll spezifiziert abgesehen von Punkt 3?
(Stichwort: Syntax).
Dann formuliere Deine Frage bitte neu und zwar spezifisch.
Wenn Du einfach nur gar keine Ahnung von dem Thema hast, müsste ich
hier nämlich die Romane wiederholen, die sowieso schon zu Dutzenden im
Internet, in Vorlesungsscripts und Büchern stehen.
Das was du hast funktioniert schon gut? Damit erreichst du das ja schon, allerdings etwas ineffizient da du immer alle Parameter überträgst. Worum geht es dir genau? Das ganze effizienter zu machen oder sicherer? Also hast du Störungen auf der Übertragung?
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.