Re: Аудиопроцессор TDA7419 + LCD TFT 2,4 (SPFD5408)
Такой будет работать?
Да, будет.
Вы не вошли. Пожалуйста, войдите или зарегистрируйтесь.
forum.rcl-radio.ru → Тестирование скетчей → Аудиопроцессор TDA7419 + LCD TFT 2,4 (SPFD5408)
Чтобы отправить ответ, вы должны войти или зарегистрироваться
Такой будет работать?
Да, будет.
У вас есть скетч от anton7558?
нет
От 7.27 это ваш последний скетч? Тестировался? В ближайшее время попробую протэстить
Не понял, статья под TDA7419, а откуда взялся
в скетче PT2314
Скетч переделан по просьбе пользователя на другой аудиопроцессор, пользователь удалил свои сообщения
От 07.27 это ваш последний скетч? Тестировался? В ближайшее время попробую протэстить
Тестировался или нет?
Результат теста я не помню, пользователь удалил переписку
Я вносил только небольшие правки в проект, скетч дописывал и тестировал anton7558
Ясно, значит тема затухла и продолжения не будет? Я хотел развить. Было б интересно с таким LCD сделать УНЧ, а то все время LCD1602, уже приелся и надоел
Сам проект описан в первом посте, все протестировано. anton7558 адаптировал проект под свои нужды, Вы можете написать ему личное сообщение, возможно он Вам вышлет последнюю версия своего скетча.
Могли бы вы адаптировать скетч под этот LCD и под PT2313 или TDA7318 или TDA7313 на ваш выбор.
От anton7558 никакого толку
как уменьшить по горизонтали
http://wiki.amperka.ru/продукты:tft-lcd-240x320
#define VOL_PLUSE 0x807F0AF5 // укажите свой код кнопки
#define VOL_MINUS 0x807F8A75
#define TREB_PLUSE 0x0000
#define TREB_MINUS 0x0000
#define BASS_PLUSE 0x0000
#define BASS_MINUS 0x0000
#define MENU 0x0000
#define MUTE 0x0000
#define IN_PLUSE 0x0000
#define IN_MINUS 0x0000
#include <Wire.h>
#include <SPI.h>
#include <EEPROM.h>
#include <PT2314.h>
#include <Adafruit_GFX.h>
#include <ILI9488.h>
#include "SPI.h"
#include "Adafruit_GFX.h"
//#include <Adafruit_ILI9341.h>
#include <Encoder.h>
#include <boarddefs.h>
#include <IRremote.h> // http://rcl-radio.ru/wp-content/uploads/ … remote.zip
#include <Fonts/FreeMonoBoldOblique9pt7b.h>
PT2314 pt; //Выход ИМС SDA и SCL подключаются к аналоговым входам платы Arduino А4 и А5
IRrecv irrecv(6); // указываем вывод модуля IR приемника
decode_results ir;
#define TFT_DC 9
#define TFT_CS 10
//Encoder myEnc(6, 7);// DT, CLK
ILI9488 tft = ILI9488(TFT_CS, TFT_DC);// Подключения дисплея RESET-8 DC-9 CS-10 CDI(MOSI)-11 SDO(MISO)-12 SCLK-13
//ILI9341 tft = ILI9341(TFT_CS, TFT_DC);// Подключения дисплея RESET-8 DC-9 CS-10 CDI(MOSI)-11 SDO(MISO)-12 SCLK-13
//Adafruit_ILI9341 tft = Adafruit_ILI9341(TFT_CS, TFT_DC);
int menu, pluse, minus, mute = 1;
int i, i2, vol = 50, set, treb, bass, in, gain, gain1, gain2, gain3, gain4, lf, rf, att_loun;
byte eeprom;
int w = 1, w1 = 1, w2 = 1, w3 = 1, w4 = 1, w5 = 1, w6 = 1;//w-vol w1-tre w2-bas w3-in w4-lf w5-rf w6-loun
unsigned long time, times, t;
byte gr1, gr2;
void setup() {
Serial.begin(9600);
irrecv.enableIRIn();
pinMode(8, OUTPUT);
digitalWrite(8, HIGH);
tft.begin(); Serial.begin(9600);
tft.setRotation(1); tft.setTextSize(1); tft.fillScreen(0x39E9); tft.setTextColor(ILI9488_WHITE); tft.setFont(&FreeMonoBoldOblique9pt7b);
//tft.setRotation(1); tft.setTextSize(1); tft.fillScreen(0x39E9); tft.setTextColor(ILI9341_WHITE); tft.setFont(&FreeMonoBoldOblique9pt7b);
pinMode(2, INPUT); /// set
pinMode(3, INPUT); /// menu
pinMode(4, INPUT); /// +
pinMode(5, INPUT); /// -
// pinMode(A0, INPUT); // МЕНЮ КНОПКА SW энкодера
vol = EEPROM.read(0); treb = EEPROM.read(1) - 15; bass = EEPROM.read(2) - 15; in = EEPROM.read(3);
gain1 = EEPROM.read(4); gain2 = EEPROM.read(5); gain3 = EEPROM.read(6); gain4 = EEPROM.read(7); gain = EEPROM.read(8);
lf = EEPROM.read(9); rf = EEPROM.read(10);
att_loun = EEPROM.read(11);
audio();
}
void loop() {
/// IR
if ( irrecv.decode( &ir )) {
Serial.print("0x"); // IR приемник - чтение, в мониторе порта отображаются коды кнопок
Serial.println( ir.value, HEX);
irrecv.resume();
time = millis();
}
if (ir.value == 0) {
gr1 = 0; // запрет нажатий не активных кнопок пульта
gr2 = 0;
}
times = millis();
tft.setTextColor(ILI9488_WHITE);
//tft.setTextColor(ILI9341_WHITE);
pluse = digitalRead(4); minus = digitalRead(5);
tft.setTextColor(0xcdcd);
tft.setCursor(170, 15); tft.print("Audio Sistem"); // название системы
////////////////////////////////////////////////////////////////////////////////////////////
if (menu == 0) {
tft.setTextColor(0xFFFF);
} else {
tft.setTextColor(0xcdcd);
} tft.setCursor(5, 42); tft.print("VOLUME");
if (menu == 1) {
tft.setTextColor(0xFFFF);
} else {
tft.setTextColor(0xcdcd);
} tft.setCursor(5, 67); tft.print("TREBLE");
if (menu == 2) {
tft.setTextColor(0xFFFF);
} else {
tft.setTextColor(0xcdcd);
} tft.setCursor(5, 92); tft.print("BASS");
// разделительные линии
tft.drawFastHLine(5, 105, 470, 0xcdcd); tft.drawFastHLine(5, 163, 470, 0xcdcd); tft.drawFastHLine(5, 192, 470, 0xcdcd); //tft.drawFastHLine(5, 140, 470, 0xcdcd);
if (digitalRead(3) == HIGH||ir.value == MENU) {
menu++;
cl1();
eeprom = 1;
time = millis();
if (menu > 2) {
menu = 0;
set = 0;
}
}
if (digitalRead(2) == HIGH) {
set++;
eeprom = 1;
time = millis();
menu = 100;
if (set > 5) {
set = 0;
menu = 0;
}
}
if ((pluse == HIGH && minus == HIGH)||ir.value == MUTE) {
mute++;
cl1();
w = 1;
if (mute > 1) {
mute = 0;
}
}
if (ir.value == VOL_PLUSE) {
vol++; // кнопка >
gr1 = 1;
gr2 = 0;
cl1();
time = millis();
w = 1;
if (vol > 55) {
vol = 55;
}
}
if (ir.value == 0xFFFFFFFF and gr1 == 1) {
vol++; // кнопка >>>>>>
gr2 = 0;
cl1();
time = millis();
w = 1;
if (vol > 55) {
vol = 55;
}
}
if (ir.value == VOL_MINUS) {
vol--; // кнопка >
gr1 = 0;
gr2 = 1;
cl1();
time = millis();
w = 1;
if (vol < 0) {
vol = 0;
}
}
if (ir.value == 0xFFFFFFFF and gr2 == 1) {
vol--; // кнопка >>>>>>
gr1 = 0;
cl1();
time = millis();
w = 1;
if (vol < 0) {
vol = 0;
}
}
if (pluse == HIGH && menu == 0) {
vol++;
eeprom = 1;
time = millis();
if (vol > 55) {
vol = 55;
} w = 1;
}
if (minus == HIGH && menu == 0) {
vol--;
eeprom = 1;
time = millis();
if (vol < 0) {
vol = 0;
} w = 1;
}
if (ir.value == TREB_PLUSE) {
treb++; // кнопка >
gr1 = 1;
gr2 = 0;
cl1();
time = millis();
w1 = 1;
if (treb > 7) {
treb = 7;
}
}
if (ir.value == 0xFFFFFFFF and gr1 == 1) {
treb++; // кнопка >>>>>>
gr2 = 0;
cl1();
time = millis();
w1 = 1;
if (treb > 7) {
treb = 7;
}
}
if (ir.value == TREB_MINUS) {
treb--; // кнопка >
gr1 = 0;
gr2 = 1;
cl1();
time = millis();
w1 = 1;
if (treb < -7) {
treb = -7;
}
}
if (ir.value == 0xFFFFFFFF and gr2 == 1) {
treb--; // кнопка >>>>>>
gr1 = 0;
cl1();
time = millis();
w1 = 1;
if (treb < -7) {
treb = -7;
}
}
if (pluse == HIGH && menu == 1) {
treb++;
if (treb > 7) {
treb = 7;
} w1 = 1;
}
if (minus == HIGH && menu == 1) {
treb--;
if (treb < -7) {
treb = -7;
} w1 = 1;
}
if (ir.value == BASS_PLUSE) {
bass++; // кнопка >
gr1 = 1;
gr2 = 0;
cl1();
time = millis();
w2 = 1;
if (bass > 7) {
bass = 7;
}
}
if (ir.value == 0xFFFFFFFF and gr1 == 1) {
bass++; // кнопка >>>>>>
gr2 = 0;
cl1();
time = millis();
w2 = 1;
if (bass > 7) {
bass = 7;
}
}
if (ir.value == BASS_MINUS) {
bass--; // кнопка >
gr1 = 0;
gr2 = 1;
cl1();
time = millis();
w2 = 1;
if (bass < -7) {
bass = -7;
}
}
if (ir.value == 0xFFFFFFFF and gr2 == 1) {
bass--; // кнопка >>>>>>
gr1 = 0;
cl1();
time = millis();
w2 = 1;
if (bass < -7) {
bass = -7;
}
}
if (pluse == HIGH && menu == 2) {
bass++;
if (bass > 7) {
bass = 7;
} w2 = 1;
}
if (minus == HIGH && menu == 2) {
bass--;
if (bass < -7) {
bass = -7;
} w2 = 1;
}
if (w == 1) {
audio();
for (i = 0, i2 = 0; i <= 58; i++, i2++) {
if (i2 < vol) {} else {
i2 = vol;
}
if (mute == 1) {
tft.drawFastHLine(i2 * 5.5 + 78, 31, 10, 0x000F);
} else {
tft.drawFastHLine(i2 * 5.5 + 78, 31, 10, 0x0f800);
} tft.drawFastHLine(i * 5.5 + 80, 31, 10, 0xcdcd);
if (mute == 1) {
tft.drawFastHLine(i2 * 5.5 + 78, 33, 10, 0x000F);
} else {
tft.drawFastHLine(i2 * 5.5 + 78, 33, 10, 0x0f800);
} tft.drawFastHLine(i * 5.5 + 80, 33, 10, 0xcdcd);
if (mute == 1) {
tft.drawFastHLine(i2 * 5.5 + 78, 35, 10, 0x000F);
} else {
tft.drawFastHLine(i2 * 5.5 + 78, 35, 10, 0x0f800);
} tft.drawFastHLine(i * 5.5 + 80, 35, 10, 0xcdcd);
if (mute == 1) {
tft.drawFastHLine(i2 * 5.5 + 78, 37, 10, 0x000F);
} else {
tft.drawFastHLine(i2 * 5.5 + 78, 37, 10, 0x0f800);
} tft.drawFastHLine(i * 5.5 + 80, 37, 10, 0xcdcd);
if (mute == 1) {
tft.drawFastHLine(i2 * 5.5 + 78, 39, 10, 0x000F);
} else {
tft.drawFastHLine(i2 * 5.5 + 78, 39, 10, 0x0f800);
} tft.drawFastHLine(i * 5.5 + 80, 39, 10, 0xcdcd);
if (mute == 1) {
tft.drawFastHLine(i2 * 5.5 + 78, 41, 10, 0x000F);
} else {
tft.drawFastHLine(i2 * 5.5 + 78, 41, 10, 0x0f800);
} tft.drawFastHLine(i * 5.5 + 80, 41, 10, 0xcdcd);
if (mute == 1) {
tft.drawFastHLine(i2 * 5.5 + 78, 43, 10, 0x000F);
} else {
tft.drawFastHLine(i2 * 5.5 + 78, 43, 10, 0x0f800);
} tft.drawFastHLine(i * 5.5 + 80, 43, 10, 0xcdcd);
} w = 0; tft.setTextColor(0x07FF); tft.fillRect(413, 30, 42, 15, 0x39E9); tft.setCursor(413, 42); tft.print(-55 + vol); tft.setCursor(442, 42); tft.print(" dB");
if ( menu == 0 && w == 0 ) {
tft.setTextSize(2); tft.fillRect(250, 245, 180, 30, 0x39E9); tft.setCursor(250, 270); tft.setTextColor(0x1D74); tft.print("Vol:"); tft.setCursor(360, 270); tft.print(-55 + vol); tft.setCursor(410, 270); tft.print(" dB");
}
}
if (w1 == 1) {
audio();
for (i = 0, i2 = 0; i <= 80; i++, i2++) {
i2 = treb * 5 + 40;
tft.drawFastHLine(i * 4 + 80, 56, 10, 0xcdcd); tft.drawFastHLine(i2 * 4 + 80, 56, 10, 0x000F); tft.drawFastHLine(i * 4 + 80, 56, 10, 0xcdcd);
tft.drawFastHLine(i * 4 + 80, 58, 10, 0xcdcd); tft.drawFastHLine(i2 * 4 + 80, 58, 10, 0x000F); tft.drawFastHLine(i * 4 + 80, 58, 10, 0xcdcd);
tft.drawFastHLine(i * 4 + 80, 60, 10, 0xcdcd); tft.drawFastHLine(i2 * 4 + 80, 60, 10, 0x000F); tft.drawFastHLine(i * 4 + 80, 60, 10, 0xcdcd);
tft.drawFastHLine(i * 4 + 80, 62, 10, 0xcdcd); tft.drawFastHLine(i2 * 4 + 80, 62, 10, 0x000F); tft.drawFastHLine(i * 4 + 80, 62, 10, 0xcdcd);
tft.drawFastHLine(i * 4 + 80, 64, 10, 0xcdcd); tft.drawFastHLine(i2 * 4 + 80, 64, 10, 0x000F); tft.drawFastHLine(i * 4 + 80, 64, 10, 0xcdcd);
tft.drawFastHLine(i * 4 + 80, 66, 10, 0xcdcd); tft.drawFastHLine(i2 * 4 + 80, 66, 10, 0x000F); tft.drawFastHLine(i * 4 + 80, 66, 10, 0xcdcd);
tft.drawFastHLine(i * 4 + 80, 68, 10, 0xcdcd); tft.drawFastHLine(i2 * 4 + 80, 68, 10, 0x000F); tft.drawFastHLine(i * 4 + 80, 68, 10, 0xcdcd);
} w1 = 0; tft.setTextSize(1); tft.setTextColor(0x07FF); tft.fillRect(413, 55, 40, 15, 0x39E9); tft.setCursor(413, 67); tft.print(treb); tft.setCursor(442, 67); tft.print(" dB"); w1 = 0;
if ( menu == 1 && w1 == 0 ) {
tft.setTextSize(2); tft.fillRect(250, 245, 180, 30, 0x39E9); tft.setTextColor(0x1D74); tft.setCursor(250, 270); tft.print("Tre:");tft.setCursor(360, 270); tft.print(treb);
}
}
if (w2 == 1) {
audio();
for (i = 0, i2 = 0; i <= 80; i++, i2++) {
i2 = bass * 5 + 40;
tft.drawFastHLine(i * 4 + 80, 81, 10, 0xcdcd); tft.drawFastHLine(i2 * 4 + 80, 81, 10, 0x000F); tft.drawFastHLine(i * 4 + 80, 81, 10, 0xcdcd);
tft.drawFastHLine(i * 4 + 80, 83, 10, 0xcdcd); tft.drawFastHLine(i2 * 4 + 80, 83, 10, 0x000F); tft.drawFastHLine(i * 4 + 80, 83, 10, 0xcdcd);
tft.drawFastHLine(i * 4 + 80, 85, 10, 0xcdcd); tft.drawFastHLine(i2 * 4 + 80, 85, 10, 0x000F); tft.drawFastHLine(i * 4 + 80, 85, 10, 0xcdcd);
tft.drawFastHLine(i * 4 + 80, 87, 10, 0xcdcd); tft.drawFastHLine(i2 * 4 + 80, 87, 10, 0x000F); tft.drawFastHLine(i * 4 + 80, 87, 10, 0xcdcd);
tft.drawFastHLine(i * 4 + 80, 89, 10, 0xcdcd); tft.drawFastHLine(i2 * 4 + 80, 89, 10, 0x000F); tft.drawFastHLine(i * 4 + 80, 89, 10, 0xcdcd);
tft.drawFastHLine(i * 4 + 80, 91, 10, 0xcdcd); tft.drawFastHLine(i2 * 4 + 80, 91, 10, 0x000F); tft.drawFastHLine(i * 4 + 80, 91, 10, 0xcdcd);
tft.drawFastHLine(i * 4 + 80, 93, 10, 0xcdcd); tft.drawFastHLine(i2 * 4 + 80, 93, 10, 0x000F); tft.drawFastHLine(i * 4 + 80, 93, 10, 0xcdcd);
} w2 = 0; tft.setTextSize(1); tft.setTextColor(0x07FF); tft.fillRect(413, 80, 40, 15, 0x39E9); tft.setCursor(413, 92); tft.print(bass); tft.setCursor(442, 92); tft.print(" dB"); w2 = 0;
if ( menu == 2 && w2 == 0 ) {
tft.setTextSize(2); tft.fillRect(250, 245, 180, 30, 0x39E9); tft.setCursor(250, 270);tft.setTextColor(0x1D74); tft.print("Bas:"); tft.setCursor(360, 270); tft.print(bass);
}
}
///////////////////////////////////////////////////////////input + gain//////////////////////////////////////////////////////////////////////////////////////////
tft.setTextSize(1);
if (ir.value == IN_PLUSE) {
in++; // кнопка >
gr1 = 1;
gr2 = 0;
cl1();
time = millis();
w3 = 1;
if (in > 4) {
in = 4;
}
}
if (ir.value == IN_MINUS) {
in--; // кнопка >
gr1 = 0;
gr2 = 1;
cl1();
time = millis();
w3 = 1;
if (in < 1) {
in = 1;
}
}
if (pluse == HIGH && set == 1) {
in++;
if (in > 4) {
in = 4;
} audio();
w3 = 1;
}
if (minus == HIGH && set == 1) {
in--;
if (in < 1) {
in = 1;
} audio();
w3 = 1;
}
tft.setCursor(5, 127); if (set == 1) {
tft.setTextColor(0xFFFF);
} else {
tft.setTextColor(0xcdcd);
} tft.print("INPUT: ");
tft.setCursor(110, 127); if (in == 1 && set == 1) {
tft.setTextColor(0xFFFF);
} else if (in == 1 && set != 1) {
tft.setTextColor(0x07FF);
} else {
tft.setTextColor(0xcdcd);
} tft.print("IN 1");
tft.setCursor(210, 127); if (in == 2 && set == 1) {
tft.setTextColor(0xFFFF);
} else if (in == 2 && set != 1) {
tft.setTextColor(0x07FF);
} else {
tft.setTextColor(0xcdcd);
} tft.print("IN 2");
tft.setCursor(310, 127); if (in == 3 && set == 1) {
tft.setTextColor(0xFFFF);
} else if (in == 3 && set != 1) {
tft.setTextColor(0x07FF);
} else {
tft.setTextColor(0xcdcd);
} tft.print("IN 3");
tft.setCursor(410, 127); if (in == 4 && set == 1) {
tft.setTextColor(0xFFFF);
} else if (in == 4 && set != 1) {
tft.setTextColor(0x07FF);
} else {
tft.setTextColor(0xcdcd);
} tft.print("IN 4");
tft.setCursor(5, 152);
if (set == 2) {
tft.setTextColor(0xFFFF);
} else {
tft.setTextColor(0xcdcd);
}
if (in == 1) {
gain = gain1;
tft.print("GAIN IN 1"); //Чуствительность входа
}
if (in == 2) {
gain = gain2;
tft.print("GAIN IN 2");
}
if (in == 3) {
gain = gain3;
tft.print("GAIN IN 3");
}
if (in == 4) {
gain = gain4;
tft.print("GAIN IN 4");
}
if (pluse == HIGH && set == 2) {
gain++;
if (gain > 15) {
gain = 15;
} audio();
w3 = 1;
}
if (minus == HIGH && set == 2) {
gain--;
if (gain < 0) {
gain = 0;
} audio();
w3 = 1;
}
if (in == 1) {
gain1 = gain;
} if (in == 2) {
gain2 = gain;
} if (in == 3) {
gain3 = gain;
}
if (in == 4) {
gain4 = gain;
}
if (w3 == 1) {
audio();
for (i = 0, i2 = 0; i <= 15; i++, i2++) {
if (i2 < gain) {} else {
i2 = gain;
}
tft.drawFastHLine(i2 * 4 + 120, 141, 10, 0x000F); tft.drawFastHLine(i * 4 + 122, 141, 10, 0xcdcd);
tft.drawFastHLine(i2 * 4 + 120, 143, 10, 0x000F); tft.drawFastHLine(i * 4 + 122, 143, 10, 0xcdcd);
tft.drawFastHLine(i2 * 4 + 120, 145, 10, 0x000F); tft.drawFastHLine(i * 4 + 122, 145, 10, 0xcdcd);
tft.drawFastHLine(i2 * 4 + 120, 147, 10, 0x000F); tft.drawFastHLine(i * 4 + 122, 147, 10, 0xcdcd);
tft.drawFastHLine(i2 * 4 + 120, 149, 10, 0x000F); tft.drawFastHLine(i * 4 + 122, 149, 10, 0xcdcd);
tft.drawFastHLine(i2 * 4 + 120, 151, 10, 0x000F); tft.drawFastHLine(i * 4 + 122, 151, 10, 0xcdcd);
tft.drawFastHLine(i2 * 4 + 120, 153, 10, 0x000F); tft.drawFastHLine(i * 4 + 122, 153, 10, 0xcdcd);
} w3 = 0; tft.fillRect(93, 140, 15, 15, 0x39E9);
}
/////////////////////////////баланс////////////////////////////////////////////////////////////
tft.setCursor(210, 152); if (set == 3) {
tft.setTextColor(0xFFFF);
} else {
tft.setTextColor(0xcdcd);
} tft.print("LF ");
tft.setCursor(310, 152); if (set == 4) {
tft.setTextColor(0xFFFF);
} else {
tft.setTextColor(0xcdcd);
} tft.print("RF ");
if (pluse == HIGH && set == 3) {
lf++;
if (lf > 30) {
lf = 30;
} audio();
w4 = 1;
}
if (minus == HIGH && set == 3) {
lf--;
if (lf < 0) {
lf = 0;
} audio();
w4 = 1;
}
if (w4 == 1) {
audio();
for (i = 0, i2 = 0; i <= 30; i++, i2++) {
if (i2 < lf) {} else {
i2 = lf;
}
tft.drawFastHLine(i2 + 245, 141, 1, 0x000F); tft.drawFastHLine(i + 246, 141, 1, 0xcdcd);
tft.drawFastHLine(i2 + 245, 143, 1, 0x000F); tft.drawFastHLine(i + 246, 143, 1, 0xcdcd);
tft.drawFastHLine(i2 + 245, 145, 1, 0x000F); tft.drawFastHLine(i + 246, 145, 1, 0xcdcd);
tft.drawFastHLine(i2 + 245, 147, 1, 0x000F); tft.drawFastHLine(i + 246, 147, 1, 0xcdcd);
tft.drawFastHLine(i2 + 245, 149, 1, 0x000F); tft.drawFastHLine(i + 246, 149, 1, 0xcdcd);
tft.drawFastHLine(i2 + 245, 151, 1, 0x000F); tft.drawFastHLine(i + 246, 151, 1, 0xcdcd);
tft.drawFastHLine(i2 + 245, 153, 1, 0x000F); tft.drawFastHLine(i + 246, 153, 1, 0xcdcd);
} w4 = 0;
}
if (pluse == HIGH && set == 4) {
rf++;
if (rf > 30) {
rf = 30;
} audio();
w5 = 1;
}
if (minus == HIGH && set == 4) {
rf--;
if (rf < 0) {
rf = 0;
} audio();
w5 = 1;
}
if (w5 == 1) {
audio();
for (i = 0, i2 = 0; i <= 30; i++, i2++) {
if (i2 < rf) {} else {
i2 = rf;
}
tft.drawFastHLine(i2 + 345, 141, 1, 0x000F); tft.drawFastHLine(i + 346, 141, 1, 0xcdcd);
tft.drawFastHLine(i2 + 345, 143, 1, 0x000F); tft.drawFastHLine(i + 346, 143, 1, 0xcdcd);
tft.drawFastHLine(i2 + 345, 145, 1, 0x000F); tft.drawFastHLine(i + 346, 145, 1, 0xcdcd);
tft.drawFastHLine(i2 + 345, 147, 1, 0x000F); tft.drawFastHLine(i + 346, 147, 1, 0xcdcd);
tft.drawFastHLine(i2 + 345, 149, 1, 0x000F); tft.drawFastHLine(i + 346, 149, 1, 0xcdcd);
tft.drawFastHLine(i2 + 345, 151, 1, 0x000F); tft.drawFastHLine(i + 346, 151, 1, 0xcdcd);
tft.drawFastHLine(i2 + 345, 153, 1, 0x000F); tft.drawFastHLine(i + 346, 153, 1, 0xcdcd);
} w5 = 0;
}
///////////////////////////////////////тонокомпенсация//////////////////////////////////////////////////////////////////
tft.setCursor(5, 182); if (set == 5) {
tft.setTextColor(0xFFFF);
} else {
tft.setTextColor(0xcdcd);
} tft.print("LOUDNESS: ");
if (pluse == HIGH && set == 5) {
att_loun++;
if (att_loun > 14) {
att_loun = 14;
} audio();
w6 = 1;
}
if (minus == HIGH && set == 5) {
att_loun--;
if (att_loun < 0) {
att_loun = 0;
} audio();
w6 = 1;
}
if (w6 == 1) {
for (i = 0, i2 = 0; i <= 14; i++, i2++) {
if (i2 < att_loun) {} else {
i2 = att_loun;
}
tft.drawFastHLine(i2 + 115, 170, 1, 0xf800); tft.drawFastHLine(i + 116, 170, 1, 0xcdcd);
tft.drawFastHLine(i2 + 115, 172, 1, 0xf800); tft.drawFastHLine(i + 116, 172, 1, 0xcdcd);
tft.drawFastHLine(i2 + 115, 174, 1, 0xf800); tft.drawFastHLine(i + 116, 174, 1, 0xcdcd);
tft.drawFastHLine(i2 + 115, 176, 1, 0xf800); tft.drawFastHLine(i + 116, 176, 1, 0xcdcd);
tft.drawFastHLine(i2 + 115, 178, 1, 0xf800); tft.drawFastHLine(i + 116, 178, 1, 0xcdcd);
tft.drawFastHLine(i2 + 115, 180, 1, 0xf800); tft.drawFastHLine(i + 116, 180, 1, 0xcdcd);
tft.drawFastHLine(i2 + 115, 182, 1, 0xf800); tft.drawFastHLine(i + 116, 182, 1, 0xcdcd);
} w6 = 0;
}
if (millis() - time > 1000 && eeprom == 1) {
EEPROM.update(0, vol); EEPROM.update(1, treb + 15); EEPROM.update(2, bass + 15); EEPROM.update(3, in);
EEPROM.update(4, gain1); EEPROM.update(5, gain2); EEPROM.update(6, gain3); EEPROM.update(7, gain4);
EEPROM.update(8, gain); EEPROM.update(9, lf); EEPROM.update(10, rf); EEPROM.update(11, att_loun);
eeprom = 0;
}
times = millis() - times;
Serial.println(times);
} //loop
void audio() {
pt.setVolume(vol); // int 0...55 === -70...0 dB step 1.25 dB (Уровень громкости Лк+Пк)
pt.setAttL(lf); // int 0...23 === 0...-30 db step 1.25 dB > int 31 === mute on (регулировка баланса по Лк практически до 0)
pt.setAttR(rf); // int 0...23 === 0...-30 dB step 1.25 dB > int 31 === mute on (регулировка баланса по Пк практически до 0)
pt.setSwitch(in, att_loun, gain);
// input int 0..2 === IN 1...3 (выбор стереовхода 4)
// loudness int 0...1 === 1-on 0-off (тонокомпесация)
// input gain int 0...3 === 0...11.25dB step 3.75 dB(регулировка предусиления по входам)
pt.setBass(bass); // int -7...+7 === -14...+14 dB step 2 dB (регулировка низких частот)
pt.setTreble(treb); // int -7...+7 === -14...+14 dB step 2 dB (регулировка верхних частот)
}
void cl1() {
ir.value = 0;
delay(300);
}
Чтобы отправить ответ, вы должны войти или зарегистрироваться
forum.rcl-radio.ru → Тестирование скетчей → Аудиопроцессор TDA7419 + LCD TFT 2,4 (SPFD5408)
Форум работает на PunBB, при поддержке Informer Technologies, Inc
|