Einfaches "Oszilloskop"

OP Persönliche Seite #437772
Lesenswert?

Als ich mir mal http://elm-chan.org/works/vp/report.html durchgelesen 
hab wollte ich das ganze auch mal ausprobieren. Problem war nur, dass 
ich keinen DRAM oder SRAM mit sinnvoller Größe hier hatte. Also hab ich 
die Daten einfach über die Serielle schnittstelle live auf den computer 
geschaufelt.

Das Programm für den Mega128 (der steckte halt gerade im stk501) ist 
ziemlich simpel ... Der ADC wird im Free-Running-Mode initialisiert und 
kopiert im Interrupt die daten in r17 und setzt ein Flag, dass neue 
Daten da sind. In der Main wird das Flag abgefragt und wenn ja wird das 
Byte in r17 über die Serielle schnittstelle gesendet. Der Flaschenhals 
ist hierbei natürlich die Serielle schnittstelle. Die Schnittstelle an 
meinem Computer macht maximal 115200 Baud mit, also verwendet das 
Programm auch diese Baudrate. So kommen ca 11kSp/s rüber.

Auf Computerseite wollte ich mir diese Daten dann eigentlich anhören. 
Über das Terminalprogramm kamen die Daten aber leider nur als ASCII 
Zahlen. Da hab ich mit mit Java ein kleines Programm geschrieben um aus 
dem großen String die einzelnen Zahlen zu parsen und dann in eine Datei 
zu schreiben. Dann bin ich auf die Idee gekommen, dass ich die Daten 
aber auch mal Visualisieren könnte, und so ist das Programm hier 
entstanden. Es ist sehr simpel und auch nicht gerade schön programmiert 
... ist an einem Nachmittag entstanden.

Jetzt kann das Programm die Daten über die serielle Schnittstelle 
entgegennehmen, speichern, laden und aus einem String mit Zahlen (von 0 
bis 255) parsen (als Trennzeichen werden leerzeile, tabulator usw 
erkannt)

Vielleicht kann jemand was damit Anfangen oder so, auf jeden fall ist es 
besser geworden als ich erwartet habe, deswegen lade ich es mal hier 
hoch.

In der Zip datei ist auch ein kleines Audiosample von einer Aufnahme. 
Die Wav datei ist einfach mit dem Hex-Editor erstellt, nicht mit meinem 
Programm.

Merkwürdigerweise will der WMP das File nicht abspielen, das liegt wohl 
an der krummen Sampligrate von ~11k. Winamp, VLC usw haben bei mir das 
File aber problemlos abgespielt.
Angehängte Dateien:
OP Persönliche Seite #437778
Lesenswert?

Achso: Zum starten muss man das comm Paket installieren (ist enthalten, 
die win32com.dll kommt ins /bin von Java, die javax.comm.properties ins 
/lib und comm.jar ins /lib/ext) und das ganze läuft nur ab Java 1.5

Ich hab noch mal 4 Soundsamples mit Hinzugefügt, einfach aus der 
Textdatei kopieren und in das TextField im Programm einfügen und auf den 
Knopf FromTextField klicken.

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