|
|
使用音樂(lè)頻譜時(shí)發(fā)現(xiàn)經(jīng)常需要把手機(jī)或mp3的音量調(diào)到最高效果才好。
為解決這個(gè)問(wèn)題就在音樂(lè)頻譜ad輸入前加一級(jí)音頻功放電路,用普通的雙聯(lián)電位器通過(guò)手動(dòng)控制的方法調(diào)整功率輸出以達(dá)到頻譜顯示最好的效果。
思考下,如果ad前一級(jí)功率輸出可通過(guò)單片機(jī)控制就更完美。
通過(guò)淘寶查找 到電位 器FM62429, 價(jià)格不到1元,是仿制日本M62429的國(guó)產(chǎn)芯片。
又百度查詢(xún)了單片機(jī)控制此芯片的方法,并在51黑里也查過(guò)關(guān)于M62429的應(yīng)用還沒(méi)有網(wǎng)友發(fā)過(guò)帖子,就在此轉(zhuǎn)載一下。
本文介紹的音量控制IC為M62429,市面上有很多類(lèi)似的產(chǎn)品,例如:FM62429、CD62429、CSC62429等。其實(shí),掌握了一兩種IC的編程方法,稍作改動(dòng)就很容易移植到其它產(chǎn)品上。M62429是日本三菱公司的音量控制IC,音量調(diào)節(jié)范圍是0~-83dB,控制精度每步1dB,內(nèi)部電路如圖一(詳見(jiàn)M62429的使用手冊(cè))。
101016230259651.jpg (26.04 KB, 下載次數(shù): 159)
下載附件
2016-9-11 20:47 上傳
2 硬件電路
根據(jù)圖一而設(shè)計(jì)的電路如圖二。
圖二中已省略了單片機(jī)與功放連接的其他電路,只剩下AT89C52的晶振部分、與M62429相關(guān)的電路、控制音量必需的按鍵電路等,加上電源之后,該電路可以獨(dú)立工作。由于AT89C52真正的串口已用于其他用途,M62429的4腳(DATA)連至AT89C52的P2.2,M62429的5腳(CLOCK)連到AT89C52的P2.1。由這兩個(gè)引腳(P2.1、P2.2)作為模擬串口與M62429通信,控制音量的數(shù)據(jù)便由這個(gè)模擬串口發(fā)出。
音頻信號(hào)從LH1輸入,其中L通道信號(hào)經(jīng)過(guò)C1耦合到M62429 的1腳,被控制之后從2腳輸出,再經(jīng)C2耦合到LH2輸出到后級(jí)進(jìn)行放大。R通道信號(hào)經(jīng)C4耦合到M62429的8腳,被控制后從7腳輸出。經(jīng)C3耦合至LH2輸出到后級(jí)進(jìn)行放大。在LH1處輸入合適的音源,從LH2處就可以監(jiān)聽(tīng)音量控制的情況。SW1為音量增加按鈕。SW2為音量減小按鈕,SW3為復(fù)位按鈕。
101016230259652.jpg (35.59 KB, 下載次數(shù): 150)
下載附件
2016-9-11 20:48 上傳
3 軟件設(shè)計(jì)
從M62429使用手冊(cè)可知,送去M62429的控制數(shù)據(jù)DATA為11位。通常的用法如表一:
表一:M62429 常用的11位數(shù)據(jù)(DATA )結(jié)構(gòu)
101016230259653.jpg (3.6 KB, 下載次數(shù): 135)
下載附件
2016-9-11 20:49 上傳
表二 M62429音量衰減值與D2~~D6的關(guān)系
101016230259654.jpg (8.96 KB, 下載次數(shù): 128)
下載附件
2016-9-11 20:50 上傳
101016230259655.jpg (4.85 KB, 下載次數(shù): 152)
下載附件
2016-9-11 20:50 上傳
從表二看出,D2~D6控制步長(zhǎng)為4dB,需加上D7、D8(見(jiàn)表三)才能達(dá)到控制步長(zhǎng)為1dB的要求。例如最大音量時(shí)衰減值為0dB,查表二,D2~D6數(shù)據(jù)為10101,查表三,D7,D8為11,所以D2~~D8應(yīng)為1010111,根據(jù)表一,D0~D10這11位數(shù)據(jù)為10101011111。同理,衰減值為-1dB時(shí)的11位數(shù)據(jù)為10101010111。由于AT89C51系列單片機(jī)處理數(shù)據(jù)是8位,由P2.2、P2.1組成的模擬串口無(wú)法一次完成11位數(shù)據(jù)的發(fā)送工作。我們只好把這11位數(shù)據(jù)分為兩次發(fā)送,我們可以用先發(fā)送6位、后發(fā)送5位的方法(當(dāng)然也可以用其他方法)發(fā)送。例如衰減0dB的數(shù)據(jù)10101011111,先發(fā)送前6位101010,后發(fā)送5位11111。由于AT89C51系列單片機(jī)數(shù)據(jù)為8位,我們可以在這些數(shù)據(jù)后面加上“0”,補(bǔ)足8位。那么,衰減0dB的一組數(shù)據(jù)就成為了10101000和11111000。把這組數(shù)據(jù)用十六進(jìn)制數(shù)來(lái)表示的話(huà),就是A8H,F8H。用同樣的方法,可得出各個(gè)衰減值的數(shù)據(jù)。
我們?cè)O(shè)計(jì)程序的思路是:根據(jù)開(kāi)機(jī)預(yù)設(shè)衰減值,用查表法查出衰減數(shù)據(jù),然后把數(shù)據(jù)發(fā)送出去,發(fā)送時(shí)先發(fā)第一個(gè)數(shù)據(jù)的前6位,再發(fā)送另一數(shù)據(jù)的前5位。由于M62429的控制范圍是0dB~-83dB。在這個(gè)范圍內(nèi),數(shù)字越大,音量越小。要增加音量,就要減少用于查表那個(gè)數(shù)字(程序中R4的值)。框圖如圖三。83dB。在這個(gè)范圍內(nèi),數(shù)字越大,音量越小。要增加音量,就要減少用于查表那個(gè)數(shù)字(程序中R4的值)。框圖如圖三。
101016230259656.jpg (28.05 KB, 下載次數(shù): 148)
下載附件
2016-9-11 20:51 上傳
|
評(píng)分
-
查看全部評(píng)分
|