Тема: ESP32-C3 TDA7719 TFT9341
I tested the compilation and it worked. I uploaded it to the board, but there is no screenshot. I don't know where the problem is.
#include <TFT_eSPI.h> // Hardware-specific library
#include <SPI.h>
#include <TDA7719.h>
#include <Encoder.h>
#include <EEPROM.h>
//#include <MsTimer2.h>
//#define TFT_MOSI PIN_D7 //
//#define TFT_SCLK PIN_D5 //
//#define TFT_CS PIN_D6 // Chip select control
//#define TFT_DC PIN_D4 // Data Command control pin
//#define TFT_RST PIN_D3
TDA7719 tda;
TFT_eSPI tft = TFT_eSPI(); // Invoke custom library
Encoder myEnc(10, 9);//CLK, DT encoder connection
int k=1,i,q=1,y=1,w1=1,w2=1,w3=1,w4=1,w5=1,w6=1,w7=1,w8=1,w9=1,w10=1,w11=1,w12=1,w13=1,w14=1,w15=1,w16=1,w17=1,w18=1,w19=1,w20=1,w21=1;
int v0=1,v1=1,v2=1,v3=1,v4=1,v5=1,v6=1,v7=1,v8=1,v9=1,v10=1,v11=1,v12=1,v13=1,v14=1,v15=1,v16=1,v17=1,v18=1,v19=1,v20=1;
int w=1,ccc,xxx=1,menu=0,menu_old,vol,in,in0,loun,loun_f,vol_att,treb,treb_f,mid,mid_q,bass,bass_q,sub_f,phase,mid_f,bass_f,att_lf,att_rf,att_lr,att_rr,att_l,att_r,vol0,vol1,vol2,vol3,vol4,vol5;
unsigned long newPosition,oldPosition = -999,newPosition1,oldPosition1 = -999;
//byte power;
//long time0,times1;
// Rotary Encoder Inputs
#define encoderCLK 10 //S3
#define encoderDT 9 //S2
#define encoderSW 16 //D0
void setup(void) {
Serial.begin(9600);
pinMode (encoderCLK,INPUT);
pinMode (encoderDT,INPUT);
pinMode (encoderSW, INPUT);
vol = EEPROM.read(0)-79;treb = EEPROM.read(1)-15;treb_f = EEPROM.read(2);mid = EEPROM.read(3)-15;mid_f = EEPROM.read(4);bass = EEPROM.read(5)-15;bass_f = EEPROM.read(6);
loun = EEPROM.read(7)-15;loun_f = EEPROM.read(8);att_lf=EEPROM.read(9)-30;att_rf=EEPROM.read(10)-30;att_lr=EEPROM.read(11)-30;att_rr=EEPROM.read(12)-30;
att_l=EEPROM.read(13)-30;att_r=EEPROM.read(14)-30;sub_f=EEPROM.read(15);phase=EEPROM.read(16);bass_q=EEPROM.read(17);mid_q=EEPROM.read(18);
in0=EEPROM.read(19);vol0=EEPROM.read(20)-15;vol1=EEPROM.read(21)-15;vol2=EEPROM.read(22)-15;vol3=EEPROM.read(23)-15;vol4=EEPROM.read(24)-15;inn();vol5=EEPROM.read(25)-15;inn();
delay(300);audio();// we transfer all settings from memory to tda
tft.begin();
//tft.init();
tft.setRotation(1);
for(int i=0; i<2; i++){
tft.drawLine(0+i,0+i,319-i*2,239-i*2,TFT_OLIVE);} //draw the outer border (0+i,0+i,319-i*2,239-i*2)
//tft.drawRFrame(10,10,299,219,8,TFT_OLIVE); //draw an inner border with rounded corners
tft.fillScreen(TFT_BLACK);
tft.setTextSize(3);
tft.setTextColor(TFT_YELLOW);
tft.setCursor(35, 80);
tft.print("AUDIO PROCEESOR");
tft.setTextColor(TFT_GREEN);
tft.setCursor(60, 120);
tft.print("TONE CONTROL");
tft.setCursor(120, 160);
tft.print("HI-END");
}
void to_Timer(){newPosition = myEnc.read()/4;} // interrupt function
void loop() {
if(digitalRead(encoderSW)==LOW){xxx++;myEnc.write(0);millis();delay(200);screen();k=1;if(xxx>1){xxx=0;}}// encoder button activation analogRead
tft.setTextSize(1);
set_menu();
/////////////////////////////////////////// processing encoder commands
if(menu==0&&xxx==1){
if (newPosition != oldPosition) {
oldPosition = newPosition;
vol=vol+newPosition;myEnc.write(0);newPosition=0;w=1;w1=1;if(vol>0){vol=0;}if(vol<-79){vol=-79;}audio();}}
if(menu==1&&xxx==1){
if (newPosition != oldPosition) {
oldPosition = newPosition;
treb=treb+newPosition;myEnc.write(0);newPosition=0;w=1;w2=1;if(treb>15){treb=15;}if(treb<-15){treb=-15;}audio();}}
if(menu==2&&xxx==1){
if (newPosition != oldPosition) {
oldPosition = newPosition;
mid=mid+newPosition;myEnc.write(0);newPosition=0;w=1;w3=1;if(mid>15){mid=15;}if(mid<-15){mid=-15;}audio();}}
if(menu==3&&xxx==1){
if (newPosition != oldPosition) {
oldPosition = newPosition;
bass=bass+newPosition;myEnc.write(0);newPosition=0;w=1;w4=1;if(bass>15){bass=15;}if(bass<-15){bass=-15;}audio();}}
if(menu==4&&xxx==1){
if (newPosition != oldPosition) {
oldPosition = newPosition;
in0=in0+newPosition;myEnc.write(0);newPosition=0;w=1;w5=1;w6=1;if(in0>5){in0=0;}if(in0<0){in0=5;}
inn();set_vol_att();audio();}}
inn();set_vol_att();
if(menu==5&&xxx==1){inn();
set_vol_att();
if (newPosition != oldPosition) {
oldPosition = newPosition;
vol_att=vol_att+newPosition;myEnc.write(0);newPosition=0;w=1;w6=1;w5=1;if(vol_att<-15){vol_att=-15;}if(vol_att>15){vol_att=15;}audio();}inn();
switch(in){case 0: vol0 = vol_att;break;case 1: vol1 = vol_att;break;case 2: vol2 = vol_att;break;case 4: vol5=vol_att;break;case 5: vol3 = vol_att;break;case 6: vol4 = vol_att;break;}}
if(menu==6&&xxx==1){
if (newPosition != oldPosition) {
oldPosition = newPosition;
att_lf=att_lf+newPosition;myEnc.write(0);newPosition=0;w=1;w7=1;if(att_lf>0){att_lf=0;}if(att_lf<-30){att_lf=-30;}audio();}}
if(menu==7&&xxx==1){
if (newPosition != oldPosition) {
oldPosition = newPosition;
att_rf=att_rf+newPosition;myEnc.write(0);newPosition=0;w=1;w8=1;if(att_rf>0){att_rf=0;}if(att_rf<-30){att_rf=-30;}audio();}}
if(menu==8&&xxx==1){
if (newPosition != oldPosition) {
oldPosition = newPosition;
att_lr=att_lr+newPosition;myEnc.write(0);newPosition=0;w=1;w9=1;if(att_lr>0){att_lr=0;}if(att_lr<-30){att_lr=-30;}audio();}}
if(menu==9&&xxx==1){
if (newPosition != oldPosition) {
oldPosition = newPosition;
att_rr=att_rr+newPosition;myEnc.write(0);newPosition=0;w=1;w10=1;if(att_rr>0){att_rr=0;}if(att_rr<-30){att_rr=-30;}audio();}}
if(menu==10&&xxx==1){
if (newPosition != oldPosition) {
oldPosition = newPosition;
att_l=att_l+newPosition;myEnc.write(0);newPosition=0;w=1;w11=1;if(att_l>0){att_l=0;}if(att_l<-30){att_l=-30;}audio();}}
if(menu==11&&xxx==1){
if (newPosition != oldPosition) {
oldPosition = newPosition;
att_r=att_r+newPosition;myEnc.write(0);newPosition=0;w=1;w12=1;if(att_r>0){att_r=0;}if(att_r<-30){att_r=-30;}audio();}}
if(menu==12&&xxx==1){
if (newPosition != oldPosition) {
oldPosition = newPosition;
loun_f=loun_f+newPosition;myEnc.write(0);newPosition=0;w=1;w13=1;if(loun_f>3){loun_f=0;}if(loun_f<0){loun_f=3;}audio();}}
if(menu==13&&xxx==1){
if (newPosition != oldPosition) {
oldPosition = newPosition;
loun=loun+newPosition;myEnc.write(0);newPosition=0;w=1;w14=1;if(loun>0){loun=0;}if(loun<-15){loun=-15;}audio();}}
if(menu==14&&xxx==1){
if (newPosition != oldPosition) {
oldPosition = newPosition;
treb_f=treb_f+newPosition;myEnc.write(0);newPosition=0;w=1;w15=1;if(treb_f>3){treb_f=0;}if(treb_f<0){treb_f=3;}audio();}}
if(menu==15&&xxx==1){
if (newPosition != oldPosition) {
oldPosition = newPosition;
mid_f=mid_f+newPosition;myEnc.write(0);newPosition=0;w=1;w16=1;if(mid_f>3){mid_f=0;}if(mid_f<0){mid_f=3;}audio();}}
if(menu==16&&xxx==1){
if (newPosition != oldPosition) {
oldPosition = newPosition;
bass_f=bass_f+newPosition;myEnc.write(0);newPosition=0;w=1;w17=1;if(bass_f>3){bass_f=0;}if(bass_f<0){bass_f=3;}audio();}}
if(menu==17&&xxx==1){
if (newPosition != oldPosition) {
oldPosition = newPosition;
sub_f=sub_f+newPosition;myEnc.write(0);newPosition=0;w=1;w18=1;if(sub_f>3){sub_f=0;}if(sub_f<0){sub_f=3;}audio();}}
if(menu==18&&xxx==1){
if (newPosition != oldPosition) {
oldPosition = newPosition;
mid_q=mid_q+newPosition;myEnc.write(0);newPosition=0;w=1;w19=1;if(mid_q>3){mid_q=0;}if(mid_q<0){mid_q=3;}audio();}}
if(menu==19&&xxx==1){
if (newPosition != oldPosition) {
oldPosition = newPosition;
bass_q=bass_q+newPosition;myEnc.write(0);newPosition=0;w=1;w20=1;if(bass_q>3){bass_q=0;}if(bass_q<0){bass_q=3;}audio();}}
if(menu==20&&xxx==1){
if (newPosition != oldPosition) {
oldPosition = newPosition;
phase=phase+newPosition;myEnc.write(0);newPosition=0;w=1;w21=1;if(phase>1){phase=0;}if(phase<0){phase=1;}audio();}}
set_menu();
///// Output of tda adjustment names
if(v0==1){ if(menu==0) if(xxx==1)tft.setTextColor(TFT_ORANGE);
else tft.setTextColor(TFT_WHITE); // 0xf5,0xe0,0x12
else tft.setTextColor(TFT_BLUE);tft.setCursor(5,13);tft.print("VOLUME");tft.setCursor(290,13);tft.print("dB"); v0=0;}
if(v1==1){ if(menu==1) if(xxx==1)tft.setTextColor(TFT_ORANGE);
else tft.setTextColor(TFT_WHITE);
else tft.setTextColor(TFT_YELLOW);tft.setCursor(5,30);tft.print("TREBLE");tft.setCursor(290,30);tft.print("dB"); v1=0;}
if(v2==1){ if(menu==2) if(xxx==1)tft.setTextColor(TFT_ORANGE);
else tft.setTextColor(TFT_WHITE);
else tft.setTextColor(TFT_GREEN);tft.setCursor(5,45);tft.print("MIDDLE");tft.setCursor(290,45);tft.print("dB");v2=0;}
if(v3==1){ if(menu==3) if(xxx==1)tft.setTextColor(TFT_ORANGE);
else tft.setTextColor(TFT_WHITE);
else tft.setTextColor(TFT_RED);tft.setCursor(5,60);tft.print("BASS ");tft.setCursor(290,60);tft.print("dB");v3=0;}
if(v4==1){ if(menu==4) if(xxx==1)tft.setTextColor(TFT_ORANGE);
else tft.setTextColor(255,255,255);
else tft.setTextColor(TFT_OLIVE);tft.setCursor(5,75);tft.print("IN ");v4=0;}
if(v5==1){ if(menu==5) if(xxx==1)tft.setTextColor(TFT_ORANGE);
else tft.setTextColor(TFT_WHITE);
else tft.setTextColor(TFT_OLIVE);tft.setCursor(160,75);tft.print("ATT");tft.setCursor(290,75);tft.print("dB");v5=0;}
if(v6==1){ if(menu==6) if(xxx==1)tft.setTextColor(TFT_ORANGE);
else tft.setTextColor(TFT_WHITE);
else tft.setTextColor(TFT_OLIVE);tft.setCursor(5,90);tft.print("ATT LF");v6=0;}
if(v7==1){ if(menu==7) if(xxx==1)tft.setTextColor(TFT_ORANGE);
else tft.setTextColor(255,255,255);
else tft.setTextColor(TFT_OLIVE);tft.setCursor(160,90);tft.print("ATT RF");v7=0;}
if(v8==1){ if(menu==8) if(xxx==1)tft.setTextColor(TFT_ORANGE);
else tft.setTextColor(TFT_WHITE);
else tft.setTextColor(TFT_OLIVE);tft.setCursor(5,105);tft.print("ATT LR");v8=0;}
if(v9==1){ if(menu==9) if(xxx==1)tft.setTextColor(TFT_ORANGE);
else tft.setTextColor(TFT_WHITE);
else tft.setTextColor(TFT_OLIVE);tft.setCursor(160,105);tft.print("ATT RR");v9=0;}
if(v10==1){ if(menu==10) if(xxx==1)tft.setTextColor(TFT_ORANGE);
else tft.setTextColor(TFT_WHITE);
else tft.setTextColor(TFT_OLIVE);tft.setCursor(5,120);tft.print("ATT SL");v10=0;}
if(v11==1){ if(menu==11) if(xxx==1)tft.setTextColor(TFT_ORANGE);
else tft.setTextColor(TFT_WHITE);
else tft.setTextColor(TFT_OLIVE);tft.setCursor(160,120);tft.print("ATT SR");v11=0;}
if(v12==1){ if(menu==12) if(xxx==1)tft.setTextColor(TFT_ORANGE);
else tft.setTextColor(TFT_WHITE);
else tft.setTextColor(TFT_OLIVE);tft.setCursor(5,135);tft.print("LN");v12=0;}
if(v13==1){ if(menu==13) if(xxx==1)tft.setTextColor(TFT_ORANGE);
else tft.setTextColor(TFT_WHITE);
else tft.setTextColor(TFT_OLIVE);tft.setCursor(180,135);tft.print("ATT");v13=0;}
if(v14==1){ if(menu==14) if(xxx==1)tft.setTextColor(TFT_ORANGE);
else tft.setTextColor(TFT_WHITE);
else tft.setTextColor(TFT_OLIVE);tft.setCursor(5,150);tft.print("Treb CF");v14=0;}
if(v15==1){ if(menu==15) if(xxx==1)tft.setTextColor(TFT_ORANGE);
else tft.setTextColor(TFT_WHITE);
else tft.setTextColor(128, 128, 0);tft.setCursor(5,165);tft.print("Midd CF");v15=0;}
if(v16==1){ if(menu==16) if(xxx==1)tft.setTextColor(TFT_ORANGE);
else tft.setTextColor(TFT_WHITE);
else{tft.setTextColor(TFT_OLIVE);}tft.setCursor(5,180);tft.print("Bass CF");v16=0;}
if(v17==1){ if(menu==17) if(xxx==1)tft.setTextColor(0,165,255);
else tft.setTextColor(TFT_WHITE);
else tft.setTextColor(TFT_OLIVE);tft.setCursor(5,195);tft.print("Subw CF");v17=0;}
if(v18==1){ if(menu==18) if(xxx==1)tft.setTextColor(TFT_ORANGE);
else tft.setTextColor(TFT_WHITE);
else tft.setTextColor(TFT_OLIVE);tft.setCursor(5,210);tft.print("Midd QF");v18=0;}
if(v19==1){ if(menu==19) if(xxx==1)tft.setTextColor(TFT_ORANGE);
else tft.setTextColor(TFT_WHITE);
else tft.setTextColor(TFT_OLIVE);tft.setCursor(5,225);tft.print("Bass QF");v19=0;}
if(v20==1){ if(menu==20) if(xxx==1)tft.setTextColor(TFT_ORANGE);
else tft.setTextColor(TFT_WHITE);
else tft.setTextColor(TFT_OLIVE);tft.setCursor(5,240);tft.print("Phase Sub");v20=0;}
set_menu();
///////////////////output of numerical values of parameters
if(w1==1){tft.setTextColor(TFT_BLUE);tft.drawRect(100,1,100,12,TFT_BLUE); // x,y,w h // drawLine X1,Y1,X2,Y2
//ucg.setColor(0,0,0);ucg.drawBox(100,1,80,12);
tft.setTextColor(TFT_WHITE);tft.setCursor(230,15);tft.print(vol);w1=0;}
if(w2==1){tft.setTextColor(TFT_YELLOW);tft.drawRect(100,16,100,12,TFT_YELLOW); //ucg.setColor(150+treb*5,150+treb*4,0);ucg.drawLine(110,27,56+treb*4+109,17);
//ucg.setColor(0,0,0);ucg.drawBox(67+treb*2+110,16,80+treb*2+110,12);
tft.setTextColor(TFT_WHITE);tft.setCursor(230,30);tft.print(treb);tft.print(" ");w2=0;}
if(w3==1){tft.setTextColor(TFT_GREEN);tft.drawRect(100,31,100,12,TFT_GREEN); ///ucg.setColor(0,150+mid*5,0);ucg.drawLine(110,42,56+mid*4+109,32);
//ucg.setColor(0,0,0);ucg.drawLine(57+mid*4+109,42,80+mid*4+109,32);
tft.setTextColor(TFT_WHITE);tft.setCursor(230,45);tft.print(mid);tft.print(" ");w3=0;}
if(w4==1){tft.setTextColor(TFT_RED);tft.drawRect(100,46,100,12,TFT_RED); //ucg.setColor(150+bass*5,0,0);ucg.drawLine(110,57,56+bass*4+109,47);
//ucg.setColor(0,0,0);ucg.drawLine(57+bass*5+109,57,80+bass*4+109,47);
tft.setTextColor(TFT_WHITE);tft.setCursor(230,60);tft.print(bass);tft.print(" ");w4=0;}
if(w5==1){tft.setTextColor(TFT_WHITE); //myGLCD.printNumI(in0,60, 75,1);}
switch(in0){
case 0: tft.setCursor(50,75);tft.print("BT_IN");break;
case 1: tft.setCursor(50,75);tft.print("CD_IN");break;
case 2: tft.setCursor(50,75);tft.print("TV_IN");break;
case 3: tft.setCursor(50,75);tft.print("PHONO");break;
case 4: tft.setCursor(50,75);tft.print("AUX1 ");break;
case 5: tft.setCursor(50,75);tft.print("AUX2 ");break;
}
}
if(w5==1||w6==1){tft.setTextColor(TFT_WHITE);tft.setCursor(225,75);tft.print(vol_att);tft.print(" ");w6=0;w5=0;}
if(w7==1){tft.setTextColor(TFT_WHITE);tft.setCursor(100,90);tft.print(att_lf);tft.print(" ");w7=0;}
if(w8==1){tft.setTextColor(TFT_WHITE);tft.setCursor(265,90);tft.print(att_rf);tft.print(" ");w8=0;}
if(w9==1){tft.setTextColor(TFT_WHITE);tft.setCursor(100,105);tft.print(att_lr);tft.print(" ");w9=0;}
if(w10==1){tft.setTextColor(TFT_WHITE);tft.setCursor(265,105);tft.print(att_rr);tft.print(" ");w10=0;}
if(w11==1){tft.setTextColor(TFT_WHITE);tft.setCursor(100,120);tft.print(att_l);tft.print(" ");w11=0;}
if(w12==1){tft.setTextColor(TFT_WHITE);tft.setCursor(265,120);tft.print(att_r);tft.print(" ");w12=0;}
if(w13==1){tft.setTextColor(TFT_WHITE);
switch(loun_f){case 0: tft.setCursor(50,135);tft.print(" FLAT ");break;
case 1: tft.setCursor(50,135);tft.print("400 Hz ");break;
case 2: tft.setCursor(50,135);tft.print("800 Hz ");break;
case 3: tft.setCursor(50,135);tft.print("2.4 kHz");break;};w13=0;}
if(w14==1){tft.setTextColor(TFT_WHITE);tft.setCursor(265,135);tft.print(loun);tft.print(" ");w14=0;}
if(w15==1){tft.setTextColor(TFT_WHITE);
switch(treb_f){case 0: tft.setCursor(210,150);tft.print("10.0 kHz");break;
case 1: tft.setCursor(210,150);tft.print("12.5 kHz");break;
case 2: tft.setCursor(210,150);tft.print("15.0 kHz");break;
case 3: tft.setCursor(210,150);tft.print("17.5 kHz");break;}w15=0;}
if(w16==1){tft.setTextColor(TFT_WHITE);
switch(mid_f){case 0: tft.setCursor(220,165);tft.print("0.5 kHz");break;
case 1: tft.setCursor(220,165);tft.print("1.0 kHz");break;
case 2: tft.setCursor(220,165);tft.print("1.5 kHz");break;
case 3: tft.setCursor(220,165);tft.print("2.5 kHz");break;}w16=0;}
if(w17==1){tft.setTextColor(TFT_WHITE);
switch(bass_f){case 0: tft.setCursor(220,180);tft.print(" 60 Hz");break;
case 1: tft.setCursor(220,180);tft.print(" 80 Hz");break;
case 2: tft.setCursor(220,180);tft.print("100 Hz");break;
case 3: tft.setCursor(220,180);tft.print("200 Hz");break;}w17=0;}
if(w18==1){tft.setTextColor(TFT_WHITE);
switch(sub_f){case 0: tft.setCursor(220,195);tft.print(" FLAT ");break;
case 1: tft.setCursor(220,195);tft.print(" 80 Hz ");break;
case 2: tft.setCursor(220,195);tft.print("120 Hz");break;
case 3: tft.setCursor(220,195);tft.print("160 Hz");break;}w18=0;}
if(w19==1){tft.setTextColor(TFT_WHITE);
switch(mid_q){case 0: tft.setCursor(240,210);tft.print("0.5 ");break;
case 1: tft.setCursor(240,210);tft.print("0.75");break;
case 2: tft.setCursor(240,210);tft.print("1.0 ");break;
case 3: tft.setCursor(240,210);tft.print("1.25");break;}w19=0;}
if(w20==1){tft.setTextColor(255,255,255);
switch(bass_q){case 0: tft.setCursor(240,225);tft.print("1.0 ");break;
case 1: tft.setCursor(240,225);tft.print("1.25");break;
case 2: tft.setCursor(240,225);tft.print("1.5 ");break;
case 3: tft.setCursor(240,225);tft.print("2.0 ");break;}w20=0;}
if(w21==1){tft.setTextColor(TFT_WHITE);
switch(phase){case 0: tft.setCursor(240,240);tft.print("180");break;
case 1: tft.setCursor(240,240);tft.print(" 0");break;}w21=0;}
///////////////////// EEPROM /////////////////////////////////////////////
if(millis()>10000&&w==1){ inn();
EEPROM.write(0,vol+79);EEPROM.write(1,treb+15);EEPROM.write(2,treb_f);EEPROM.write(3,mid+15);EEPROM.write(4,mid_f);EEPROM.write(5,bass+15);EEPROM.write(6,bass_f);
EEPROM.write(7,loun+15);EEPROM.write(8,loun_f);EEPROM.write(9,att_lf+30);EEPROM.write(10,att_rf+30);EEPROM.write(11,att_lr+30);EEPROM.write(12,att_rr+30);
EEPROM.write(13,att_l+30);EEPROM.write(14,att_r+30);EEPROM.write(15,sub_f);EEPROM.write(16,phase);EEPROM.write(17,bass_q);EEPROM.write(18,mid_q);
EEPROM.write(18,mid_q);EEPROM.write(19,in0);EEPROM.write(20,vol0+15);EEPROM.write(21,vol1+15);EEPROM.write(22,vol2+15);EEPROM.write(23,vol3+15);EEPROM.write(24,vol4+15);
EEPROM.write(25,vol5+15);
w=0;menu=0;v0=1,v1=1,v2=1,v3=1,v4=1,v5=1,v6=1,v7=1,v8=1,v9=1,v10=1,v11=1,v12=1,v13=1,v14=1,v15=1,v16=1,v17=1,v18=1,v19=1,v20=1;y=0;xxx=1;
}
}// loop
void screen(){ //////////// to save resources when changing when moving through parameters, update only the last two parameters
switch(menu){
case 0: v20=1;v0=1;v1=1; set_menu();break;
case 1: v0=1;v1=1;v2=1; set_menu();break;
case 2: v1=1;v2=1;v3=1; set_menu();break;
case 3: v2=1;v3=1;v4=1; set_menu();break;
case 4: v3=1;v4=1;v5=1; set_menu();break;
case 5: v4=1;v5=1;v6=1; set_menu();break;
case 6: v5=1;v6=1;v7=1; set_menu();break;
case 7: v6=1;v7=1;v8=1; set_menu();break;
case 8: v7=1;v8=1;v9=1; set_menu();break;
case 9: v8=1;v9=1;v10=1; set_menu();break;
case 10: v9=1;v10=1;v11=1; set_menu();break;
case 11: v10=1;v11=1;v12=1; set_menu();break;
case 12: v11=1;v12=1;v13=1; set_menu();break;
case 13: v12=1;v13=1;v14=1; set_menu();break;
case 14: v13=1;v14=1;v15=1; set_menu();break;
case 15: v14=1;v15=1;v16=1; set_menu();break;
case 16: v15=1;v16=1;v17=1; set_menu();break;
case 17: v16=1;v17=1;v18=1; set_menu();break;
case 18: v17=1;v18=1;v19=1; set_menu();break;
case 19: v18=1;v19=1;v20=1; set_menu();break;
case 20: v19=1;v20=1;v0=1; set_menu();break;
}
}
//////////////////// menu navigation function
void set_menu(){if(xxx==0){newPosition1 = myEnc.read()/4;
if (newPosition1 != oldPosition1) {
oldPosition1 = newPosition1;
menu=menu+newPosition1;myEnc.write(0);newPosition1=0;millis();w=1;screen();if(menu>20){menu=0;}if(menu<0){menu=20;}}}else{if(k==1);k=0;}
}
void set_vol_att(){switch(in){case 0: vol_att = vol0;break;case 1: vol_att = vol1;break;case 2: vol_att = vol2;break;
case 4: vol_att = vol5;break;case 5: vol_att = vol3;break;case 6: vol_att = vol4;break;}}
void inn(){if(in0==3){in=6;}else{in=in0;}}
void audio(){
tda.setInput(in,1,1,2); // 0...7, 0...1, 0...1, 0...7
tda.setInput_2(0,0,1,1,1,1); // 0...7, 0...1, 0...1, 0...1, 0...1, 0...1
tda.setMix_source(7,0); // 0...7, 0...-31
tda.setMix_cont(1,1,1,1,1,1,1,1); // all 0...1
tda.setMute(1,0,0,1,0,1,1); // 0...1, 0...1, 0...3, 0...1, 0...1, 0...1, 0...1
tda.setSoft_1(1,1,1,1,1,1,1,1); //all 0...1
tda.setSoft_2(1,1,1,1,0,3); // 0...1, 0...1, 0...1, 0...1, 0...2, 0...3
tda.setLoudness(loun,loun_f,1,1); // 0...-15, 0...3, 0...1, 0...1
tda.setVol(vol_att,1,1); // -15...+15, 0...1, 0...1
tda.setTreble(treb,treb_f,1); // -15...+15, 0...3, 0...1
tda.setMiddle(mid,mid_q,1); // -15...+15, 0...3, 0...1
tda.setBass(bass,bass_q,1); // -15...+15, 0...3, 0...1
tda.setSMB(sub_f,phase,mid_f,bass_f,1); // 0...3, 0...1, 0...3, 0...3, 0...1
tda.setVol_LF(vol+att_lf,1); // 0...-79, 0...1
tda.setVol_RF(vol+att_rf,1); // 0...-79, 0...1
tda.setVol_LR(vol+att_lr,1); // 0...-79, 0...1
tda.setVol_RR(vol+att_rr,1); // 0...-79, 0...1
tda.setVol_SUB_L(vol+att_l,1); // 0...-79, 0...1
tda.setVol_SUB_R(vol+att_r,1); // 0...-79, 0...1
tda.setTest1(0,14,1,1); // 0...1, 0...15, 0...1, 0...1
tda.setTest2(0,1,1,3); // 0...1, 0...1, 0...1, 0...3
}