這個方案用的是CD3315+TDA2822+Mega8L,外加一片LM386做電平移動。同時,把模擬信號放大到適合MEGA8ad采樣的程度。整個方案使用芯片比較少,成本相對較低,最貴就是那些點陣了(總共用了三個點陣來顯示頻譜)。

數字部分原理圖

模擬部分原理圖
上面給出的整個系統電路圖,包括兩數字部分和模擬部分。其實,電路圖比較簡單,代碼編寫倒是很花時間。
整個系統采用一個mega8控制,代碼比較多。這次用mega8也算是用到極致了:用了一個外部中斷(紅外接收)、兩個定時器(一個adc采樣,一個掃描點陣),同時加上內部eeprom存儲DSP音頻設置數據。(本來還加了pwm功能,實在是代碼沒地方寫了,最后舍棄了)
模擬部分
前端音頻處理。這個耳放通過CD3315可以對音頻信號實現非常好的處理。輸入到TDA2822驅動耳機,可以很明顯聽出處理前后的效果,尤其是音質不怎么樣的mp3或者其他音頻,只要通過CD3315進行高低音的調節,就可以調出非常好的效果(媲美媚族MP3音質)。
不過,耳機不能太爛。CD3315(PT2315,TDA7315)這幾個芯片都是管腳通用的音頻數字調節芯片,一塊芯片就可以實現對兩個聲道的音頻信號的主音量、高/低音、左/右聲道、超重低音、靜音實現數字控制,而且效果特好。
后端輸出采用TDA2822(這個是一個雙聲道的音頻放大芯片,常用于收音機和錄音機上)。和CD3315搭配起來,效果非常好,驅動能力大,音質也不錯。
整個系統的電源全部來自USB(可以從電腦或MP3充電器上取電),因為系統功耗不是很大(不過,無論是電腦電源還是MP3電源,都是開關電源,紋波都比較大,所以如何抑制紋波是一個重點!我通過實驗發現,加電感可以很好的抑制紋波!比加電容效果好得多),所以,從USB得到電源之后就把正負電源線都經過電感,同時,數字和模擬部分也都用電感連接,在沒有聲音輸入的時候,耳機里也聽不到噪聲!
因為系統會偶爾斷電,所以要保證時鐘在斷電之后也能正常跑,就必須加備用電源!(供ds1302用)選擇的是用電容充電來提供電壓,用兩個4700uF的電容并聯供電(據網友介紹,一個100uF的電容就可以跑1個小時)。 |