新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應用 > TMS320VC5402與模擬芯片TLC320AD50C接口設(shè)計

TMS320VC5402與模擬芯片TLC320AD50C接口設(shè)計

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

3.1 硬件連接
根據(jù)圖1和圖2的時序,則容易實現(xiàn)TLC320AD50C與的硬件連接,如圖3所示。

TLC320AD50C的MCLK外接8.192MHz的晶振,的FSX和FSR由TLC320AD50C設(shè)置。如果選擇D7=0,N=8,則采樣速率為8kHz。

3.2 通信協(xié)議
TLC320AD50C的通信有兩種格式:一次通信格式和二次通信格式。
一次通信格式的16位都用來傳輸數(shù)據(jù)。DAC的數(shù)據(jù)長度由寄存器1的D0位決定。啟動和復位時,缺省值為15+1位模式,最后一位要求二次通信。如果工作在16位傳輸模式,則必須由FC產(chǎn)生二次通信請求。
二次通信格式則用來初始化和修改TLC320AD50C內(nèi)部寄存器的值。在二次通信中可通過向DIN寫數(shù)據(jù)來初始化。
格式如下:

系統(tǒng)復位后,必須通過DSP的DX口向TLC320AD50C的DIN寫數(shù)據(jù),如果采用一片TLC320AD50C,只需初始化其寄存器1、寄存器2和寄存器4。
由于通信數(shù)據(jù)長度為16位,初始化時應通過RCR1和XCR1設(shè)置McBSP的傳輸數(shù)據(jù)長度為16。考慮到TLC320AD50C復位后至少經(jīng)過6個MCLK才可以脫離復位,故可以在此時間內(nèi)初始化DSP的串行口。

3.3 軟件實現(xiàn)
SERIAL_INIT
LD #AIC_DPDP 為AIC的復位初始化DP
ST #K_RESET AIC_IN_RESET
PORTW #AIC_IN#RESET K_AIC_ADDR 復位AIC
Need at least 6 cycles to pull the aic out of reset
STM #K_SERIAL_RETR SPCR1
STM #K_SERIAL_RETX SPCR2
初始化串行口控制寄存器1,2復 位串行口
STM #K_SERIAL_OUTRETR SPCR1
STM #K_SERIAL_OUTRETX SPCR2
使串行口脫離復位
RSBX INTM INTM=0,打開所有的中斷
LD #0 DP
ORM #K_BRINT0|K_BXINT0IMR
打開BRINT0和BXINT0
LD #AIC_DPDP
STM # K_BRINT0 IFR 清除標志
ST #K_ORESET AIC_OUT_RESET
PORTW #AIC_OUT_RESET K_AIC_ADDR
AIC脫離復位
STM RCR1#K_RFW
初始化接收控制寄存器1,設(shè)
置接收數(shù)據(jù)長度為16位
STM XCR1#K_XFW
初始化發(fā)送控制寄存器1,設(shè)
置發(fā)送數(shù)據(jù)長度為16位
STM PCR#K_SERIAL
設(shè)置為串行口工作方式,而不
是通用I/O方式
STM #K_DATA DXR1
向DIN寫數(shù)據(jù),引起二次通信,
等待串行口中斷
IDLE
在BXINT0的中斷服務(wù)程序里,向DXR1寫入寄存器的值。


上一頁 1 2 下一頁

評論


相關(guān)推薦

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

關(guān)閉