11.06.2014, 14:08
Hallo Zusammen,
Ich versuche Daten, die mit dem AD-Wandler eines µC aufgenommen wurden, an den PC zu senden.
4 Kanäle á 12 Bit, wobei ich 8 Bytes Daten pro Wandlung an den PC sende.
Nun brauche ich ein gutes Konzept dafür.
Bisher habe ich zwei Versuche unternommen:
1. Der µC wartet auf ein Zeichen des PCs ('#') und sendet dann die Daten aus.
Das funktioniert prima, aber die Zeit bis der PC wieder eine '#' sendet ist viel zu lang. (Warum auch immer?!)
2. Der µC sendet permanent die Daten aus. Zur Erkennung des Datenbeginn sendet er zwei mal den Wert 255 hintereinander. Das sollte in den Nutzdaten nicht vorkommen, da das High byte nie 255 erreicht.
Die Daten werden wie folgt gesendet: 255, 255, Lowbyte ADC1, Highbyte ADC1, Lowbyte ADC2, Highbyte ADC2, Lowbyte ADC3, Highbyte ADC3, Lowbyte ADC4, Highbyte ADC4.
Hierbei ist das Problem, dass der Buffer vollläuft, wenn ich die Baudrate erhöhe.
Ich habe beide VIs angehängt. Da gibt es sicher noch sehr viel zu optimieren und wenn jemand ein paar Tipps oder Lektüre für mich hat, wäre ich sehr dankbar.
Weiter versuche ich die Daten dann in einem Array zu sammeln, damit ich sie anschließend in eine Datei schreiben kann. Ausserdem sollen sie auch noch angezeigt werden.
Daran arbeite ich aber noch...
Ich versuche Daten, die mit dem AD-Wandler eines µC aufgenommen wurden, an den PC zu senden.
4 Kanäle á 12 Bit, wobei ich 8 Bytes Daten pro Wandlung an den PC sende.
Nun brauche ich ein gutes Konzept dafür.
Bisher habe ich zwei Versuche unternommen:
1. Der µC wartet auf ein Zeichen des PCs ('#') und sendet dann die Daten aus.
Das funktioniert prima, aber die Zeit bis der PC wieder eine '#' sendet ist viel zu lang. (Warum auch immer?!)
2. Der µC sendet permanent die Daten aus. Zur Erkennung des Datenbeginn sendet er zwei mal den Wert 255 hintereinander. Das sollte in den Nutzdaten nicht vorkommen, da das High byte nie 255 erreicht.
Die Daten werden wie folgt gesendet: 255, 255, Lowbyte ADC1, Highbyte ADC1, Lowbyte ADC2, Highbyte ADC2, Lowbyte ADC3, Highbyte ADC3, Lowbyte ADC4, Highbyte ADC4.
Hierbei ist das Problem, dass der Buffer vollläuft, wenn ich die Baudrate erhöhe.
Ich habe beide VIs angehängt. Da gibt es sicher noch sehr viel zu optimieren und wenn jemand ein paar Tipps oder Lektüre für mich hat, wäre ich sehr dankbar.
Weiter versuche ich die Daten dann in einem Array zu sammeln, damit ich sie anschließend in eine Datei schreiben kann. Ausserdem sollen sie auch noch angezeigt werden.
Daran arbeite ich aber noch...