Forum: Mikrocontroller und Digitale Elektronik Wie ein GIF aus Hexfile erstellen, um uC via Monitor und Optotransistor zu programmieren


von S. N. (Firma: flipdot hackerspace kassel) (snafu)


Lesenswert?

Guten Abend zusammen!

Kurzform:

Wie kann ich aus einem Ascii- oder Hexfile automatisiert ein Animated 
GIF erzeugen, in dem Schwarz- und Weißflächen unterschiedlicher Länge 
einander abwechseln, entsprechend den Bits im Hexfile? Das GIF soll also 
einen seriellen Datenstrom blinken...


Langform:

Für ein Projekt mit Schülern, die ich an die Elektronik heranführen (und 
schließlich für den Beruf begeistern will) [Nein, ich bin kein Lehrer 
;)] suche ich ein "noch nie dagewesenes Bastelprojekt" ;)

Elektronische Würfel sind lame, und ich denke an eine 
Controllerschaltung, die via einer Website mit neuen Inhalten geladen 
werden kann. Man hält dazu einfach das Platinchen an den Bildschirm und 
ruft die Seite auf.
So könnten z.b. in ein Matrixdisplay neue Texte reingeladen werden. Das 
Tollste wäre, wenn die Texte direkt auf der Website eingegeben werden 
könnten, quasi ein Null-Euro Programmiergerät für den Controller.

Jetzt suche ich eine Möglichkeit, wie ich per Software ein Animated GIF 
erzeuge, das mir den Blinkcode liefert. Codierung könnte so was 
ähnliches wie bei DCF77 sein, damit unterschiedliche 
Taktgeschwindigkeiten keine große Rolle spielen.

Irgendwann gabs so was schon mal via TV, wenn ich mich recht erinnere.

Habt ihr eine Idee dazu?

Schönen Abend noch,
Snafu

von holger (Gast)


Lesenswert?

Schöne Idee!

Aber denk bitte auch an die Epileptiker.
Sowas kann Anfälle auslösen.

von Falk B. (falk)


Lesenswert?

@ Samuel Brauns (snafu)

>Controllerschaltung, die via einer Website mit neuen Inhalten geladen
>werden kann. Man hält dazu einfach das Platinchen an den Bildschirm und
>ruft die Seite auf.

;-) skuril. Macht aber max. 60 Bit/s bei den meisten TFTs, und 
Matrixcodes einlesen ist alles andere als easy. Vielleicht lieber per 
Soundkarte den Datenstrom ausgeben, win ind er guten alten C64 Zeit mit 
Datasette ;-)

>könnten, quasi ein Null-Euro Programmiergerät für den Controller.

Mit nache Null Handhabbarkeit . . .

>Irgendwann gabs so was schon mal via TV, wenn ich mich recht erinnere.

Ja, nennt sich Videotext.

MFg
Falk

von Tim (Gast)


Lesenswert?

Die Gif könnte ziemlich gross werden...

Sowas wirst du wohl selbst programmieren müssen, z.b. mit GD:
http://www.libgd.org/ImageCreation#void_gdImageGifAnimBegin.28gdImagePtr_im.2C_FILE_.2Aout.2C_int_GlobalCM.2C_int_Loops.29

Wenn es ein Webseite sein darf, währe Java Script auch eine Option.

von Falk B. (falk)


Lesenswert?

Obwohl, 60Hz/2 = 30 Hz/Baud, das ist die kleinste offizielle Baudrate. 
Könnte direkt mit nem Optokoppler in den uC gefüttert werden. 
Tamagotchi an den TFT halten, warten, neue Piepstöne hören ;-)

von Falk B. (falk)


Lesenswert?

@ Tim (Gast)

>Die Gif könnte ziemlich gross werden...

Kaum. Schwarz/Weiss ist verdammt gut komprimierbar

von S. N. (Firma: flipdot hackerspace kassel) (snafu)


Lesenswert?

Audio! Auch ne gute Idee, braucht der uC nur ein Kondensatormic, so eine 
einfache 300bit/s Codierung mit FM sollte man doch mit Software 
decodieren können ...

von Hans (Gast)


Lesenswert?

Das ist leider tatsächlich sehr langsam.
Das Prinzip der Datenübertragung per Monitor hat Timex für die DATALINK 
Serie mal verwendet, geht aber einigermassen fix nur mit CRT.

von Hans (Gast)


Lesenswert?

..und die neue Firmware wird auf Kassette verschickt..

von Läubi .. (laeubi) Benutzerseite


Lesenswert?

Wie wäre es mit DTMF? Dann könnte man den mit diesen Fernabragedingern 
für Anrufbeantworter Programmieren ;)
Ansosnten wäre das einfachste wohl ein Java Applet...

von Lothar M. (Firma: Titel) (lkmiller) (Moderator) Benutzerseite


Lesenswert?

> Obwohl, 60Hz/2 = 30 Hz/Baud, das ist die kleinste offizielle Baudrate.
Ja, das wird sogar unter Windows gehen, wenn keiner einen Interrupt 
auslöst. Z.B. die Maus oder der USB-Stick, oder die Tastatur, oder der 
Timer...

> geht aber einigermassen fix nur mit CRT.
Und mit spezieller Software, die das Umschalten vornimmt.
Animated GIFs sind einfach nur Slideshows, der User wünscht und der 
Rechner bestimmt, wie schnell die Dinger abgespielt werden.

Das mit der Soundkarte scheint mir da schon plausibler. Da könnte man 
MP3s verschicken und ein neues Muster übers Handy einspielen. Das wäre 
was für Spielkinder... ;-)

von Hans (Gast)


Lesenswert?

Status LEDs missbrauchen: CAPS-Lock, Optische-Maus-Beleuchtung,  ...
Soundkartenausgang hat ein paar kHz

von S. N. (Firma: flipdot hackerspace kassel) (snafu)


Lesenswert?

Ich glaube, ich werde mich mal auf Audio einschießen, dann suche ich 
erstmal nach Demodulator - Quellcode für den AVR, um das erwähnte DTMF 
o.ä. decodieren zu können. DTMF wäre sowieso gut, dann hätte man für das 
Platinchen gleich eine Tastatur, wenn man es an den Hörer eines 
DTMF-fähigen Telefons hält, zb. um zwischen Programmvarianten 
umzuschalten...

von Sven P. (Gast)


Lesenswert?

Hatte der Computerclub (Fernsehserie) nicht früher mal Programmtexte am 
Bildschirm langlaufen lassen...?

von Rainer (Gast)


Lesenswert?


von Skua C. (skua)


Lesenswert?


von Lothar M. (Firma: Titel) (lkmiller) (Moderator) Benutzerseite


Lesenswert?

Skua S. wrote:
> http://www.franzis.de/elo-das-magazin/entwicklung-und-projekte...
Bleibt immer noch das Problem mit dem Timing...
Es geht hier nicht einmal darum , daß alles sehr schnell geht, sondern 
nur darum, dass alles gleich schnell geht. Windows schafft das nicht. 
Und ganz sicher nicht irgend ein Stück Software, das (unter Windows) 
animierte GIFs abspielt.

von Frank (Gast)


Lesenswert?

autobauding

von Michael W. (wiebel42)


Lesenswert?

Zwei Felder (und natürlich zwei phototransistoren o.ä.) benutzen, eines 
kannst du eines als Takt verwenden, dann muss nur gewährleistet werden, 
dass kein Frame übersprungen wird. - wiebel

von yalu (Gast)


Lesenswert?

> Ich glaube, ich werde mich mal auf Audio einschießen, ...

Für die Datenübertragung über Audio könnte auch dieses von Interesse
sein:

  http://de.wikipedia.org/wiki/BASICODE#Das_BASICODE-Datenformat

Uralt (daher vielleicht cool für die jungen Leutz), 102 Bytes/s, relativ
unempfindlich gegenüber Störungen, nicht so schwer zu programmieren, und
man kann damit natürlich nicht nur BASIC-Programmcode übertragen.

von S. N. (Firma: flipdot hackerspace kassel) (snafu)


Lesenswert?

Danke für die vielen Infos,

Der ELO-Vorschlag erfordert manuelle Einstellung, das müßte man 
automatisieren. Bei der Basicode-Seite ist die Modulation spannend. Das 
müßte mit vertretbarem Aufwand nach Schmittriggerung zu decodieren sein.

Wie schön, daß jetzt die langen, kalten Winterabende kommen :)

von mui (Gast)


Lesenswert?

wie wär's denn an dem gif festzuhalten, aber mit unterschiedlichen 
Graustufen? So könntest du mit einem Frame mehrere Zeichen codieren - 
Kalibrierung vorrausgesetzt...

von Frank (Gast)


Lesenswert?

Mit Javascript und zwei Feldern auf dem Bildschirm, eines für das 
Datenbit, eines für den Takt, sollte kein großes Problem sein.
Nur besonders schnell ist es nicht, ich denke mal, dass sich so etwa 10 
bis 20 bit pro Sekunde erreichen lassen.

Frank

von S. N. (Firma: flipdot hackerspace kassel) (snafu)


Lesenswert?

Ha, da habe ich doch noch was schönes gefunden, ein Null-Euro-Terminal 
für eine uC Schaltung, fast 100% das, was ich suchte! 
http://www.riccibitti.com/wallet/wallet.htm "The Silicon Wallet"

von Matthias (Gast)


Lesenswert?

Also noch nie dagewesen ist das nicht! Irgend jemand hat in der guten 
alten Amiga-Zeit mal sowas gebastelt. Nannte sich glaub "VHS-Backup".

Da wurde ein Videorecorder zum Bandlaufwerk umfunktioniert für Backups
(Naja, damals waren die Leute halt noch mutiger ;-) )

Das zurücklesen ging dann auch über eine Photodiode. Hatte mir das mal 
nachgebaut. Aber statt nem Backup die HW zerschossen, naja, die 
"Anfänge"
einer Baslerkariere eben ;)

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
Noch kein Account? Hier anmelden.