我們從最簡(jiǎn)單的開(kāi)始,先做一個(gè)直通的例程。先把這個(gè)板子弄出聲來(lái),這個(gè)程序我覺(jué)得幾分鐘就能掌握,你會(huì)發(fā)現(xiàn)SigmaDSP的開(kāi)發(fā)竟然是如此的簡(jiǎn)單!
開(kāi)關(guān)說(shuō)明:在前面的章節(jié)里,們已經(jīng)對(duì)開(kāi)關(guān)進(jìn)行了詳細(xì)的說(shuō)明,第一和第二個(gè)例程我再把開(kāi)關(guān)撥法重復(fù)一下,后面的例程中不再描述。
S1:OFF,進(jìn)入調(diào)試模式,不需要ADAU1467自啟動(dòng),所以調(diào)整為OFF;
SW2:SPI,讓USBI仿真器用SPI模式對(duì)ADAU1467進(jìn)行調(diào)試。(特別注意,ADAU1467可以用SPI和IIC兩種模式進(jìn)行調(diào)試,我們這個(gè)例子先講用SPI模式調(diào)試,第二個(gè)例子再講用IIC模式調(diào)試)
SW4和SW5:調(diào)到USBI CTRL,由USBI仿真器控制DSP進(jìn)行調(diào)試;
SW6:SPI,這個(gè)是單片機(jī)的調(diào)試模式,不用管他,一直用SPI。
下面要做的事很簡(jiǎn)單,選擇一路LINE IN,輸入音源,通過(guò)AD1938模擬轉(zhuǎn)數(shù)字,進(jìn)入ADU1467的DSP中,并不經(jīng)過(guò)任何的數(shù)字音效處理,直通到AD1938數(shù)字轉(zhuǎn)模擬,再輸出到耳機(jī)。讓手機(jī)輸入音源播放音樂(lè),看看耳機(jī)能否正常的發(fā)聲。
1. 打開(kāi)SigmaStudio軟件。我安裝的是4.2版本,當(dāng)下最新的。選擇File> New Project,新建一個(gè)工程。
2. 首先設(shè)計(jì)Hardware,把ADAU1467,USBi和EEPROM鼠標(biāo)選中,拖到Hardware里來(lái),然后按照下面的圖示進(jìn)行鏈接(這是所有SigmaDSP設(shè)計(jì)的第一步):
注意!請(qǐng)不要隨便改變 USBi 單元顯示的 SPI 或 I2C 地址,否則會(huì)導(dǎo)致通信錯(cuò)誤, 從而不能正常聯(lián)接調(diào)試,你的硬件是怎么設(shè)計(jì)的,你就選擇怎樣的鏈接。我的開(kāi)發(fā)板設(shè)計(jì)的是IIC的EEPROM,就是上圖這么連。
3. ADAU1467的寄存器配置
這一步很關(guān)鍵,ADAU1467和ADA1452以及其他我們用過(guò)的型號(hào)不一樣,他默認(rèn)的是模擬的8進(jìn)8出,另外還有16路通道,可以通過(guò)寄存器配置成2入14出,4入12出,8入8出,14入2出,而我們這個(gè)開(kāi)發(fā)板的設(shè)計(jì)師12進(jìn)20出,所以需要進(jìn)行寄存器配置;
4. 硬件鏈接設(shè)計(jì)好了,接下來(lái)的音頻設(shè)計(jì)步驟,需要轉(zhuǎn)換到原理圖設(shè)計(jì)頁(yè)面(Schematic),選中Schematic。
5. 將做好的例程下載到板子上。可按F7或快捷按鈕,或通過(guò)主菜單Link Compile Download來(lái)把你的設(shè)計(jì)下載到開(kāi)發(fā)板的ADAU1467的內(nèi)存中,實(shí)現(xiàn)1467 的音頻直通功能。
如USBi與開(kāi)發(fā)板通信正常, SS右下角的狀態(tài)欄會(huì)顯示100%, Active: Downloaded。
注意1:編譯完畢后,SS會(huì)在右邊的output窗體里顯示編譯結(jié)果,如有錯(cuò)誤會(huì)提示錯(cuò)誤信息,用戶可據(jù)此信息去修改設(shè)計(jì);如成功則會(huì)顯示資源占用信息,用戶可根據(jù)百分比來(lái)增減模塊,如圖:
怎么樣,是不是不要10分鐘,就能自己開(kāi)發(fā)出第一個(gè)SigmaStudio例程啦 :)
注意2:USBi將例程down到了板子上ADAU1467的SRAM上,斷電就沒(méi)有了。USBi的這種調(diào)試是為了快速驗(yàn)證功能,最終需要把這個(gè)例程的代碼燒寫到ADAU1467的外部EEPROM來(lái)實(shí)現(xiàn)自啟動(dòng),從而實(shí)現(xiàn)脫機(jī)運(yùn)行。因?yàn)檫想要多寫幾個(gè)例程,所以這個(gè)最終的燒寫和脫機(jī)操作我會(huì)放到最后來(lái)寫。 |