Микроконтролери и електроника
http://mcu-bg.com/mcu_site/

I2S to PWM
http://mcu-bg.com/mcu_site/viewtopic.php?f=3&t=9464
Страница 1 от 1

Автор:  getzata [ Вто Окт 25, 2011 6:43 pm ]
Заглавие:  I2S to PWM

Върти ми се из главата проект на усилвател клас Д захранен с импулсно захранване. Идеята ми е от USB да изкарам I2S ( с PCM2707 ) и след това с DSP да го преобразувам в PWM сигнал за Clsass D . Търсих готови интеграли , но без успех . Въпроса ми е някой занимавал ли се е с това да помогни какви трудности има и да даде някой съвет (тип процесор, помощ с кода) . Идеята е след като се подкара да се направи цифров еквалайзер, индикация и др функции.

Автор:  marcuka68 [ Сря Ное 02, 2011 6:46 pm ]
Заглавие:  Re: I2S to PWM

Една не толкова умна идея - не може ли от изхода на ЦАП да вържеш МЦУ с АЦП и с него да си генерираш ШИМ-а?

А дали няма готови ЦАП, които имат и вграден усилвател клас Д, нещо ми се върти в главата.

Автор:  getzata [ Сря Ное 02, 2011 9:24 pm ]
Заглавие:  Re: I2S to PWM

Не виждам смисъл да минава през цап и ацп , като мисля че може баправо от I2S в процесор и изход ШИМ.
Има готови но на тези дето попадам немога да ги намеря в БГ , пък и ако е с процесор може да му са добавят в последствие допълнителни екстри.

Автор:  marcuka68 [ Чет Ное 03, 2011 6:47 pm ]
Заглавие:  Re: I2S to PWM

Ако може направо така, супер, но си нямам и идея как изглежда една песен, пусната по I2C. Ако ти знаеш, може да използваш Look up table и да получиш ШИМ от цифровия сигнал.

Автор:  itso.t [ Чет Ное 03, 2011 9:30 pm ]
Заглавие:  Re: I2S to PWM

Протоколът е публично достъпен. Не е нещо сложно...
Прикачени файлове:
I2S.jpg
I2S.jpg [ 16.17 KiB | Прегледано 2249 пъти ]

Най-достъпно за реализация би трябвало да е с няколко брояча и малко логика.
Зареждаш данните през паралелните им входове и "вдигаш" изхода. Броиш по клока надолу до 0. Като стане, "сваляш" изхода. Вероятно ще трябва и някой междинен регистър за конверсия на серийните данни към паралелни и за временното им съхранение.
Ще стане скромна платчица са двадесетина чипа... :D

Автор:  mitkoradev [ Пет Ное 04, 2011 6:07 pm ]
Заглавие:  Re: I2S to PWM

Ако трябва процесор да чете от I2S и да създава PWM не е ли по-удобно направо процесора да чете от USB. Подкарвал съм с PIC18F2550 връзка от USB стерео към двата PWM модула със стандартен USB Audio драйвер ( резолюцията се получаваше малко под 8 бита за честота на PWM 4х 48кХз , 4х оверсампъл) , е резултате не беше особено качествен , но го отдавам в голяма степен и на слабата ми аналогова част, ако те интерсува мога да кача скалъпения код и хекс-а. По принцип USB Audio има няколко режима , ако се подкара на ~ 46.875 kHz (12МХз/256) в асинхронен режим с обратна връзка сигурно резултатите ще са по-добри, но така и не съм го направил, също така може и 10битов PWM да бъде по-качествен от 8 битов на по-висока честотта с оверсампъл, но нещо имах проблеми с четенето на два 16 битови канала от ПЦ-то и така и не го изпробвах, все се каня да поекспериментирам и не остава време ...

Автор:  plameniv [ Съб Ное 05, 2011 1:45 am ]
Заглавие:  Re: I2S to PWM

Твърде сложно се мъчиш да го направиш и ще ми е много интересно как ще усилваш или намаляваш звука ако е директно цифрово към PWM :)
Най лесно e да се вземе директно от аналогов изход от качествена звукова карта, повечето нови са достатъчно качествени.
Изахода от аналоговия вход го вкарваш в компаратор като на другия вход е триъгълен импулс с честотата на преобразуване. Най добре да е значително по висока от горната граница на звука поне 300-400КХз, получения сигнал го подаваш на мощни полеви транзистори и един дросел след тях.
Виж попрочети малко.
http://www.irf.com/technical-info/appnotes/an-1071.pdf
http://sound.westhost.com/articles/pwm.htm
http://www.analog.com/library/analogDia ... lass_d.pdf
http://www.ti.com/lit/ds/sles030/sles030.pdf
Вземи си готов чип. LM4651 http://www.national.com/opf/LM/LM4652.html#Overview

Автор:  getzata [ Съб Ное 05, 2011 8:03 pm ]
Заглавие:  Re: I2S to PWM

От бутоните на PCM2707 няма ли да стане увеличаването и намалянето или от компютъра.
Правил съм го така с компаратора Class D , но тука идеята ми е да няма никъде аналогов сигнал по платката.

Автор:  plameniv [ Нед Ное 06, 2011 5:22 pm ]
Заглавие:  Re: I2S to PWM

getzata написа:
От бутоните на PCM2707 няма ли да стане увеличаването и намалянето или от компютъра.
Правил съм го така с компаратора Class D , но тука идеята ми е да няма никъде аналогов сигнал по платката.

За усилване и намаляване на силата на звука забрави да минеш без аналогова част. Така и така ще позваш клас D и ще орежеш качеството заради филтрите, какво като ще имаш междинна аналогова част ?
Не си мисли че ще постигнеш качество като ползваш клас Д, точно такива усилватели се ползват на непретенциозни места например като усилвател за кола или дискотека, там има какви ли не шумове и човешкото ухо едва ли ще различни и 10кхц да не говорим за ниските дето се омазват с шума от двигателя или тълпата :)
Има смисъл от качествен звук ако ще правиш записи в студио и да го докараш на слушалките до прилично качество, или пък ако сигнала отива към някой излъчвател в ефир някъде, ама там няма нужда от такива мощности, и клас D си губи смисъла.
Дори за домашна уредба няма смисъл от клас D, 10w ти стига да си гледаш с достстъчна сила някой хубав филм.
Така че изобщо не се вманиачавай а си ръгай сигнала от звуковата карта в крайното стъпало и всичко ще е супер лесно и ще си решиш куп проблеми :wink:
Остава ти въпрос на избор на потенциометър дали да е цифров или двоен с една врътка :D

Автор:  getzata [ Нед Ное 06, 2011 6:12 pm ]
Заглавие:  Re: I2S to PWM

Да това ми е пределно ясно за усилвателите.
Да го кажем че цялата работа е част от курсов проект с такова задание.
Защо да неможе да се регулира силата на звука от компютъра или от PCM2707 (от копчетата му Vol UP , Vol Down ).
Като гледам тази интегралка никъде не минава през аналогов сигнал (може и да греша) http://www.nxp.com/documents/data_sheet/TFA9882.pdf , дори и да е така как се управлява при нея волумето.

Страница 1 от 1 Часовете са според зоната UTC + 2 часа [ DST ]
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
http://www.phpbb.com/