From d7cefe193f72f5e357aa82f4a2e13898fcf5a063 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=D0=9A=D0=B0=D0=BB=D0=B8=D0=BD=D0=B8=D0=BD=20=D0=A1=D0=B5?= =?UTF-8?q?=D1=80=D0=B3=D0=B5=D0=B9=20=D0=92=D0=B0=D0=BB=D0=B5=D1=80=D1=8C?= =?UTF-8?q?=D0=B5=D0=B2=D0=B8=D1=87?= Date: Mon, 27 Jan 2025 19:31:30 +0300 Subject: [PATCH] =?UTF-8?q?=D0=98=D1=81=D0=BF=D1=80=D0=B0=D0=B2=D0=BB?= =?UTF-8?q?=D0=B5=D0=BD=D1=8B=20=D0=BD=D0=BE=D0=BC=D0=B5=D1=80=D0=B0=20?= =?UTF-8?q?=D0=B2=D1=85=D0=BE=D0=B4=D0=BE=D0=B2=20=D0=B4=D0=BB=D1=8F=20?= =?UTF-8?q?=D0=BE=D0=BF=D1=82=D0=BE=D1=80=D0=B0=D0=B7=D0=B2=D1=8F=D0=B7?= =?UTF-8?q?=D0=BE=D0=BA.=20=D0=9F=D1=80=D0=BE=D0=B8=D0=B7=D0=B2=D0=B5?= =?UTF-8?q?=D0=B4=D0=B5=D0=BD=D1=8B=20=D0=BA=D0=BE=D1=81=D0=BC=D0=B5=D1=82?= =?UTF-8?q?=D0=B8=D1=87=D0=B5=D1=81=D0=BA=D0=B8=D0=B5=20=D0=B8=D0=B7=D0=BC?= =?UTF-8?q?=D0=B5=D0=BD=D0=B5=D0=BD=D0=B8=D1=8F=20=D0=B8=20=D1=83=D0=B1?= =?UTF-8?q?=D1=80=D0=B0=D0=BD=D0=BE=20=D0=BD=D0=B5=D0=BD=D1=83=D0=B6=D0=BD?= =?UTF-8?q?=D0=BE=D0=B5.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../control-panel-for-for-dac.ino | 139 +++++++++--------- 1 file changed, 67 insertions(+), 72 deletions(-) diff --git a/control-panel-for-for-dac/control-panel-for-for-dac.ino b/control-panel-for-for-dac/control-panel-for-for-dac.ino index ea0dbef..fe016a2 100644 --- a/control-panel-for-for-dac/control-panel-for-for-dac.ino +++ b/control-panel-for-for-dac/control-panel-for-for-dac.ino @@ -10,15 +10,14 @@ // Выходы для управления реле (вкл.вкл ЦАП/Блютуз) #define RELAY_POWER_USB 7 #define RELAY_POWER_BT 6 -#define RELAY_POWER_MP3 10 +//#define RELAY_POWER_MP3 10 #define RELAY_OUT_BT_LEFT 8 #define RELAY_OUT_BT_RIGHT 9 -#define RELAY_OUT_MP3_LEFT 11 -#define RELAY_OUT_MP3_RIGHT 12 + // Индикаторы включения (подключения) входов -#define OPTOCOUPLE_USB 13 -#define OPTOCOUPLE_COAX 14 -#define OPTOCOUPLE_BT 15 +#define OPTOCOUPLE_USB 10 +#define OPTOCOUPLE_COAX 11 +#define OPTOCOUPLE_BT 12 // Входы звукового сигнала для анализатора спектра #define AUDIO_IN_L 0 #define AUDIO_IN_R 1 @@ -35,7 +34,7 @@ #define GAIN_CONTROL 0 // ручная настройка потенциометром на громкость (1 - вкл, 0 - выкл) #define AUTO_GAIN 0 // автонастройка по громкости (экспериментальная функция) -#define VOL_THR 35 // порог тишины (ниже него отображения на матрице не будет) +#define VOL_THR 30 // порог тишины (ниже него отображения на матрице не будет) #define LOW_PASS 30 // нижний порог чувствительности шумов (нет скачков при отсутствии звука) #define DEF_GAIN 80 // максимальный порог по умолчанию (при GAIN_CONTROL игнорируется) @@ -85,11 +84,6 @@ void setup() { lcdVuMeter.init(); lcdVuMeter.backlight(); lcdVuMeter.clear(); - lcdVuMeter.setCursor(0, 0); - lcdVuMeter.print("R"); -// lcdVuMeter.createChar(4,znak_r); - lcdVuMeter.setCursor(0, 1); - lcdVuMeter.print("L"); lcdService.init(); lcdService.backlight(); lcdService.clear(); @@ -102,11 +96,11 @@ void setup() { // Выходы для управления реле (вкл.вкл ЦАП/Блютуз) pinMode(RELAY_POWER_USB, OUTPUT); pinMode(RELAY_POWER_BT, OUTPUT); - pinMode(RELAY_POWER_MP3, OUTPUT); +// pinMode(RELAY_POWER_MP3, OUTPUT); pinMode(RELAY_OUT_BT_LEFT, OUTPUT); pinMode(RELAY_OUT_BT_RIGHT, OUTPUT); - pinMode(RELAY_OUT_MP3_LEFT, OUTPUT); - pinMode(RELAY_OUT_MP3_RIGHT, OUTPUT); +// pinMode(RELAY_OUT_MP3_LEFT, OUTPUT); +// pinMode(RELAY_OUT_MP3_RIGHT, OUTPUT); // Входы индикаторов с USB ЦАП pinMode(OPTOCOUPLE_USB, INPUT_PULLUP); @@ -133,7 +127,7 @@ void setup() { } else { usb = EEPROM.read(10); bluetooth = EEPROM.read(12); - mp3 = EEPROM.read(14); +// mp3 = EEPROM.read(14); } // поднимаем частоту опроса аналогового порта до 38.4 кГц, по теореме @@ -151,21 +145,21 @@ void setup() { if (usb) { digitalWrite(RELAY_POWER_BT,HIGH); - digitalWrite(RELAY_POWER_MP3,HIGH); +// digitalWrite(RELAY_POWER_MP3,HIGH); digitalWrite(RELAY_POWER_USB,HIGH); delay(500); digitalWrite(RELAY_OUT_BT_LEFT,HIGH); digitalWrite(RELAY_OUT_BT_RIGHT,HIGH); - digitalWrite(RELAY_OUT_MP3_LEFT,HIGH); - digitalWrite(RELAY_OUT_MP3_RIGHT,HIGH); +// digitalWrite(RELAY_OUT_MP3_LEFT,HIGH); +// digitalWrite(RELAY_OUT_MP3_RIGHT,HIGH); } if (bluetooth) { digitalWrite(RELAY_POWER_USB,HIGH); - digitalWrite(RELAY_POWER_MP3,HIGH); +// digitalWrite(RELAY_POWER_MP3,HIGH); delay(500); - digitalWrite(RELAY_OUT_MP3_LEFT,HIGH); - digitalWrite(RELAY_OUT_MP3_RIGHT,HIGH); +// digitalWrite(RELAY_OUT_MP3_LEFT,HIGH); +// digitalWrite(RELAY_OUT_MP3_RIGHT,HIGH); delay(1000); digitalWrite(RELAY_OUT_BT_LEFT,LOW); digitalWrite(RELAY_OUT_BT_RIGHT,LOW); @@ -191,19 +185,19 @@ void lcdChars() { // Получаем тип подключенного входа к USB ЦАПу String setUSBinput() { if (!digitalRead(OPTOCOUPLE_USB) && usb) { - return "Input: USB"; + return "input: USB "; } else if (!digitalRead(OPTOCOUPLE_COAX) && usb) { - return "Input: Coax"; + return "input: Coaxial"; } else { - return "Input: None"; + return "input: Off "; } } // Получаем статус подключения устройства к bluetooth String setBTstatus() { if (!digitalRead(OPTOCOUPLE_BT) && bluetooth) { - return "Connected"; + return " connected"; } else { - return "Connecting.."; + return " "; } } @@ -215,7 +209,7 @@ void updateMenu() { break; case 1: lcdService.clear(); - lcdService.print(">USB DAC"); + lcdService.print("> USB DAC"); lcdService.setCursor(2, 1); if(usb){ lcdService.print("On"); @@ -225,7 +219,7 @@ void updateMenu() { break; case 2: lcdService.clear(); - lcdService.print(">Bluetooth"); + lcdService.print("> Bluetooth"); lcdService.setCursor(2, 1); if(bluetooth){ lcdService.print("On"); @@ -233,17 +227,17 @@ void updateMenu() { lcdService.print("Off"); } break; +// case 3: +// lcdService.clear(); +// lcdService.print(">MP3 module"); +// lcdService.setCursor(2, 1); +// if(mp3){ +// lcdService.print("On"); +// }else{ +// lcdService.print("Off"); +// } +// break; case 3: - lcdService.clear(); - lcdService.print(">MP3 module"); - lcdService.setCursor(2, 1); - if(mp3){ - lcdService.print("On"); - }else{ - lcdService.print("Off"); - } - break; - case 4: menu = 0; menuShow = false; lcdService.clear(); @@ -259,13 +253,13 @@ void executeMenuAction() { case 2: actionBT(); break; - case 3: - actionMP3(); - break; +// case 3: +// actionMP3(); +// break; } EEPROM.put(10, usb); EEPROM.put(12, bluetooth); - EEPROM.put(14, mp3); +// EEPROM.put(14, mp3); } void actionUSB() { @@ -273,13 +267,13 @@ void actionUSB() { lcdService.setCursor(2,1); lcdService.print("On "); digitalWrite(RELAY_POWER_BT,HIGH); - digitalWrite(RELAY_POWER_MP3,HIGH); +// digitalWrite(RELAY_POWER_MP3,HIGH); digitalWrite(RELAY_POWER_USB,HIGH); delay(500); digitalWrite(RELAY_OUT_BT_LEFT,HIGH); digitalWrite(RELAY_OUT_BT_RIGHT,HIGH); - digitalWrite(RELAY_OUT_MP3_LEFT,HIGH); - digitalWrite(RELAY_OUT_MP3_RIGHT,HIGH); +// digitalWrite(RELAY_OUT_MP3_LEFT,HIGH); +// digitalWrite(RELAY_OUT_MP3_RIGHT,HIGH); usb = true; bluetooth = false; mp3 = false; @@ -292,10 +286,10 @@ void actionBT() { lcdService.setCursor(2,1); lcdService.print("On "); digitalWrite(RELAY_POWER_USB,HIGH); - digitalWrite(RELAY_POWER_MP3,HIGH); +// digitalWrite(RELAY_POWER_MP3,HIGH); delay(500); - digitalWrite(RELAY_OUT_MP3_LEFT,HIGH); - digitalWrite(RELAY_OUT_MP3_RIGHT,HIGH); +// digitalWrite(RELAY_OUT_MP3_LEFT,HIGH); +// digitalWrite(RELAY_OUT_MP3_RIGHT,HIGH); delay(1000); digitalWrite(RELAY_OUT_BT_LEFT,LOW); digitalWrite(RELAY_OUT_BT_RIGHT,LOW); @@ -307,24 +301,24 @@ void actionBT() { // delay(1500); } -void actionMP3() { -// lcdService.clear(); - lcdService.setCursor(2,1); - lcdService.print("On "); - digitalWrite(RELAY_POWER_USB,HIGH); - digitalWrite(RELAY_POWER_BT,HIGH); - delay(500); - digitalWrite(RELAY_OUT_BT_LEFT,HIGH); - digitalWrite(RELAY_OUT_BT_RIGHT,HIGH); - delay(1000); - digitalWrite(RELAY_OUT_MP3_LEFT,LOW); - digitalWrite(RELAY_OUT_MP3_RIGHT,LOW); - digitalWrite(RELAY_POWER_MP3,LOW); - usb = false; - bluetooth = false; - mp3 = true; - delay(1500); -} +//void actionMP3() { +//// lcdService.clear(); +// lcdService.setCursor(2,1); +// lcdService.print("On "); +// digitalWrite(RELAY_POWER_USB,HIGH); +// digitalWrite(RELAY_POWER_BT,HIGH); +// delay(500); +// digitalWrite(RELAY_OUT_BT_LEFT,HIGH); +// digitalWrite(RELAY_OUT_BT_RIGHT,HIGH); +// delay(1000); +// digitalWrite(RELAY_OUT_MP3_LEFT,LOW); +// digitalWrite(RELAY_OUT_MP3_RIGHT,LOW); +// digitalWrite(RELAY_POWER_MP3,LOW); +// usb = false; +// bluetooth = false; +// mp3 = true; +// delay(1500); +//} uint32_t btnTimer = 0; @@ -335,7 +329,8 @@ void loop() { if(!menuShow){ if(usb){ - lcdService.print("USB DAC"); + lcdService.print("USB | S/PDIF"); + lcdService.setCursor(0,1); lcdService.print(setUSBinput()); // actionUSB(); } @@ -345,10 +340,10 @@ void loop() { lcdService.print(setBTstatus()); // actionBT(); } - if(mp3){ - lcdService.print("MP3 module"); -// actionMP3(); - } +// if(mp3){ +// lcdService.print("MP3 module"); +//// actionMP3(); +// } } // bool btnMenuState = digitalRead(BTN_MENU); // bool btnExecuteState = digitalRead(BTN_EXECUTE);