Jump to content
  • entries
    26
  • comments
    394
  • views
    43155

Модуль генераторов для Mercury DAC

В последней ревизии своего ЦАПа на PCM1794 я заложил возможность подачи внешнего сигнала мастерклока. А для переключения генераторов разных сеток частот на входной разъем I2S следует подать управляющий сигнал на 2 вывод. Лог. 0 соответствует сетке x48, лог. 1 - сетке x44. Далее после гальванической развязки он попадает на разъем CTRL.

Поэтому был разработан модуль, который содержит пару генераторов на обе сетки частот мастерклока и управляющий микроконтроллер ATtiny24/44/84.

5c8820c66add4_2019-03-1301-03-26.thumb.JPG.f8dccbead197e92aa71691f3b012bf69.JPG

Схема модуля имеет вид:

image.png.5f510f3d92844766d14073905ef36ec7.png

Логика работы программы до безобразия проста. После инициализации контроллера производится инициализация ЦАПа (опционально), включается один из генераторов в зависимости от сигнала SEL_OSC (Select of Oscillator). Далее МК переключается в режим сна с отключением всех источников тактирования (режим Power-Down). При изменении уровня сигнала SEL_OSC МК пробуждается,  приглушает выход ЦАПа путем записи соответствующего бита в его регистр по SPI (бит MUTE регистра 18 PCM1796), переключает генератор и возвращает нормальный режима работы ЦАПа. После этого МК снова уходит в сон до очередной смены уровня сигнала управления генераторами.

Объем программы не занимает и 512 байт.

Печатная плата:

5c882114b6b19_mercgbtop.thumb.png.eedc00f5e7dc5ca014e84398210cfa39.png 5c8820eeccd37_mercgbbot.thumb.png.786fad61646d7c086b34868c3ef104f3.png

Скрытый текст

mercury_gb_top.png.43631155cbe1b041141064519c66ce5f.png mercury_gb_bot.png.feb6e0585c0118303118573cc41a127e.png

Скачать прошивку под микроконтроллер ATtiny44 (13/03/19) для SW управления.

Конфигурационные биты (fuses) следует установить в следующие значения:

SELFPRGEN = [ ]
RSTDISBL = [ ]
DWEN = [ ]
SPIEN = [X]
WDTON = [ ]
EESAVE = [X]
BODLEVEL = 4V3
CKDIV8 = [ ]
CKOUT = [ ]
SUT_CKSEL = INTRCOSC_8MHZ_6CK_14CK_0MS

EXTENDED = 0xFF (valid)
HIGH = 0xD4 (valid)
LOW = 0xC2 (valid)

 

  • Like 1
  • Upvote 2


0 Comments


Recommended Comments

There are no comments to display.

Join the conversation

You are posting as a guest. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Add a comment...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...

×
×
  • Create New...