TMS320VC5402串行通信接口設(shè)計
近年來,DSP在電子、通信和控制領(lǐng)域得到了非常廣泛的應(yīng)用,在DSP應(yīng)用系統(tǒng)設(shè)計中與上、下位機的通信必不可少。目前幾乎所有的DSP都提供一個或多個串口,然而,多數(shù)DSP芯片提供的是同步串口,在實際的應(yīng)用中,DSP要能夠與外設(shè)進行異步串行通信,如與PC機進行串行數(shù)據(jù)傳輸就要求DSP系統(tǒng)具UART串行接口。另外,由于單片機控制靈活方便、便于鍵盤及顯示的擴展,使得其與DSP結(jié)合的更加緊密。針對這種情況,本文研究并實現(xiàn)了DSP與PC機及單片機通信接口的擴展。
?。薄。樱校山涌趨f(xié)議
串行外圍設(shè)備接口(SPI)是MOTOROLA公司提出的一個同步串行外設(shè)接口,以主從方式工作,允許CPU 與各種外圍接口器件以串行方式進行通信、交換信息。接口包括4條線:串行時鐘線(SCK)、主機輸入/從機輸出線(MIsO)、主機輸出/從機輸入線(MOSI)、低電平有效的使能信號線(/SS)。這樣,僅需3~4根數(shù)據(jù)線和控制線即可擴展具有SPI接口的各種I/O器件。
2?。裕停樱常玻埃郑茫担矗埃才cPC機的異步串口通信
?。玻薄。停悖拢樱械墓δ芘c特點
?。裕停樱常玻埃郑茫担矗埃残酒哂校矀€高速、全雙工、多通道緩沖串行接口(McBSP),其方便的數(shù)據(jù)流控制可使其與大多數(shù)同步串行外圍設(shè)備接口。McBSP通過6個引腳(BDX、BDR、BCLKX、BCLKR、BFSX 和BFSR)與外設(shè)接口。
?。停悖拢樱写诠ぷ饔跁r鐘停止模式時與SPI協(xié)議兼容。此時,發(fā)送器和接收器在內(nèi)部得到同步,McBSP可作為SPI的主設(shè)備或從設(shè)備。發(fā)送時鐘信號(BCLKX)對應(yīng)于SPI協(xié)議中的串行時鐘信號(SCK),發(fā)送幀同步信號對應(yīng)于從設(shè)備使能信號(/CS)。在這種方式下對接收時鐘信號(BCLKR)和接收幀同步信號(BFSR)不進行連接,因為它們在內(nèi)部分別與BCLKX和BFSX相連。McBSP工作于SPI模式的主機時,與SPI從設(shè)備接口如圖1所示。
圖1?。停悖拢樱凶鳛椋樱校傻闹髟O(shè)備
2.2?。停粒兀常保保蓖ㄓ卯惒绞瞻l(fā)器
?。停粒兀常保保蓖ㄓ卯惒绞瞻l(fā)器是MAXIM 公司為微處理系統(tǒng)設(shè)計的通用異步收發(fā)器UART,包括振蕩器、可編程波特率發(fā)生器、可屏蔽的中斷源、8字節(jié)的接收FIFO緩沖器和兩個RS232電平轉(zhuǎn)換器。它應(yīng)用SPI接口技術(shù)直接與主控制器進行通信,通信速率可達230?。耍猓螅瑹o需再接入普通的MAX232進行電平轉(zhuǎn)換,即可應(yīng)用一個芯片實現(xiàn)微控器與PC機或其它設(shè)備之間的異步數(shù)據(jù)傳輸。
?。玻场。模樱信cMAX3111的接口設(shè)計
由于MAX3111是3.3?。制骷?,DSP的McBSP串行接口工作于SPI模式時可直接與MAX3111連接,實現(xiàn)與RS232設(shè)備異步數(shù)據(jù)傳輸。此時DSP作為SPI協(xié)議中的主設(shè)備,發(fā)送時鐘信號(BCLKX)作為MAX3111的串行時鐘輸入,發(fā)送幀同步脈沖信號(BFSX)作為MAX3111的片選信號(/CS)。BDX與DIN 連接作為發(fā)送數(shù)據(jù)線,BDR與DOUT 連接作為接收數(shù)據(jù)線。MAX3111的TX 與TIIN連接,RX與R1OUT連接,以便利用其片內(nèi)的轉(zhuǎn)換
器實現(xiàn)UART到RS232電平的轉(zhuǎn)換。MAX3111的中斷信號(IRQ)與DSP的外部中斷INTO相連,其接口電路如圖2所示。這樣硬件上無需任何其它外圍器件,由于異步數(shù)據(jù)的發(fā)送和接收由MAX3111以硬件方案實現(xiàn),所以軟件編程只需考慮DSP與MAX3111之間的同步數(shù)據(jù)通信。
圖2?。模樱信cMAX3111的接口電路
在SPI串行協(xié)議中,主設(shè)備提供時鐘信號并控制數(shù)據(jù)傳輸過程,必須對McBSP初始化并設(shè)定適當?shù)墓ぷ鞣绞讲拍鼙WC與MAX3111的時序相配合,設(shè)計中采用McBSP的時鐘停止模式2(CLKSTP=11?。猓茫蹋耍兀校剑埃?。
?。场。裕停樱常玻埃郑茫担矗埃才cAT89S51單片機的串口通信
?。模樱兄鳈C接口HPI具有強大功能的智能外設(shè),主要用于DSP與其它總線或CPU進行連接。DSP與單片機的接口通常采用HPI來實現(xiàn),但要外加電平轉(zhuǎn)換,硬件電路較復(fù)雜。這里采用C5402通過SPI總線與AT89S51單片機進行數(shù)據(jù)通信,但由于后者不帶SPI總線接口,故采用軟件模擬SPI串行時鐘及輸入、輸出數(shù)據(jù)。
圖3?。模樱信c89S5l單片機的接口電路
?。模樱信cAT89S51單片機的接口如圖3所示。DSP通過MOSI引腳將要傳送的數(shù)據(jù)寫到主機的發(fā)送數(shù)據(jù)寄存器DXR,啟動發(fā)送過程,在同步時鐘BCLKX的控制下將待發(fā)的數(shù)據(jù)從高位到低位逐位送到單片機接收引腳RXD,當RXD接受移位完畢時產(chǎn)生中斷,通知主機數(shù)據(jù)發(fā)送完畢。值得注意的是,單片機接收數(shù)據(jù)時是低位在前,高位在后。對于從機而言,在同步時鐘的節(jié)拍下將從機移位寄存器SBUF中的數(shù)據(jù)逐位經(jīng)MISO移到主機的接收數(shù)據(jù)寄存器RSR,再拷貝這些數(shù)據(jù)到接收緩沖寄存器RBR中,最后再送到DRR,當一個完整的數(shù)據(jù)塊接收完后置中斷標志,通知從機數(shù)據(jù)接收完畢。
?。础〗Y(jié)論
本文介紹了利用TMS320VC5402的2個McBSP擴展與PC機和51系列單片機的通信,硬件設(shè)計簡單可靠,實用性強,軟件上僅需對McBSP進行設(shè)置和編程,實現(xiàn)起來非常容易。在足球機器人模型識別與控制過程中完成了PC機、DSP和單片機的實時通信,效果良好。
評論