AVR - Basteleien - Puppenhaus-Radio
Es gibt ein Puppenhaus:
Das braucht ein Radio.
und das soll spielen...
Ein fester Sender, eine Lautstärke, betrieben mit den 12V der Puppenhausbeleuchtung.
Mehrere Ansätze, alles nicht so das Richtige.
MW mit einem MK484 kam in Frage, nur: es sendet ja nicht mehr wirklich...
UKW mit einem TEA5712: zu unhandlich, zu groß.
Jetzt fiel mir das (auch schon alte) TEA5767-Modul auf, gibt es für 2 Euro beim Chinesen um die Ecke.
Also bestellt. Dazu einen TDA7050 aus der Kiste, Außenbeschaltung keine, Leistung auch mit 3,3V ausreichend.
Der "Lautsprecher" war schon drin, Brückengleichricher und Elko auch.
Etwas suchen bei den Spannungsreglern: irgendein MIC2xxx 3,3V kam in Frage,
alles andere hatte 100mA (zu wenig für die Spitzen des TDA7050) oder konnte Vin nur 7,5V.
Als Controller irgendein ATiny 25 oder so.
Lautsprecher, Spannungserzeugung und natürlich die Skalenbeleuchtung im eigentlichen Radio.
Jetzt entweder meine uralten Soft-I2C-Sourcen ausgraben oder sich mit dem USI im I2C-Mode rumärgern.
Irgendwie habe ich auf meine alten Tage die Aruinos für mich entdeckt, wenn ich schnell was testen will und keine Zeit für viel Aufwand habe.
Ein Sketch für den TEA5767 war schnell gefunden, eine Lin für die kleinen AVR gabe es auch: TinyWireM.
Also Steckbrett raus, Adapter für das TEA-Modul gebastelt, alles zusammengesteckt und...
Erstmal der ArduinoIDE die Tinys beigebracht, ok, war nur Tiny45 und Tiny85 dabei, eagl.
Programmieren? Kann die ArduinoIDE den AVR-Dragon als ISP? Natürlich nicht.
STK500 war dabei, ist auch hier verfügbar, aber keine Lust, Netzteil dafür und USB-Serial-Wandler und der ganz Drahtverhau...
Also den Drachen in die IDE gebaut. Warum bei meiner Installation der libUSB die Filter nicht dabei waren? Keine Ahnung...
Also die FilterLib runtergeladen, installiert und den Drachen bekannt gemacht. Na bitte, geht doch!
Sketch compiliert, Tiny45 programmiert, "Radio" spielt.
Jetzt kamen die Probleme: warum rauscht und knirscht das nach dem Einschalten bis nach gut einer Sekunden der Sender abgestimmt ist und spielt?
Das Datenblatt des TEA5767 sagt eindeutig, daß das MUTE-Bit nach Power-On-Rest gesetzt ist, alle anderen Bits sind zufällig.
Mit MUTE = 1 sollte Stille sein, nur scheinen meine beiden TEA-Module ihr Datenblatt nicht gelesen zu haben!
Bei der Gelegenheit habe ich mich gefragt, warum der Ersteller des Sketches (er hat sich damit ein Radio gebaut) das Datenblatt des TEA5767 nicht gelesen hat?
Die Module haben einen Uhrenquarz drauf, den sollte man dann auch nutzen, also erstmal die Steuerbits korrigiert.
Dabei ergab es sich, daß man dem TEA sagen kann, daß er nur auch nur auf einem Kanal Mono ausgeben soll.
Also Ausgabe nur rechter Kanal in Mono. Klappt und passt für das Puppenhaus.
Die Geschichte mit dem Rauschen nach dem Einschalten blieb mir erhalten und nervte...
Das Ende vom Lieg: einen Transistor vom Eingang des TDA7050 nach GND, einen Basiswiderstand zu einem AVR-Pin und die Software angepasst.
Jetzt ist 1,5s Ruhe, dann ist der Sender da.
Dabei ergab sich noch eine Eingeart der Arduiono-Geschichte:
Nach Rest sind alle AVR-Pins Eingang ohne PullUp, also hochohmig.
Ich hatte also die Basis meines Mute-Transistors über 3,3k an die 3,3V gelegt und wollte dann im Sketch mit Pin auf LOW und Ausgang am Anfang stumm schalten.
Das blieb Theorie, die Aruino-Lib setzt den Pin beim Initialisieren irgendwie nach eigener Meinung, mein Transistor war gesperrt und es rauschte fröhlich weiter...
Der Basiswiderstand hängt jetzt am Pin, es liegt definitv ein H-Pegel an, ob PullUp oder aktiv habe ich nicht nachgeschaut.
Die zweite Falle: das TEA-Modul hat an den NF-Ausgängen keine Koppelkondensatoren.
Last nach GND, also z.B. ein Lautstärke-Einstellregler 22k, stört nicht.
Der TDA7050 braucht auch nichts, als Schleifer am Eingang.
Nur: der TDA7050 liefer aus seinem Eingang eine Spannung und je nach Schleiferstellung lagen bis 2V am TEA5767-Ausgang.
Das verstand dieser nicht und blieb stumm... Also noch einen 1µ Koppel-C in die Leitung zwischen TEA und Poti und alles war gut.
Empänger, NF und AVR im Schrank unter dem Radio.
Antenne sind 30cm Wurfdraht, reicht hier in Berlin für den Berliner Rundfunk aus.
Der Mute-Transistor hängt auf der Rückseite der Lochrasterplatine.
Bei Fragen eine E-Mail schicken
Letzte Änderung am 04.10.2015