| Ваш IP: 3.237.6.124 | Online(27) - гости: 11, боты: 16 | Загрузка сервера: 0.47 ::::::::::::

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;}}

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

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

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

  • Простой микрофонный усилитель

    Простой микрофонный усилитель

    Предложенная схема предназначена для конденсаторного микрофона. Ус-во питается от источника питания 9В (крона), сама схема может быть встроена в корпус микрофона, а громкоговоритель должен быть внешним. Схема состоит из каскада предварительного усиления на транзисторе 2N3904 и усилителя мощности на ОУ LM386. Схема проста в изготовлении, в настройке не нуждается.   Источник — http://www.eleccircuit.com/pre-mic-audio-amplifier-with-ic-lm386/Подробнее...
  • УНЧ на TDA7264

    УНЧ на TDA7264

    Стереофонический Hi-Fi усилитель НЧ, выходной каскад которого работает в режиме АВ. Специально разработан для высококачественного звуковоспроизведения в музыкальных центрах и ТВ приемниках. Напряжение питания ±5…22,5В Максимально потребляемый ток 4,5А Ток покоя при Uп=±20В Rн=8Ом — 80мА Выходная мощность при Uп=±20В Rн=8Ом КНИ 10% — 25Вт Выходная мощность при Uп=±16В Rн=4Ом …Подробнее...
  • Простой корректор на 2-х транзисторах

    Простой корректор на 2-х транзисторах

    Корректор имеет следующие характеристики: Максимальное входное напряжение 40 мВ Максимальное выходное напряжение 4В Перегрузочная способность 24дБ Коэффициент усиления на частоте 1000Гц — 100 Отклонение АЧХ от стандартной не более +/-1дБ Отношение сигнал шум (невзвешенное) 65дБ Коэффициент гармоник не более 0,1% Напряжение питания 15В Ток потребления 1,5мА Корректор при всей своей …Подробнее...
  • MAX6125, MAX6141, MAX6145, MAX6150, MAX6160 — источники опорного напряжения с низким падением напряжения

    MAX6125, MAX6141, MAX6145, MAX6150, MAX6160 — источники опорного напряжения с низким падением напряжения

    Микромощные источники опорного напряжения (ИОН) с низким напряжением падения MAX6125, MAX6141, MAX6145, MAX6150, MAX6160 имею выходное напряжение 2.5 В, 4.096 В, 4.5 В, 5.0 В и регулируемые от 1.23 В до 12.4 В . Основные технические характеристики: Корпус: 3-Pin SOT23 (MAX6125/41/45/50) и 4-Pin SOT143 (MAX6160) Низкое падение напряжения: 200 мВ Ток …Подробнее...
  • Индикатор уровня

    Индикатор уровня

    Очень простая схема индикации уровня на 10-и светодиодах представлена на рис.. микросхема которая используется в данной схеме обладает коэф. усиления — 1. С помощью переключателя S1, мы можем выбрать индикации. Уровень водного сигнала от 60 мВ до 1,25 В. Элементная база R1-2=10Kohm D11-12=1N 4148 S1= mini switch R3-4=1Kohm C1=10uF 25V …Подробнее...