《電子技術應用》
您所在的位置:首頁 > 嵌入式技術 > 設計應用 > 基于TMS320C55x DSP的UART通信設計
基于TMS320C55x DSP的UART通信設計
摘要: 全雙工異步串行通信在TMS320C55xDSP上的通常實現方式是利用DSP的McBSP接口加外接芯片實現,這種設計方法增加了實現UART的硬件成本和電路設計復雜度。提出了一種直接利用DSP的MCBSP接口和DMA通道實現UART的方法,給出了使用C語言和CSL的編程方法。與傳統實現方法相比,具有實現成本低,硬件電路簡單,移植性強等特點,稍加修改可應用于C5000和C6000各系列芯片中。
Abstract:
Key words :

摘要:全雙工異步串行通信在TMS320C55xDSP上的通常實現方式是利用DSP的McBSP接口加外接芯片實現,這種設計方法增加了實現UART的硬件成本和電路設計復雜度。提出了一種直接利用DSP的MCBSP接口和DMA通道實現UART的方法,給出了使用C語言和CSL的編程方法。與傳統實現方法相比,具有實現成本低,硬件電路簡單,移植性強等特點,稍加修改可應用于C5000和C6000各系列芯片中。
關鍵詞:DSP;全雙工異步串行通信;多通道緩沖串口;DMA ;過采樣

1 引言:
MS320C55x數字信號處理器通過多通道緩沖串口(McBSP)提供了與外設的多種同步串行通信方式。然而,由于DSP中串行通信由數據信號、幀同步信號和時鐘3種信號配合實現,其中幀同步信號和數據信號由不同的數據線傳輸。而異步串行通信則在一根傳輸線上實現數據發送或接收,且不需要專門的時鐘信號線。因此DSP與異步設備的接口,如UART通信實現相對復雜,需要對McBSP的相關寄存器進行正確初始化。DSP中實現全雙工異步通信的通常做法是使用專用的串行接口芯片,如TL16C550,這種設計方法編程相對簡單,但增加了設計成本和電路復雜度。本文介紹了一種TMS320C55x DSP芯片利用McBSP和DMA直接實現UART的方法,基于該方法實現的DSP異步串行通信模塊已成功應用于控制偏振圖像采集處理的DSP硬件設備中。 www.51kaifa.com/
2 UART在DSP上的實現
異步串行通信要求DSP能夠模擬和檢測到UART的幀信號。由于DSP串口是同步串口,而且DSP時鐘為高速時鐘,經分頻或倍頻后無法保證與UART的異步串行時鐘精確同步。DSP的幀同步信號無法與UART的幀信號同步,造成串行通信信號中信號位的偏移。最好的解決方法是減小偏移和對接收的數據流進行過采樣,本文采用了對UART信號的16倍過采樣。www.51kaifa.com/
2.1 McBSP設置
    DSP的McBSP通過3種信號實現同步通信:數據、幀同步和時鐘。異步通信發送和接收各在一條線上進行,具有自己的幀時序。
    UART的通信時鐘由使用的通信波特率(每秒傳輸的數據位個數)決定,通常為2400,9600,19200等。DSP與UART異步通信時,由于DSP的內部時鐘頻率通常都不是UART時鐘頻率的整數位,因而會造成雙方通信時數據位的偏移,為了盡量減小這種偏移,McBSP的串口時鐘需要正確的設置時鐘頻率以達到與UART波特率相匹配。
數據包(PKTBITS)由起始位、數據位、奇偶校驗位和停止位組成,起始位為1位,停止位通常為1,1.5,2位,數據數通常為8位,如何使用校驗,那么數據包還包括1位校驗位。以上數據位中,每1位都被DSP以16倍波特率的時鐘頻率過采樣。
發送時,為保證UART能收到半個停止位,需要將DSP的McBSP發送端口設置為2相的數據幀。第1相為16位的數據字,第2相為8位的數據字。那么第1相數據長度為(起始位+數據位+校驗位)個字,第2相長度為停止位的字長。發送時的總幀長(TxPKTBITS)為這兩相的總字長。接收數據包格式與發送相似,其結構如圖2所示。DSP的串口發送引腳與外部串口設備的接收引腳相連,不使用FSX引腳和CLKX引腳。
接收時,McBSP通過接收幀同步信號引腳(FSR)檢測數據的到來,根據幀同步信號的不同,幀同步信號可配置成上升沿觸發或下降沿觸發,由于UART的起始位為低電平,因此使用下降沿觸發。將UART發送數據信號與McBSP的數據接收引腳DR和FSR相連,實現用UART的發送信號觸發McBSP的接收幀同步信號。在McBSP接收一幀數據期間,為了防止下降沿再次觸發一幀數據接收,McBSP應該設置為接收數據包期間忽略幀同步信號。


圖1 UART接收數據包的幀格式


接收完一幀數據后,需要對數據解碼,收于DSP發送和接收時鐘是UART串口時鐘頻率的16位,因此每個UART數據位對應于DSP中1個16位字(停止位對應8位字)。在McBSP接收寄存器中將接收幀設置為2相,第1相16位字,字長為RxPKTBITS(起始位+數據位+校驗位),第2相為8位字,對應于停止位字數。此外,接收幀延時值應該設置為1位。
3.2 McBSP時鐘采樣率設置
McBSP與UART通信時,McBSP接收到一幀的幀同步信號后,該幀期間之后出現的幀同步信號將被忽略。為了獲得最大數據流量,一幀數據發送結束時,其停止位后緊接著為起始位,幀同步信號的檢測依賴于停止位到起始位的下降沿。為了正確檢測到幀同步信號,高電平應該至少保持一個時鐘周期以上時間。
理想情況下,串口時鐘信號邊沿與數據位邊沿精確對應,此時,每個數據位對應16倍時鐘周期。起始位和串口時鐘的下降沿偏最小,如圖3所示。


圖2  McBSP串口時鐘與UART時鐘精確同步時的時序


    正常通信時,McBSP的幀同步信號與UART串口的時鐘之間會有一定的偏差,如圖所示。


圖3 McbSP串口時鐘與UART時鐘存在偏差時的時序


存在偏差時,為保證McBSP能檢測到接收到信號的下降沿,McBSP的串口采樣時鐘頻率必須準確設置。其設置方法如公式1、2所示。其中,DIV是McBSP寄存中串口采樣時鐘分頻值,DSPCLK是DSP的CPU時鐘頻率,baudrate為通信波特率。 
         (1) 
         (2)
通信波特率為19200,DSP時鐘頻率為75MHz,接收數據包為10位(1位起始位,8位數據位,無校驗,1位停止位:PKTBITS=10,RxPKTBITS=9.5),根據公式1計算得DIV ,由于分頻值DIV為整數,因此取DIV 。根據公式2計算得DIV ,取整后得DIV 。取DIV最佳值為244。TMS320VC55x DSP以常用波特率通信時的分頻值如表1所示。
表1 常用波特率下TMS320VC55x的McBSP串口DIV值 

 

75-MHz DSP Clock

100-MHz DSP Clock

 

Baud Rate

Divisor

Minimum

Exact

Divisor

Divisor

Maximum

Divisor

Minimum

Exact

Divisor

Divisor

Maximum

19200

240

244.14

248

320

325.52

331

38400

120

122.07

124

160

162.76

165

57600

80

81.68

82

107

108.51

110

115200

40

40.69

41

54

54.25

55


3.2 DMA設置
UART通信時,DSP發送和接收到的數據存儲在數據存儲器中,為了實現DSP的高速處理,減少DSP響應McBSP數據寄存器中斷的次數。發送和接收數據與McBSP發送和接收寄存器DXR和DRR之間的數據傳輸通過DMA通道完成。這里以使用DMA通道4和通道5為例,其中,DMA通道4作為數據接收通道,DMA通道5做為數據發送通道。將通道4和通道5的同步事件分別設置為McBSP串口接收事件和串口發送事件,DMA通道4的源地址為McBSP的接收寄存器DRR地址,目的地址為數據存儲器中存放接收數據的變量地址;DMA通道5的源地址為數據存儲器中待發的數據,目的地址為McBSP的DXR寄存器地址。每當McBSP接收到數據時,會觸發DMA通道4將接收到的數據拷貝到DSP數據存儲器的相應置,同時目的地址指針自動加1;發送數據時,DMA通道5將待發送數據拷貝到DXR,將數據依次發出。
發送數據時,待發字符被打包成適于UART接收的數據格式,以發送16進制無符號數0xAA為例,首先發送起始位,然后是數據位最低位,最后發送停止位。該數值在數據存儲器中按地址由低到高的存放格式為:0x0000,0x0000,0xFFFF,0x0000,0xFFFF,0x0000,0xFFFF,0x0000,0xFFFF,0xFFFF。
接收到數據后,取過采樣到的每個16位二進制數據字的中間四位,若中間四位中1的個數不小于3,則表示收到當前的UART數據位值為1;若中間四位中0的個數不小于3,則表示收到當前的UART數據位值為0。否則認為數據傳輸出錯。
4 程序設計
    在McBSP和DMA寄存器設置正確的基礎上,利用TI公司提供的Code Composer Studio集成開發環境編寫了UART串口通信軟件,軟件開發中使用了CSL(片上支持庫),使整個開發過程快速、直觀、具有很強的可讀性。程序流程如圖所示:     





圖4 TMS320VC55x UART程序流程圖
5 實驗分析
硬件和軟件設計完成后,進行了測試實驗,實驗上位機為PC機,DSP處理器為TI公司的TMS320VC5509A,通信波特率為19200,DSP外部晶振頻率為20MHz,CPU時鐘頻率為100MHz,UART數據格式為1位起始位,8位數據位,1位停止位,無校驗。多次實驗結果表明數據發收準確,無誤碼現象發生。
6 結論
    DSP系統直接與外部全雙工異步串行設備的通信時,通過正確的使用DSP上的McBSP和DMA通道,利用16倍過采樣原理準確的計算McBSP通信接口的采樣值和配置相關寄存器,能夠實現DSP與外部異步設備的可靠通信。與傳統的采用串并轉換芯片的實現方法相比,具有更低的成本更簡單的外部電路。本文中的程序針對TI公司的TMS320VC5509x DSP芯片編寫,通過對少數寄存器的修改,該程序可直接應用于TI公司的C5000和C6000系列DSP芯片上。
   本文作者創新點:提出了一種直接利用DSP的McBSP接口和DMA通道實現UART的方法,具有實現成本低,硬件電路簡單,移植性強等特點。

參考文獻:
1 TMS320VC5509A Fixed-Point Digital Signal Processor Data Manual. Texas Instruments
2 TMS320VC5501/5502/5503/5507/5509/5510 DSP Multichannel Buffered Serial Port (McBSP) Reference Guide. Texas Instruments
3 Implementing a Software UART on the TMS320C54x with the McBSP and DMA. Texas Instruments
4 TMS320VC5503/5507/5509/5510 DSP Direct Memory Access (DMA) Controller Reference Guide
5 TMS320C55x Chip Support Library API Reference Guide. Texas Instruments
6 TMS320C6000 McBSP: UART. Texas Instruments
7 安穎,劉麗娜.基于DSP的高速信號采集與處理系統的設計【J】.微計算機信息,2005,1:57-58。 

此內容為AET網站原創,未經授權禁止轉載。
热re99久久精品国产66热_欧美小视频在线观看_日韩成人激情影院_庆余年2免费日韩剧观看大牛_91久久久久久国产精品_国产原创欧美精品_美女999久久久精品视频_欧美大成色www永久网站婷_国产色婷婷国产综合在线理论片a_国产精品电影在线观看_日韩精品视频在线观看网址_97在线观看免费_性欧美亚洲xxxx乳在线观看_久久精品美女视频网站_777国产偷窥盗摄精品视频_在线日韩第一页
  • <strike id="ygamy"></strike>
  • 
    
      • <del id="ygamy"></del>
        <tfoot id="ygamy"></tfoot>
          <strike id="ygamy"></strike>
          最新中文字幕亚洲| 亚洲精品一线二线三线无人区| 欧美一区二区啪啪| 久久久91精品国产| 亚洲国产三级网| 亚洲黄色小视频| 久久在线播放| 久久亚洲综合网| 欧美91福利在线观看| 亚洲成人在线视频网站| 亚洲精品免费在线播放| 欧美日韩亚洲一区三区| 一区二区激情视频| 欧美日韩黄视频| 激情六月婷婷综合| 国产亚洲成人一区| 一区二区三区免费看| 欧美成人免费观看| 国产精品国产三级国产aⅴ浪潮| 亚洲亚洲精品三区日韩精品在线视频| 欧美日韩福利视频| 国内免费精品永久在线视频| 国产精品入口日韩视频大尺度| 亚洲色诱最新| 久久久久国产一区二区三区| 亚洲欧洲另类国产综合| 国产日韩欧美三区| 欧美剧在线免费观看网站| 亚洲一区二区免费在线| 欧美日韩国产色综合一二三四| 欧美一级在线视频| 国产亚洲视频在线| 欧美黄色免费网站| 亚洲人成艺术| 欧美一区二区三区在线观看| 在线成人av| 亚洲影院免费观看| 夜夜精品视频一区二区| 国产综合色在线视频区| 先锋影音国产一区| 久久综合亚州| 亚洲欧美国产高清va在线播| 91久久香蕉国产日韩欧美9色| 久久久五月天| 性欧美大战久久久久久久免费观看| 18成人免费观看视频| 久久久夜精品| 亚洲天堂av在线免费观看| 欧美一区国产二区| 国产毛片一区| 国产精品av免费在线观看| 国产日韩精品视频一区二区三区| 欧美日韩一区二| 老司机午夜免费精品视频| 黑人操亚洲美女惩罚| 欧美一级理论性理论a| 国产一区久久| 久久久久久夜精品精品免费| 欧美精品在线观看91| 久久亚洲高清| 久久亚洲精选| 欧美亚洲一区| 国产精品自在欧美一区| 最新国产成人在线观看| 亚洲欧美日韩人成在线播放| 国产精品国内视频| 久久精品国语| 欧美一区二区三区日韩| 午夜视频一区| 亚洲激情电影中文字幕| 黄色国产精品| 国产伦精品一区二区三区免费迷| 国产一区二区视频在线观看| 国产最新精品精品你懂的| 亚洲桃色在线一区| 欧美一级大片在线免费观看| 欧美日本国产视频| 国产精品香蕉在线观看| 国产欧美精品在线| 久久久久一区二区三区四区| 国内精品嫩模av私拍在线观看| 国产欧美午夜| 亚洲一区国产| 欧美日韩精品一区二区| 国产欧美日韩三区| 欧美午夜影院| 亚洲最新在线| 久久久久国色av免费观看性色| 亚洲青色在线| 中文成人激情娱乐网| 中文av字幕一区| 欧美男人的天堂| 亚洲激情av在线| 亚洲精品乱码久久久久久按摩观| 欧美国产激情| 国产欧美婷婷中文| 欧美日韩国产在线一区| 国产精品中文在线| 国产亚洲欧美日韩美女| 亚洲黄色在线| 午夜精品影院| 欧美大片国产精品| 99热精品在线| 国产精品久久国产三级国电话系列| 久久成人精品| 国产精品国产| 亚洲午夜未删减在线观看| 欧美色播在线播放| 久久久久久久精| 欧美电影在线观看完整版| 欧美日韩在线精品一区二区三区| 你懂的亚洲视频| 亚洲男人影院| 久久人人爽爽爽人久久久| 亚洲一区二区三区视频| 午夜在线成人av| 国产精品国产三级国产aⅴ浪潮| 午夜在线不卡| 亚洲精品一区二区三区福利| av成人黄色| 亚洲黄网站黄| 欧美一级艳片视频免费观看| 中文欧美日韩| 欧美在线视频观看| 日韩午夜在线播放| 亚洲午夜三级在线| 久久久蜜桃精品| 欧美在线播放一区二区| 欧美影院精品一区| 亚洲在线不卡| 在线看无码的免费网站| 香蕉久久精品日日躁夜夜躁| 狠狠入ady亚洲精品经典电影| 国产精品久久久久久久久免费桃花| 亚洲小说欧美另类社区| 国产精品99久久不卡二区| 亚洲精品视频免费观看| 亚洲午夜在线观看| 欧美激情视频一区二区三区在线播放| 欧美一区视频在线| 日韩性生活视频| 久久蜜桃香蕉精品一区二区三区| 久久亚洲一区二区三区四区| 欧美日韩国产小视频在线观看| 欧美伦理a级免费电影| 国产精品video| 国产精品大全| 亚洲精品国久久99热| 国产一区观看| 久久精品免费观看| 欧美国产日韩一区二区在线观看| 欧美日韩视频一区二区三区| 亚洲一区一卡| 亚洲激情啪啪| 亚洲国内在线| 欧美一区三区三区高中清蜜桃| 欧美日韩成人在线视频| 免费成人在线观看视频| 国内免费精品永久在线视频| 亚洲永久精品国产| 影音先锋一区| 亚洲精品在线免费| 一本大道av伊人久久综合| 国产精品视频福利| 黄色一区三区| 欧美成人一区二区在线| 国产精品永久入口久久久| 亚洲欧洲精品成人久久奇米网| 91久久精品日日躁夜夜躁国产| 黑人中文字幕一区二区三区| 国产麻豆视频精品| 久久久一区二区三区| 一区二区三区免费观看| 欧美理论片在线观看| 亚洲三级视频| 欧美激情第4页| 亚洲电影在线播放| 韩日欧美一区二区三区| 欧美日韩a区| 欧美三级不卡| 亚洲一区中文| 亚洲人成网站在线播| 亚洲影院免费观看| 国产麻豆精品久久一二三| 国产精品一区一区| 亚洲天堂成人| 欧美看片网站| 一区精品在线| 国产欧美一区二区色老头| 亚洲国产精彩中文乱码av在线播放| 国产精品福利影院| 国产欧美亚洲日本| 国产亚洲激情视频在线| 国产精品v日韩精品v欧美精品网站| 韩国精品主播一区二区在线观看| 亚洲精品国产无天堂网2021| 欧美日韩国产一中文字不卡| 亚洲第一级黄色片| 国内精品模特av私拍在线观看| 亚洲第一精品夜夜躁人人爽| 欧美日韩精品一区视频| 久久一本综合频道| 亚洲午夜精品一区二区| 国产精品高清一区二区三区| 久久成人免费电影| 久久久九九九九| 亚洲黑丝在线| 在线一区日本视频| 国产精品都在这里| 蜜臀av国产精品久久久久| 亚洲人成在线观看网站高清| av成人免费在线观看| 国产精品视频一区二区三区| 欧美成va人片在线观看| 欧美日韩在线观看视频| 在线不卡欧美| 欧美午夜片欧美片在线观看| 国产欧美一区在线| 国产欧美精品久久| 91久久精品日日躁夜夜躁欧美| 亚洲电影免费观看高清| 欧美小视频在线| 欧美日本在线一区| 欧美性淫爽ww久久久久无| 国产亚洲高清视频| 亚洲欧美日韩精品久久奇米色影视| 欧美午夜精品一区二区三区| 在线观看av不卡| 国产精品一区二区三区久久久| 老司机一区二区| 欧美在线free| 国产欧美精品一区二区三区介绍| 久久综合久久综合久久综合| 久久99伊人| 欧美激情精品久久久久| 国产一区二区三区在线播放免费观看| 国产女主播在线一区二区| 久久偷看各类wc女厕嘘嘘偷窃| 欧美色偷偷大香| 国产日韩精品视频一区二区三区| 99视频+国产日韩欧美| 国产精品毛片va一区二区三区| 欧美一区二区久久久| 一本久久综合| 欧美伦理a级免费电影| 亚洲欧美在线免费观看| 在线免费观看一区二区三区| 国产欧美日韩视频一区二区| 欧美激情一区二区三区四区| 欧美视频三区在线播放| 国产一区在线观看视频| 嫩草伊人久久精品少妇av杨幂| 欧美电影免费网站| 久久视频在线视频| 女人色偷偷aa久久天堂| 老司机精品视频一区二区三区| 亚洲日本黄色| 亚洲国产二区| 国产精品久久综合| 亚洲美女av在线播放| 国产乱码精品一区二区三区五月婷| 欧美肉体xxxx裸体137大胆| 亚洲麻豆国产自偷在线| 99热这里只有成人精品国产| 99在线热播精品免费| 最近中文字幕mv在线一区二区三区四区| 国产精品亚洲а∨天堂免在线| 99re8这里有精品热视频免费| 国产视频一区欧美| 麻豆国产精品va在线观看不卡| 一本久久青青| 在线观看国产欧美| 夜夜躁日日躁狠狠久久88av| 欧美激情亚洲自拍| 亚洲一区制服诱惑| 欧美日韩精品免费观看视频| 亚洲狼人综合| 你懂的网址国产 欧美| 亚洲综合视频1区| 欧美精品123区| 日韩亚洲国产欧美| 久久九九国产精品| 国产一区二区日韩精品欧美精品| 亚洲激情网站免费观看| 日韩天天综合| 国产区欧美区日韩区| 欧美成人伊人久久综合网| 亚洲香蕉在线观看| 亚洲国产精品久久久久秋霞影院| 国产精品麻豆成人av电影艾秋| 久久一区二区精品| 亚洲电影免费观看高清完整版在线观看| 欧美不卡视频一区| 久久一区免费| 久久亚洲影音av资源网| 欧美国产日韩精品免费观看| 黄网站免费久久| 欧美精品久久久久久久免费观看| 久久激情综合网| 亚洲毛片在线观看| 久久久久女教师免费一区| 欧美黄色成人网| 激情久久久久久久| 在线观看日韩av电影| 亚洲欧美日产图| 国产一区二区成人久久免费影院| 欧美激情麻豆| 欧美精品一区二区三区视频| 欧美在线综合视频| 国产亚洲精品久久久久婷婷瑜伽| 国产一区二区高清视频| 欧美色区777第一页| 欧美一级播放| av72成人在线| 久久精品最新地址| 国产精品国产自产拍高清av| 久久国产精品一区二区三区| 黄色精品一区二区| 日韩视频一区二区三区在线播放免费观看| 国产精品尤物福利片在线观看| 日韩亚洲在线| 亚洲乱亚洲高清| 国产精品久久久久久久第一福利| 亚洲精品色图| 欧美日本精品一区二区三区| 欧美精品播放| 在线电影一区| 欧美国产激情|