| Ваш IP: 3.238.186.43 | Online(51) - гости: 39, боты: 12 | Загрузка сервера: 2.49 ::::::::::::

DAC TDA1543 + DIR9001 + PT2259 (Arduino)

Внешний ЦАП состоит из недорогих и доступных компонентах, ресивер S/PDIF на базе DIR9001, ЦАП на TDA1543, регулятор громкости выполнен на PT2259. Так как вход DIR9001 имеет вход уровня TTL, сигнал S/PDIF подается через преобразователь интерфейса MAX485. Цифровой регулятор громкости PT2259 под управлением Arduino имеет 79 шагов уровней громкости, режим MUTE, управление громкостью осуществляется при помощи энкодера ky-040 (модуль), кнопка энкодера используется для активации режима MUTE. Уровень громкости выводится на семисегментный четырех разрядный индикатор TM1637 (модуль).

Ресивер аппаратно настроен на выходной формат 24-Bit I2S с частотой дискретизации 96 кГц. ЦАП TDA1543 16 бит с токовым выходом. Каждый компонент внешнего ЦАПа имеет свое собственное питание которое подается от отдельного стабилизатора. Общий источник питания имеет напряжение 12 В, которое подается на пять стабилизаторов и дополнительно используется для питания платы Arduino.

Напряжение питания PT2259 от 4 до 10 В, 9 В рекомендуемое, входное сопротивление 33 кОм, минимальное сопротивление нагрузки 6 кОм. Отношение сигнал/шум не менее 120 дБ, коэффициент нелинейных искажений не более 0.003% при уровне выходного сигнала 200mVrms.

Схема ресивера на DIR9001

Схема ЦАП на TDA1543 и регулятора громкости на PT2259

Схема стабилизаторов напряжения

Подключение Arduino Nano

  • Энкодер
    • CLK — D9
    • DT — D8
    • SW — D10
    • Питание +5 В
  • Индикатор TM1637
    • CLK — D2
    • DIO — D3
    • Питание +5 В
#include <Wire.h>
#include <PT2259.h>
#include <Encoder.h> // https://rcl-radio.ru/wp-content/uploads/2019/05/Encoder.zip
#include <EEPROM.h> // Входит в состав Arduino IDE
#include <MsTimer2.h> // https://rcl-radio.ru/wp-content/uploads/2018/11/MsTimer2.zip
#include <STM32_TM1637.h> // http://forum.rcl-radio.ru/misc.php?action=pan_download&item=452&download=1
 STM32_TM1637 tm(2,3);// CLK, DIO
 PT2259 pt;
 Encoder myEnc(8, 9);// DT, CLK
  int vol,w,w1,mute;
  unsigned long time,oldPosition  = -999,newPosition;   
 
void setup(){
  pinMode(10,INPUT);  // МЕНЮ КНОПКА SW энкодера
  MsTimer2::set(1, to_Timer);MsTimer2::start();
  if(EEPROM.read(100)!=0){for(int i=0;i<101;i++){EEPROM.update(i,0);}}// очистка памяти при первом включении 
  tm.brig(7); // ЯРКОСТЬ 0...7
  tm.print_float(0,0,  0b01000000,0b01110011,0b01111000,0b01000000);
  delay(2000);
  tm.print_float(2259,0,  0,0,0,0);
  delay(2000);
  vol = EEPROM.read(0);
  audio();
  }
 
void loop(){
////////// VOLUME //////////////
 if(newPosition != oldPosition&&mute==0){oldPosition = newPosition;vol=vol+newPosition;myEnc.write(0);newPosition=0;time=millis();w=1;w1=1;vol_func();} 
 if(w==1){w=0;audio();tm.print_float(vol*10,0,  0b00001000,0,0,0b00001000);}
 
///////// MUTE //////////// 
  if(digitalRead(10)==LOW&&mute==0){mute=1; audio();tm.print_float(0,0,  0b01000000,0b01000000,0b01000000,0b01000000);delay(200);}
  if(digitalRead(10)==LOW&&mute==1){mute=0; audio();w=1;delay(200);}
 
///////// EEPROM /////////////
   if(millis()-time>5000 && w1==1){w1=0;EEPROM.update(0,vol);}
   delay(10);
}// loop
 
void audio(){
 pt.setVol_ch2(mute, vol); // mute, vol
// mute on  === 1
// mute off === 0
// vol === -79...0 dB === int 0...79  
// channel-by-channel adjustment
// pt.setVol_left(0, 79);
// pt.setVol_right(0, 79);
  } 
 
void to_Timer(){newPosition = myEnc.read()/4;} 
void vol_func(){if(vol<0){vol=0;}if(vol>79){vol=79;}}

Добавить комментарий

Войти с помощью: 

Случайные статьи

  • УМЗЧ на микросхеме TDA1552Q

    УМЗЧ на микросхеме TDA1552Q

    Усилитель при высоком качестве звучания очень прост в изготовлении и не нуждается в налаживании. Он имеет универсальный вход с плавной регулировкой чувствительности. Это практически «полный» усилитель, но без входов для микрофона и звукоснимателя. Усилитель мощности реализован на МС фирмы Philips TDA1552Q. Схема его включения позаимствована из [1]. Предварительный усилитель собран …Подробнее...
  • 2,1 — Dual усилитель мощности на TDA7240 и TDA1517

    2,1 — Dual усилитель мощности на TDA7240 и TDA1517

    Основная проблема с конструкцией усилителя с общим буфером , является то, что сигналы левого и правого каналов, рано или поздно суммируются. В результате простого сложения, разделение между каналами сводится к минимуму и нарушается сама идея stereofonii. Наиболее эффективным методом суммирования известный сегодня — сигнал активной smesitelyami — фильтры с высоким …Подробнее...
  • УМЗЧ 2*14Вт на TDA7269A

    УМЗЧ 2*14Вт на TDA7269A

    УМЗЧ на базе TDA7269A относится к классу АВ и предназначен для использования в усилителях Hi-Fi класса. Микросхема имеет тепловую защиту, защиту от КЗ выходов на корпус и шину питания. В микросхеме встроены функции MUTE и STAND-BY. Усилитель на базе TDA7269A имеет следующие технические характеристики: Номинальное напряжение питания +/-16В Напряжение питания …Подробнее...
  • РЕГУЛЯТОР ОБОРОТОВ ДЛЯ ЭЛЕКТРОИНСТРУМЕНТА

    РЕГУЛЯТОР ОБОРОТОВ ДЛЯ ЭЛЕКТРОИНСТРУМЕНТА

    На рисунке показана схема регулятора оборотов электроинструмента. При работе с электроинструментом желательно иметь возможность плавно изменять его обороты, но простое снижение напряжения приводит к снижению оборотов и так же к потери мощности, предложенная схема лишена этого недостатка, так как в ней используется регулирование с обратной связью по току двигателя, в …Подробнее...
  • Зарядное уст-во на TL497

    На рисунке показана схема зарядного уст-ва на основе преобразователя напряжения на ИС TL497. В схеме VR1 регулирует выходное напряжение. Преобразователь работает на частоте 50кГц и С3 задает эту частоту. Схема работает от напряжения 5В при токе источника (маломощный трансформатор с выпрямителем или солнечная панель) 100мА. Так же схема может работать …Подробнее...