TMS320C5402在16路全雙工來(lái)電顯示中的應(yīng)用
1.2 解調(diào)部分
在圖1中,k一定要小于每個(gè)比特的采樣數(shù),此例k6。假設(shè)接收到的樣值s(n)和s(n-k)屬于同一個(gè)比特,則:
v(n)=s(n)s(n-k)=A2sin(2πFnTe)sin(2πF(n-k)Te)
=A2/2[cos(2πFkTe)-cos(4πFnTe-2πFkTe)]
通過(guò)低通濾波器后,r(n)=A2/2cos(2πFkTe) F={F0,F1}
由此可見(jiàn),r(n)為常數(shù),A2/2cos(2πF0kTe)或A2/2cos(2πF1kTe),僅依賴于發(fā)送比特是“0”還是“1”。
k的選擇應(yīng)使d(k)=|cos(2πF0kTe)-cos(2πF1kTe)|最大。在此方案中,k=4。
由于v.23的比特率為1200bps,因此低通濾波器fcutoff=1200Hz。
2 DSP設(shè)計(jì)
TMS320C5402是一款高性價(jià)比的數(shù)字信號(hào)處理器。片上有可編程等待狀態(tài)發(fā)生器和塊切換寄存器、兩個(gè)多通道增強(qiáng)型緩沖串口(McBsp)、一個(gè)增強(qiáng)型的8位并行主機(jī)接口(HPI8)、兩個(gè)16位定時(shí)器、一個(gè)六通道DMA控制器。TMS320C5402還有4K×16bit片上ROM和4K×16bit片上RAM,最大可尋址1M×16bit的存儲(chǔ)空間。片上ROM的保留區(qū)域?qū)τ脩魜?lái)說(shuō)是不可用的,原因是用戶無(wú)法寫入數(shù)據(jù)。片上ROM包括為Bootloader保留的區(qū)域及A律表、μ律表、sin表和中斷向量表。TMS320C5402有內(nèi)部振蕩器構(gòu)成的內(nèi)部時(shí)鐘源和鎖相環(huán)時(shí)鐘發(fā)生器構(gòu)成的外部時(shí)鐘源。
系統(tǒng)初始化工作頻率為100MHz,對(duì)片上存儲(chǔ)器訪問(wèn)無(wú)需等待狀態(tài),訪問(wèn)外部I/O空間設(shè)為兩個(gè)等待狀態(tài)。
在本系統(tǒng)中,采用McBsp0、DMA0、DMA4。DMA0的同步事件為McBsp0的接收事件REVT0;源地址指向DRR,并固定不變;目的地址指向DMA接收緩沖區(qū),每次自增1;采用ABU模式實(shí)現(xiàn)雙緩沖,DMA0接收緩沖區(qū)半滿或全滿時(shí)發(fā)生中斷;中斷服務(wù)子程序?qū)ζ渲袆傄鹬袛嗟哪且话霐?shù)據(jù)進(jìn)行解調(diào),而此時(shí)接收的數(shù)據(jù)順序放到另一半。為了節(jié)省存儲(chǔ)器空間,串口不對(duì)接收數(shù)據(jù)進(jìn)行擴(kuò)張,而在程序中進(jìn)行軟件擴(kuò)張。DMA4的同步事件為McBsp0的發(fā)送事件XEVT0;源地址指向DMA發(fā)送緩沖區(qū),每次自增1;目的地址指向DXR,并固定不變;采用ABU模式實(shí)現(xiàn)雙緩沖;DMA發(fā)送緩沖區(qū)半滿或全滿時(shí)發(fā)生中斷,中斷服務(wù)子程序發(fā)送剛引起中斷的那一半數(shù)據(jù),而此時(shí)正在調(diào)制的數(shù)據(jù)順序放到另一半。因?yàn)榫€路上一般傳送的是A律數(shù)據(jù),因此發(fā)送時(shí)要在串口中進(jìn)行硬件壓縮。
經(jīng)仿真發(fā)現(xiàn),采用C語(yǔ)言編程,TMS320C5402至少可以實(shí)現(xiàn)16路全雙工來(lái)電顯示,因此McBsp0應(yīng)設(shè)置為:接收數(shù)據(jù)格式為每幀8字,每字16位(表示16路A律數(shù)據(jù));發(fā)送數(shù)據(jù)格式為每幀16字,每字16位。為了減少串口錯(cuò)誤,指定由RSYNCERR和XSYNCERR產(chǎn)生RINT和XINT。
另外還需注意,為了實(shí)現(xiàn)字同步,異步傳輸時(shí)首先對(duì)發(fā)送數(shù)據(jù)的每個(gè)字節(jié)加上起始位“0”和停止位“1”,解調(diào)后應(yīng)去掉相應(yīng)的起始位和停止位。在發(fā)送過(guò)程中,如果沒(méi)有待發(fā)數(shù)據(jù),可以發(fā)送停止位(即頻率為F1的載波)或靜音(樣值為0)。
利用TMS320C5402實(shí)現(xiàn)符合v.23建議的16路全雙工來(lái)電顯示,其原理簡(jiǎn)單,易實(shí)現(xiàn),但是抗干擾性較差。由于DTMF的某些頻率與v.23碼的載波頻率非常接近,如果混有DTMF碼,也可解出少量的DTMF碼。為了排除此類錯(cuò)誤,需要加上增益控制、帶通濾波等,這使得設(shè)計(jì)變得復(fù)雜。實(shí)踐中,此類錯(cuò)誤較少,除非特別要求,否則不必理會(huì)。
為了進(jìn)一步提高精度,可以用長(zhǎng)整數(shù)表示相位,還可以采用重采樣技術(shù)及局部FFT等技術(shù)[5]或者改進(jìn)解調(diào)方法可實(shí)現(xiàn)高精度檢測(cè)。
評(píng)論