<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > 電源與新能源 > 設(shè)計應(yīng)用 > 數(shù)控D類功放系統(tǒng)的設(shè)計與分析

          數(shù)控D類功放系統(tǒng)的設(shè)計與分析

          作者: 時間:2012-11-20 來源:網(wǎng)絡(luò) 收藏


          2 系統(tǒng)總體設(shè)計
          系統(tǒng)主要由TI公司的USB數(shù)字音頻接口(PCM2704)、ST公司的模擬音頻接口(TDA7449)、Philips公司的DDX音頻功率放大器(TDA8922)、Atmel公司的單片機(AT89C2051)以及電源和鍵盤和顯示電路組成。其中PCM2704用于接收來自USB主機(如臺式電腦、筆記本電腦、PDA、手機等)的音頻數(shù)據(jù)流,經(jīng)過數(shù)字音量和音效處理后,將其轉(zhuǎn)換為模擬音頻信號。TDA7449內(nèi)置的二選一立體聲多路開關(guān)用于數(shù)字音頻信號(PCM27 04的輸出)和模擬音頻信號(外部輸入)之間的切換,被選中的音頻信號在經(jīng)過TDA74149內(nèi)部的模擬音量和音效處理后,再送至音頻功率放大器TDA8922,該信號經(jīng)過TDA8922內(nèi)部的PWM調(diào)制和DDX功率控制后,產(chǎn)生足夠大的音頻功率去驅(qū)動外部音頻設(shè)備。單片機AT89C2051主要用于鍵盤輸入的掃描、工作狀態(tài)的提示以及各功能模塊工作狀態(tài)的設(shè)置和管理。電源模塊為系統(tǒng)提供的±15 V功率電源、+9 V的模擬電源和+5 V的數(shù)字電源。鍵盤和顯示模塊用于接收用戶的操作輸入并向用戶反饋系統(tǒng)的當前狀態(tài)。數(shù)控總體設(shè)計框圖如圖2所示。

          本文引用地址:http://www.ex-cimer.com/article/175996.htm

          e.JPG



          3 主要硬件設(shè)計
          3.1 模擬音頻處理單元
          數(shù)控模擬音頻處理單元如圖3所示,ST公司的TDA7449內(nèi)置的二選一立體聲多路開關(guān),可選擇來自USB接口的數(shù)字音頻信號(PCM2 704的輸出)和來自外部的模擬信號。通過I2C總線可以設(shè)置16階的前置放大倍數(shù)、16階的音量大小、16階的音調(diào)控制以及立體聲和單聲道輸出。

          f.JPG


          3.2 單片機控制電路
          主控CPU采用了AT89C2051單片機,它有20個引腳,最高頻率可以達到24 MHz,128個內(nèi)部RAM字節(jié),兩個定時器,可以直接驅(qū)動LED,內(nèi)部資源豐富,性價比高。
          單片機控制電路主要通過掃描矩陣式鍵盤,將掃描信息通過P3.5引腳和P3.7引腳模擬的I2C總線接口發(fā)送到TDA7449的I2C總線輸入接口,同時通過P3.0引腳控制TDA8922的模式是靜音還是正常放大,并將按鍵信息通過LED顯示出來,如圖4所示。

          g.JPG



          評論


          相關(guān)推薦

          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();