14.11.2020, 00:42
da mich diese Aktion ein paar Abende beschäftigt hat möchte ich eine kurze Beschreibung liefern von der andere profitieren können.
Es wird dieses Display zugrunde gelegt. Bedienung ohne encoder und Vorwärtsschalten der playlist über einen Sensor.
Stand der Edzelf-Software: 11/2020
die Verpackung und der Aufdruck verraten uns u.a. schon:
- den Chip: ST7735
- die Auflösung: 128x128Px
- die Schnittstelle: SPI
dieses Display findet man auch abgebildet im Handbuch von Edzelf. Die Informationen sind allerdings etwas zerstreut und nicht immer eindeutig. Und erst das Studium eines youtube-Videos, auf das Edzelf hinweist, brachte am Schluss den Erfolg.
Kommen wir erst mal zur Verkabelung:
LED - 3,3V
SCK - GPIO18
SDA - GPIO23
A0 - GPIO2
RESET - EN
CS - GPIO15
GND - Ground
VCC - 3,3V
es gibt auch Hinweise für VCC = 5V und einen Spannungsregler auf der Platine. Der LED-Pin für das backlight darf aber trotzdem nur mit 3,3V betrieben werden oder kann auch über einen GPIO zum dunkeltasten geschaltet werden. Ohne Spannung am LED-Pin bleibt das Display dunkel!
Die Konfiguration der software:
Im Abschnitt Esp32_radio:
als Displaytyp wird BLUETFT deklariert. Alle anderen Displaytypen sind auszukommentieren.
An der Stelle bitte auch CH376 sowie SDCARD auskommentieren, sofern die hardware nicht vorhanden oder nicht bestückt ist.
im Abschnitt defaultprefs:
falls das Radio mit Sensorweiterschaltung betrieben werden soll:
Aktivieren des Sensors touch4:
wegen Konflikt an GPIO13 Löschen der Zeile:
bei nicht bestücktem encoder müssen dessen Pin deaktiviert werden, damit sie sich nicht verselbstständigen:
im Abschnitt bluetft.h:
hier wird INITR_144GREENTAB aktiviert:
falls das display gedreht werden soll wird hier die rotation eingestellt:
an dieser Stelle wird die Auflösung angepasst:
es erwartet uns eine sehr schöne und informative Anzeige:
Es wird dieses Display zugrunde gelegt. Bedienung ohne encoder und Vorwärtsschalten der playlist über einen Sensor.
Stand der Edzelf-Software: 11/2020
die Verpackung und der Aufdruck verraten uns u.a. schon:
- den Chip: ST7735
- die Auflösung: 128x128Px
- die Schnittstelle: SPI
dieses Display findet man auch abgebildet im Handbuch von Edzelf. Die Informationen sind allerdings etwas zerstreut und nicht immer eindeutig. Und erst das Studium eines youtube-Videos, auf das Edzelf hinweist, brachte am Schluss den Erfolg.
Kommen wir erst mal zur Verkabelung:
LED - 3,3V
SCK - GPIO18
SDA - GPIO23
A0 - GPIO2
RESET - EN
CS - GPIO15
GND - Ground
VCC - 3,3V
es gibt auch Hinweise für VCC = 5V und einen Spannungsregler auf der Platine. Der LED-Pin für das backlight darf aber trotzdem nur mit 3,3V betrieben werden oder kann auch über einen GPIO zum dunkeltasten geschaltet werden. Ohne Spannung am LED-Pin bleibt das Display dunkel!
Die Konfiguration der software:
Im Abschnitt Esp32_radio:
als Displaytyp wird BLUETFT deklariert. Alle anderen Displaytypen sind auszukommentieren.
An der Stelle bitte auch CH376 sowie SDCARD auskommentieren, sofern die hardware nicht vorhanden oder nicht bestückt ist.
Code:
//#define CH376 // For CXH376 support (reading files from USB stick)
//#define SDCARD // For SD card support (reading files from SD card)
// Define (just one) type of display. See documentation.
#define BLUETFT // Works also for RED TFT 128x160
im Abschnitt defaultprefs:
falls das Radio mit Sensorweiterschaltung betrieben werden soll:
Aktivieren des Sensors touch4:
Code:
touch_04 = uppreset = 1 //GPIO13
wegen Konflikt an GPIO13 Löschen der Zeile:
Code:
gpio_13 = downvolume = 2
bei nicht bestücktem encoder müssen dessen Pin deaktiviert werden, damit sie sich nicht verselbstständigen:
Code:
pin_ir = -1 # GPIO Pin number for IR receiver VS1838B
pin_enc_clk = -1 # GPIO Pin number for rotary encoder "CLK"
pin_enc_dt = -1 # GPIO Pin number for rotary encoder "DT"
pin_enc_sw = -1 # GPIO Pin number for rotary encoder "SW"
im Abschnitt bluetft.h:
hier wird INITR_144GREENTAB aktiviert:
Code:
//tft->initR ( INITR_GREENTAB ) ; // Init TFT interface
//tft->initR ( INITR_REDTAB ) ; // Init TFT interface
//tft->initR ( INITR_BLACKTAB ) ; // Init TFT interface
tft->initR ( INITR_144GREENTAB ) ; // Init TFT interface
//tft->initR ( INITR_MINI160x80 ) ; // Init TFT interface
//tft->initR ( INITR_BLACKTAB ) ; // Init TFT interface (160x128)
falls das display gedreht werden soll wird hier die rotation eingestellt:
Zitat:#define dsp_setRotation() tft->setRotation ( 3 ) // Use landscape format (3 for upside down)
an dieser Stelle wird die Auflösung angepasst:
Code:
#define dsp_getwidth() 128 // Adjust to your display
#define dsp_getheight() 128 // Get height of screen
es erwartet uns eine sehr schöne und informative Anzeige:
Gruß,
Jupp
-----------------------------
was du baust ist immer mit dir verbunden
(Lego)
Einsamkeit ist nur ein Mangel an Technologie
(@beetlebum)
Jupp
-----------------------------
was du baust ist immer mit dir verbunden
(Lego)
Einsamkeit ist nur ein Mangel an Technologie
(@beetlebum)