Re: BD37033FV - Sound Processors for Car Audio
Да так работают, значит что то в коде
Вы не вошли. Пожалуйста, войдите или зарегистрируйтесь.
forum.rcl-radio.ru → Библиотеки → BD37033FV - Sound Processors for Car Audio
Да так работают, значит что то в коде
В основном коде
tda.setLoud_f(3,lon_f,1,1);
поменяйте
tda.setLoud_f(3,lon_f,0,0);
И все же посмотрите настройки предусиления каждого входа, должно стоять значение от 0 до 16
Так же аттенюаторы всех выходов должны быть установлены на 0
Все настройки аудиопроцессора берутся из EEPROM, в EEPROM могло быть записано некорректное значение для аудиопроцессора.
На входах крутил усиления, но еще раз так и сделал, аттенюаторы на 0, ситуация та же-
работает только вход 1, меняешь вход меняется только его усиления и циферки входа, звук идет только с 1
tda.setSub_setup(sab_f,3,faza);
поменяйте на
tda.setSub_setup(sab_f,0,faza);
А если на прямую менять входы
tda.setIn(in); // in1 in2 in3 = int in(0...2)
вместо in установить поочередно 0 1 2
Все я нашел ошибку
tda.setIn(in); // in1 in2 in3 = int in(0...2)
заменить на
tda.setIn(in_reg); // in1 in2 in3 = int in(0...2)
Я поправил основной скетч
Да, смена на tda.setIn(in_reg); // in1 in2 in3 = int in(0...2) помогла, 2 предыдущих правки оставить (tda.setLoud_f(3,lon_f,1,1);
tda.setSub_setup(sab_f,0,faza);)?
Лучше верните все как было, я поправил основной скетч.
tda.setSub_setup(sab_f,0,faza);
С этим параметром можно поэкспеременитовать
Я точно не скажу, что поменяется, но это влияет на сабвуфер, вроде как этот параметр отвечает откуда сабвуфер берет источник звука
Хорошо, залил, теперь вроде все хорошо. Спасибо огромное!
Я буду публиковать это проект на сайте, так что Вам тоже спасибо что протестировали.
tda.setSub_setup(sab_f,0,faza);
я так понял ето как миксовать виход саба, LPF ето вроде суматор со входов, лучше наверно так и будет, хотя можно и попробовать толко ето уже когда соберу все в корппус.
Еще раз спасибо!
Кстати в статтю можете плату проекта добавить, вдруг кому надо.
Хорошо, укажу ссылку на плату
DT и CLK можно поменять в енкодере чтоб по правилам регулировка ишла, а то налево увеличивалось а направо уменьшалось.
Да, конечно.
Здравствуйте ! Тоже потеснил в железе!Все четко работает.Гораздo интереснее чем tda7419 -7418 n в плане звука. Тестировал с усилителем OM MARK2.Звучит красиво но все равно глотает многие звуки . Надо что то серьезнее этого bd33077. Может что нить посоветуете?Может что то слепить на BU32107? Магнитолы тиайс на этих dsp построены.В принципе в машине устраивает звук на этом чипе .Но в интернете что то о нем ничего нет,в плане самоделки на Ардуино.
BU32107 - весьма интересная микросхема, но она стоит с доставкой около 600 руб, также к ней нужно несколько ЦАП или 1 ЦАП 6- канальный.
Для меня это дорого выйдет, я же пишу статьи по разным микросхема и все микросхемы использую только для создания проектов, в дальнейшем я их не использую.
И хотел вас попросить чтоб вы в прошивке из шапки ,сделали вывод на включение блютуз ,Если короче ,то при переходе на IN 3 на ардуинке например d6 был сигнал на включение блютуз.Можно это реализовать ? Ну и если в ней в памяти хватает то сделать ещё ,типа включения какого нить пина на ардуине по дачику ds18b20 при 60 градусах.
А на счёт bu 32107 у меня есть она и цап тоже , Работаю в сервисном центре ,есть магнитолы доноры ,дёргаю от туда всю приблуду.,
Если короче ,то при переходе на IN 3 на ардуинке например d6 был сигнал на включение блютуз.
Это просто:
В setup() иницилируем выход
pinMode(6,OUTPUT);
в loop() в самом начале:
if(in==3){diditalWrite(6,HIGH);}else{digitalWrite(6,LOW);}
типа включения какого нить пина на ардуине по дачику ds18b20 при 60 градусах.
посмотрите этот пример - http://forum.rcl-radio.ru/viewtopic.php?pid=7337#p7337
Если короче ,то при переходе на IN 3 на ардуинке например d6 был сигнал на включение блютуз.
Это просто:
В setup() иницилируем выход
pinMode(6,OUTPUT);
в loop() в самом начале:
if(in==3){diditalWrite(6,HIGH);}else{digitalWrite(6,LOW);}
типа включения какого нить пина на ардуине по дачику ds18b20 при 60 градусах.
посмотрите этот пример - http://forum.rcl-radio.ru/viewtopic.php?pid=7337#p7337
Что то не получается у меня ! Оригинальный скетч грузится. А начинаю вставлять,как вы выше написали ,сразу же ошибка.Что то 100 процентов не то делаю ,так как не силен в этом.
Делаю вот так
void setup() {
irrecv.enableIRIn();lcd.init();lcd.backlight();
lcd.setCursor(0,0);lcd.print(" BD37033FV ");delay(2000);
Serial.begin(9600); lcd.createChar(0,a1);lcd.createChar(1,a2);lcd.createChar(2,a3);
pinMode(10,INPUT); // МЕНЮ КНОПКА SW энкодера
pinMode(2,INPUT); // ВЫБОР ВХОДА КНОПКА IN
pinMode(3,INPUT); // КНОПКА MUTE
pinMode(4,INPUT); // КНОПКА POWER
pinMode(7,OUTPUT); // ВЫХОД STANDBY
pinMode(5,INPUT); // КНОПКА MENU2
pinMode(6,OUTPUT);
MsTimer2::set(3, to_Timer);MsTimer2::start();
if(EEPROM.read(100)!=0){for(int i=0;i<101;i++){EEPROM.update(i,0);}}// очистка памяти при первом включении
vol = EEPROM.read(0)-79;treb = EEPROM.read(1)-15;middle = EEPROM.read(2)-15;bass = EEPROM.read(3)-15;in = EEPROM.read(4);
gain1 = EEPROM.read(5);gain2 = EEPROM.read(6);gain3 = EEPROM.read(7);lon = EEPROM.read(8);lon_f = EEPROM.read(9);
rf = EEPROM.read(10)-79;lf = EEPROM.read(11)-79;rt = EEPROM.read(12)-79;lt = EEPROM.read(13)-79;sab1 = EEPROM.read(14)-79;sab2 = EEPROM.read(24)-79;
treb_c = EEPROM.read(15);mid_c = EEPROM.read(16);bas_c = EEPROM.read(17);sab_f = EEPROM.read(18);
treb_q = EEPROM.read(19);mid_q = EEPROM.read(20);bas_q = EEPROM.read(21);faza = EEPROM.read(22);
cl();audio();}
void loop() {
if(in==3){diditalWrite(6,HIGH);}else{digitalWrite(6,LOW);}
if(digitalRead(10)==LOW&&power==0&&menu2==100){menu++;cl();time=millis();w=1;w2=1;if(menu>3){menu=0;}}// меню
if(digitalRead(2)==HIGH&&power==0&&menu2!=3&&mute==0){in++;;cl();time=millis();w=1;w2=1;www=1;if(in>2){in=0;};lcd.setCursor(0,0);lcd.print(" INPUT ");lcd.print(in+1);audio();delay(2000);}// КНОПКА ВЫБОРА ВХОДА I
if(digitalRead(3)==HIGH&&mute==0&&power==0){mute=1;cl();w=0;w2=1;lcd.print(" MUTE ");menu=100;menu2=100;audio();}// mute on
if(digitalRead(3)==HIGH&&mute==1&&power==0){mute=0;cl();time=millis();w=1;w2=1;menu=0;myEnc.write(0);audio();}// mute off
У меня в сообщении была опечатка
diditalWrite
надо
digitalWrite
Все исправил опечатку ,скетч грузится теперь ,но на пине 6 нет сигнала,при переключении на IN3
Вот кусок кода
void setup() {
irrecv.enableIRIn();lcd.init();lcd.backlight();
lcd.setCursor(0,0);lcd.print(" BD37033FV ");delay(2000);
Serial.begin(9600); lcd.createChar(0,a1);lcd.createChar(1,a2);lcd.createChar(2,a3);
pinMode(10,INPUT); // МЕНЮ КНОПКА SW энкодера
pinMode(2,INPUT); // ВЫБОР ВХОДА КНОПКА IN
pinMode(3,INPUT); // КНОПКА MUTE
pinMode(4,INPUT); // КНОПКА POWER
pinMode(7,OUTPUT); // ВЫХОД STANDBY
pinMode(5,INPUT); // КНОПКА MENU2
pinMode(6,OUTPUT);
MsTimer2::set(3, to_Timer);MsTimer2::start();
if(EEPROM.read(100)!=0){for(int i=0;i<101;i++){EEPROM.update(i,0);}}// очистка памяти при первом включении
vol = EEPROM.read(0)-79;treb = EEPROM.read(1)-15;middle = EEPROM.read(2)-15;bass = EEPROM.read(3)-15;in = EEPROM.read(4);
gain1 = EEPROM.read(5);gain2 = EEPROM.read(6);gain3 = EEPROM.read(7);lon = EEPROM.read(8);lon_f = EEPROM.read(9);
rf = EEPROM.read(10)-79;lf = EEPROM.read(11)-79;rt = EEPROM.read(12)-79;lt = EEPROM.read(13)-79;sab1 = EEPROM.read(14)-79;sab2 = EEPROM.read(24)-79;
treb_c = EEPROM.read(15);mid_c = EEPROM.read(16);bas_c = EEPROM.read(17);sab_f = EEPROM.read(18);
treb_q = EEPROM.read(19);mid_q = EEPROM.read(20);bas_q = EEPROM.read(21);faza = EEPROM.read(22);
cl();audio();}
void loop() {
if(in==3){digitalWrite(6,HIGH);}else{digitalWrite(6,LOW);}
if(digitalRead(10)==LOW&&power==0&&menu2==100){menu++;cl();time=millis();w=1;w2=1;if(menu>3){menu=0;}}// меню
if(digitalRead(2)==HIGH&&power==0&&menu2!=3&&mute==0){in++;;cl();time=millis();w=1;w2=1;www=1;if(in>2){in=0;};lcd.setCursor(0,0);lcd.print(" INPUT ");lcd.print(in+1);audio();delay(2000);}// КНОПКА ВЫБОРА ВХОДА I
if(digitalRead(3)==HIGH&&mute==0&&power==0){mute=1;cl();w=0;w2=1;lcd.print(" MUTE ");menu=100;menu2=100;audio();}// mute on
if(digitalRead(3)==HIGH&&mute==1&&power==0){mute=0;cl();time=millis();w=1;w2=1;menu=0;myEnc.write(0);audio();}// mute off
if(digitalRead(4)==HIGH&&power==0){power=1;mute=1;audio();lcd.clear();lcd.setCursor(0,0);lcd.print(" POWER OFF ");w=0;menu=100;menu2=100;delay(3000);lcd.noBacklight();}// power off
if(digitalRead(4)==HIGH&&power==1){power=0;mute=0;audio();lcd.backlight();lcd.clear();lcd.setCursor(0,0);lcd.print(" POWER ON ");menu=0;time=millis();w=1;w2=1;myEnc.write(0);delay(3000);lcd.clear();}// power on
if(power==0){digitalWrite(7,HIGH);}else{digitalWrite(7,LOW);} // выход STANDBY
if(digitalRead(5)==HIGH&&power==0&&menu<4){menu2=0;menu=100;cl();time=millis();w=1;w2=1;lcd.setCursor(0,0);lcd.print(" MENU 2 ");delay(2000);}// menu 2 on
if(digitalRead(5)==HIGH&&power==0&&menu>3){menu2=100;menu=0;cl();time=millis();w=1;w2=1;}// menu2 off
if(digitalRead(10)==LOW&&power==0&&menu>3){menu2++;cl();time=millis();w=1;w2=1;if(menu2>11){menu2=0;}}// меню 2
Судя по скетчу:
tda.setIn(in); // in1 in2 in3 = int in(0...2)
IN3 > in=2;
forum.rcl-radio.ru → Библиотеки → BD37033FV - Sound Processors for Car Audio
Форум работает на PunBB, при поддержке Informer Technologies, Inc
|