Added mono/stereo toggle to touch

This commit is contained in:
Sjef Verhoeven PE5PVB
2024-10-25 13:05:15 +02:00
parent 6d7cdeb9ae
commit c26e71c61e
4 changed files with 41 additions and 27 deletions
+4 -7
View File
@@ -627,21 +627,19 @@ void setup() {
if (displayflip == 0) {
#ifdef ARS
tft.setRotation(0);
#elif defined(DEEPELEC_DP_66X)
tft.setRotation(1);
#else
tft.setRotation(3);
#endif
} else {
#ifdef ARS
tft.setRotation(2);
#elif defined(DEEPELEC_DP_66X)
tft.setRotation(3);
#else
tft.setRotation(1);
#endif
}
tft.invertDisplay(!invertdisplay);
pinMode(BANDBUTTON, INPUT);
pinMode(MODEBUTTON, INPUT);
pinMode(BWBUTTON, INPUT);
@@ -778,7 +776,6 @@ void setup() {
EEPROM.commit();
}
tft.invertDisplay(!invertdisplay);
tft.setTouch(TouchCalData);
tft.fillScreen(BackgroundColor);
tftPrint(0, myLanguage[language][8], 160, 3, PrimaryColor, PrimaryColorSmooth, 28);
@@ -4452,12 +4449,12 @@ void DefaultSettings() {
#ifdef DEEPELEC_DP_66X
EEPROM.writeByte(EE_BYTE_ROTARYMODE, 1);
EEPROM.writeByte(EE_BYTE_INVERTDISPLAY, 0);
EEPROM.writeByte(EE_BYTE_DISPLAYFLIP, 0);
EEPROM.writeByte(EE_BYTE_DISPLAYFLIP, 1);
EEPROM.writeByte(EE_BYTE_HARDWARE_MODEL, PORTABLE_TOUCH_ILI9341);
#else
EEPROM.writeByte(EE_BYTE_ROTARYMODE, 0);
EEPROM.writeByte(EE_BYTE_INVERTDISPLAY, 1);
EEPROM.writeByte(EE_BYTE_DISPLAYFLIP, 1);
EEPROM.writeByte(EE_BYTE_DISPLAYFLIP, 0);
EEPROM.writeByte(EE_BYTE_HARDWARE_MODEL, BASE_ILI9341);
#endif
+1 -1
View File
@@ -5,6 +5,6 @@
// #define HAS_AIR_BAND // uncomment to enable Air Band(Make sure you have Air Band extend board)
// #define CHINA_PORTABLE // uncomment for China Portable build (Simplified Chinese)
#define DEEPELEC_DP_66X // uncomment for DEEPELEC Portable DP-66X build (Simplified Chinese)
// #define DEEPELEC_DP_66X // uncomment for DEEPELEC Portable DP-66X build (Simplified Chinese)
#endif
+12
View File
@@ -4,6 +4,17 @@
#include "config.h"
void doTouchEvent(uint16_t x, uint16_t y) {
if (seek) radio.setUnMute();
seek = false;
if (scandxmode) {
cancelDXScan();
} else {
if (!menu) { // All pages except menu
if (x > 40 && x < 80 && y > 0 && y < 25 && band < BAND_GAP) { // ---------------------
doStereoToggle();
} // Stereo toggle
}
if (!menu && !advancedRDS && !seek && !afscreen) { // Normal radio mode
if (x > 0 && x < 320 && y > 180 && y < 240 && band < BAND_GAP) { // -----------------
leave = true;
@@ -27,4 +38,5 @@ void doTouchEvent(uint16_t x, uint16_t y) {
return;
}
}
}
}
+5
View File
@@ -3,13 +3,16 @@
#include <Arduino.h>
#include <TFT_eSPI.h>
#include "TEF6686.h"
extern TFT_eSPI tft;
extern TEF6686 radio;
extern bool advancedRDS;
extern bool afscreen;
extern bool leave;
extern bool menu;
extern bool scandxmode;
extern bool seek;
extern byte band;
@@ -21,4 +24,6 @@ extern void SelectBand();
extern void BuildAdvancedRDS();
extern void doBandToggle();
extern void doTuneMode();
extern void doStereoToggle();
extern void cancelDXScan();
#endif