Исправлены номера входов для опторазвязок. Произведены косметические изменения и убрано ненужное.

This commit is contained in:
Калинин Сергей Валерьевич 2025-01-27 19:31:30 +03:00
parent e05acef63c
commit d7cefe193f

View File

@ -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 " ";
}
}
@ -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);