die bunte Knutschkugel baute ich auf Internetradio um. Das LED-Panel an der Front wich einem 2,4" Display. Die Hauptplatine ist zwar im Gerät verblieben, aber nicht mehr in Betrieb. Damit sind auch alle Buchsen und Bedienelemente physikalisch erhalten geblieben und hinterlassen keine Löcher im Gehäuse. Aktiv ist aber nur noch die Netzbuchse und das eingebaute Netzteil. Das Radio wird komplett über das Touchdisplay gesteuert. Eine andere Möglichkeit ist in der Software nicht vorgesehen. Und da ich ein Pintel-Stereoboard mit eingebauten NF-Verstärkern eingesetzt hatte fiel auch die Möglichkeit eines extra Lautstärkereglers weg.
Das eingebaute Netzteil in der hinteren Gehäuseschale bekam zur Spannungsanpassung ein LM317-Modul.
in der vorderen Schale ist die Pintelplatine in einen eingeklebten Rahmen eingeschoben:
Ursprünglich war die Trägerplatine eines meiner Experimentierboards und sollte noch ersetzt werden. Ich habe mich aber kurzfristig entschieden sie zu belassen.
Trägerplatte und Pintelboard:
ein Blick von oben ohne CD-Laufwerk und Hauptplatine:
und die Rückansicht der vorderen Schale:
aber nun zur Software
Diese ist hier zu finden:
ich benutzte eine Variante für das CYD-Display ESP32-2432S028R und änderte den sketch passend für meine Hardware um.
im Detail:
das ist die originale Belegung des CYD:
-DUSER_SETUP_LOADED -DILI9341_2_DRIVER -DTFT_WIDTH=240 -DTFT_HEIGHT=320 -DUSE_HSPI_PORT -DTFT_MISO=12 -DTFT_MOSI=13 -DTFT_SCLK=14 -DTFT_CS=15 -DTFT_DC=2 -DTFT_RST=-1 -DTFT_BL=21 #define XPT2046_IRQ 36 #define XPT2046_MOSI 32 #define XPT2046_MISO 39 #define XPT2046_CLK 25 #define XPT2046_CS 33 cfg.pin_bl = 21;
XPT2046_CLK 25 liegt also auf 25, da hat Pintel aber I2S, und GPIO 39 hat Pintel eingespart. Ich hab dann auf VSPI gewechselt.
Dann muss man noch etwas wissen. Nämlich TP_MISO und TP_MOSI sind auf dem Display mit T_out und T_din bezeichnet.
Trotzdem ging touch noch nicht. Bis ich endlich gemerkt habe dass es doch geht, aber die Tastenfunktionen auf dem Kopf stehen! Dafür gibt es einen Rotations-Parameter, steht ja auch in chinesisch dahinter:
cfg.offset_rotation = 2; // 表示とタッチの向きのが一致しない場合の調整 0~7の値で設定
Daraus resultierte nun folgende Konfiguration:
#define BCLK 27 // I2S pins #define LRC 26 // I2S pins #define DIN 25 // I2S pins TFT (HSPI): cfg.pin_sclk = 14; // SPIのSCLKピン番号を設定 SCK cfg.pin_mosi = 13; // SPIのMOSIピン番号を設定 SDI cfg.pin_miso = 12; // SPIのMISOピン番号を設定 (-1 = disable) SDO cfg.pin_dc = 2; // SPIのD/C ピン番号を設定 (-1 = disable) RS cfg.pin_cs = 15; cfg.pin_rst = -1; TOUCH: cfg.pin_sclk = 18; // VSPI SCLKが接続されているピン番号, TP CLK cfg.pin_mosi = 23; // VSPI MOSIが接続されているピン番号, TP DIN cfg.pin_miso = 19; // VSPI MISOが接続されているピン番号, TP DOUT cfg.pin_cs = 5; // VSPI CS が接続されているピン番号, TP CS cfg.pin_int = 36; cfg.pin_bl = 21;
in dem Video ist die Bedienung zu sehen. In den unteren Ecken die Lautstärke in 5er Schritten. Die Senderumschaltung in 1er oder 10er Schritten. Das tanzende Männchen mit dem Kopfhörer kann man durch Antippen wegschalten, gleiches gilt für die Level-Anzeige. Die Farben der Tonbandspulen verändert sich durch antippen. Es gibt noch weitere Feinheiten, die man bei macsbug nachschauen kann.













Keine Kommentare:
Kommentar veröffentlichen