Neues MiniProjekt: SerialComScope

OP (Firma: Bastler aus Mönchengladbach) Persönliche Seite #3456744
Könnte ihr dieses "Abfallprodukt" von SerialComInstruments mal testen?
Es ist noch in einem rudimentärem Stadium und soll mal ein 
eigenständiges Programm werden.

SerialComScope V0.01

Schnelle Scope-Darstellung von 8 Bit ADC-Werten eines Mikrocontrollers 
über die serielle Schnittstelle.
Die Display-Auflösung entspricht mit 256x500 der eines 
Digital-Oszilloscopes. Höhere Auflösungen in der X-Achse sind beliebig 
machbar, verringern aber entsprechen die Frame-Rate.
Bei einem weiteren Ausbau sollen von Skalierung der X-Achse in 
Zeiteinheiten, Zoom usw dazu kommen. Überlegenswert wäre eine 
Übertragung von einer geänderten Abtast-Einstellung vom PC zum MC (würde 
aber event. die max.Samplerate beeinflussen, da ja darauf hin im MC 
abgefragt werden müsste).

Ich schaffe damit zur Zeit ca. 30.000 Samples/s bei 460800 Baud (siehe 
Bild mit 2 kHz Dreiecksignal). Die Framerate (Updaterate) der 
Darstellung beträgt ca. 20 Frames/s.

Folgende Eigenschaften habe ich bei Tests festgestellt:

Controller    Clock      baud     Auflösung  Samplerate/s   Frames/s
                                             incl.Transfer  500 Pixel 
---------------------------------------------------------------------
ATMega168-20  22118400   460800   8 bit      30000          20
ATMega328     16000000   115200   8 bit       6000           4

Das Beispiel-Programm für den MC in Luna kann leicht in andere Sprachen 
wie C oder Bascom sinngemäss übertragen werden.

Der Trigger arbeitet nicht immer wie er soll, vielleicht findet ihr noch 
mehr Tücken und habt noch Vorschläge.
Gast
Interessant, wie wärs wenn man statt der ungenauen Dauerschleife den 
Interrupt des ADC nutzt um eine halbwegs exakte Basisfrequenz zu 
erreichen?

Momentan kann das Anwendungsprogramm doch gar keine richtige 
Zeit(-Anzeige) berechnen um auch nur halbwegs sinnvolle Zeitabschnitte 
ablesen zu können.
OP (Firma: Bastler aus Mönchengladbach) Persönliche Seite
Demnächst gibt es eine neue Version von SerialComScope.
Anbei eine Voransicht.
Der Mikrocontroller bekommt nun die Information welche Samplerate 
eingestellt ist jeweils als 1 Byte codiert über die Schnittstelle 
geschickt.
Die Darstellung ist zoombar und in X- und Y-Achse verschiebbar.
An der korrekten Skalierung für die Y-Achse bastel ich noch.
Angehängte Dateien:
Gast
Ich denke das ist der falsche Weg, ein Oszilloskop ändert doch nicht 
seine Hardware-Samplerate! Das wäre hier Aufgabe des PC-Programms, dafür 
muss es natürlich wissen mit welcher Frequenz die Werte gesampelt 
werden.

Auf dem MC also immer Maximale Samplerate was die Schnittstelle kann und 
das Ganze über Interrupt und Free running mode mit fester Frequenz (die 
natürlich unterhalb der Ausgabegeschwindigkeit liegen muss).
OP (Firma: Bastler aus Mönchengladbach) Persönliche Seite
Hollow schrieb:
> Ich denke das ist der falsche Weg, ein Oszilloskop ändert doch nicht
> seine Hardware-Samplerate! Das wäre hier Aufgabe des PC-Programms, dafür
> muss es natürlich wissen mit welcher Frequenz die Werte gesampelt
> werden.

Da bin ich aber ganz anderer Ansicht, aber ich lass mich gern überzeugen 
:)
Aus welchem Grund wäre es sinvoll z.B. langsamere Vorgänge mit höchster 
Samplerate zu messen? Wozu soll da der enstehende Datenwust gut sein.
Das Ganze kann man auch nicht wirklich mit einem Oszi vergleichen.
Und was machen die Anwender mit schnelleren/langsameren MC's und/oder 
Schnittstellen?

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 12 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.