Schnelle Serielle Datenübertragung MC an PC

OP Persönliche Seite #3356415
Lesenswert?

Hallo,
wie realisiert ihr die Datenübertragung, wenn ihr den Controller als 
eine Art externe Messkarte verwenden wollt? Als Beispiel würde ich einen 
Xmega mit DMA und der Auflösung eines Messwertes von 12 Bit verwenden.

Es geht mir eher um das Prinzip, wie man so etwas löst, so dass die 
Daten schnell an den PC geschaufelt werden.

Weiterhin interessiert es mich, welchen Aufbau ich benötige wenn ich 
sehr kurz aber dafür schnell messen möchten. In welche Art von Baustein 
verwende ich da um die Daten extern Zwischen zu speichern um sie dann 
langsam an den Rechner zu senden.

Das ganze ist nicht für ein direktes Projekt, sondern es geht mir eher 
um das Prinzip, wobei direkte Beispiele auch nicht uninteressant sind.

Randbedingung sind eben atmega bzw. ein xmega als controller.

Grüße martin
Gast #3356505
Lesenswert?

Was erwartest Du, 'ne Anleitung mit ausführlichem Bauchkraulen? Wird Dir 
kaum jemand machen.

Du solltest 'ne gewisse Eigenleistung erbringen, die könnte z.B. daraus 
bestehen das DB des XMega anzuschauen, wie schnell denn die AD-Wandler 
bei der geforderten Auflösung überhaupt wandeln und in den internen 
Speicher schreiben können.

Aber auch da fehlen bereits Angaben zur Datenmenge, so dass beurteilbar 
wäre, ob der Speicher überhaupt reicht.

Wenn Du erwartest, dass Dir gegeben wird, solltest Du auch was bringen 
können. Und wenn's nur eine genaue Beschreibung des Einsatzzwecks wäre.
OP Persönliche Seite #3356595
Lesenswert?

Leute warum müsst ihr alle immer jeden "runter machen".

In allen Threads findet man keine Lösung außer das mein ein schlankes 
Protokoll braucht und son zeug was sich jeder selber denken kann. Ja es 
geht auch in die Richtung wie in dem Beitrag 
Beitrag "Erfahrungswerte Abtastrate ATMega?"
Wobei es in dem Artikel eher über sinnvolle Abtastraten bezüglich Layout 
und co geht und weniger um die Datenübertragung.

Aber da gibt es auch keine richtige Lösung bzw. Empfehlung.
Ich hab schon relativ viel mit Controllern gemacht und bisher hat auch 
die Geschwindigkeit immer gereicht. Vieles davon findet man ja hier 
http://www.jtronics.de/avr-projekte/xmega-tutorial.html

Aber in Richtung hohe Datenübertragungsrate hab ich eben heute mal paar 
Fragen. Weil was bringt mir ein schneller ADC wenn ich die Daten damit 
nur auf ne SD Karte per SPI oder in den internen Speicher schieben kann.
Ich könnte noch auf dem Controller die Daten mittels Mittelwertfilter 
reduzieren.
Oder ich kann auch die Daten Reduzieren, indem ich nur die Deltas zum 
letzten Messwert versende, aber das können doch nicht nur die einzigen 
Mittel sein?
Gast #3356623
Lesenswert?

44luftballons schrieb:
>> Am oberen Geschwindigkeitsende, bei 100+ MSample
>
> Da kommt aber der PC schon ins Schleudern

Warum sollte er? Zur Erinnerung: Es geht darum, "sehr kurz aber dafür 
schnell" zu messen und dann "die Daten extern Zwischen zu speichern um 
sie dann langsam an den Rechner zu senden". Da ist es dem PC ziemlich 
egal, mit welcher Rate die Daten aufgenommen wurden.
Gast #3356825
Lesenswert?

Martin J. schrieb:

> Es geht mir eher um das Prinzip, wie man so etwas löst, so dass die
> Daten schnell an den PC geschaufelt werden.

Das ist eigentlich nur eine Frage der am PC verfügbaren Schnittstellen. 
Das Problem ist, daß die Tendenz in der PC-Technik seit Jahren immer 
mehr zu schnellen seriellen Schnittstellen mit diffentieller 
Datenübertragung ging, es genau in diesem Bereich bei µC aber meist 
klemmt.
Bestenfalls gibt's Fullspeed-USB und dessen Nettorate von ca. 8MBit/s 
stellt dann halt die Grenze dar.

Schneller geht's nur mit ALTER PC-Technik. Oder halt zusätzlichen 
Hardware-Bridges.

> Weiterhin interessiert es mich, welchen Aufbau ich benötige wenn ich
> sehr kurz aber dafür schnell messen möchten.

Nur genug RAM. Und einen µC, der diesen RAM ansteuern kann. Oder wieder 
zusätzliche Hardware, diesmal als RAM-Controller.

> Randbedingung sind eben atmega bzw. ein xmega als controller.

Schöne Teile, aber zur schnellen Kommunikation mit modernen PCs einfach 
die falsche Wahl.
Gast #3356856
Lesenswert?

Martin J. schrieb:
> Was empfiehlst du hier als Zwischenspeicher, Im Fall man hat viele Daten
> die man aufnehmen möchte?

Nun sag endlich, was du mit "viele Daten" und "schnell" und "sehr kurz" 
meinst. Ist die Übertragung der Engpaß oder der verdammte µC?
Deine Allgemeinplätze nerven allmählich.

Martin J. schrieb:
> Randbedingung sind eben atmega bzw. ein xmega als controller.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren