《電子技術應用》
您所在的位置:首頁 > 通信與網絡 > 設計應用 > 基于TLl6C550C的DSP異步串行通信的實現
基于TLl6C550C的DSP異步串行通信的實現
來源:維庫開發網
摘要: 由于TMS320C6416不帶異步串行收發接口(UART),無法實現DSP系統常用的通串行通信。為此,本文基于TL16C550C設計了一種通過TMS32C6416實現UART數據通信的方法,同時給出了其硬件設計框圖以及通過TMS320C6416初始化TLl6C550C的軟件編程方式。
Abstract:
Key words :

 0 引言
        高速數字信號處理器(DSP)在圖像處理中,特別是視頻處理中的應用非常廣泛。通常DSP都具有很強的運算能力,但是其外設的接口相對有限。在應用系統中,往往需要DSP與下位機通信或者接受上位機的控制信號時,一般都是采用異步串行通信協議,如RS232或RS422來實現。由于TMS320C6416器件自身只帶有同步的串口,因此,為了實現正常的通信,一般都需要為其擴展異步串口。
 l TLl6C550C芯片介紹
         TLl6C550C是TI公司研發的異步通信器件,其主要性能特點如下:
          ◇供電電壓為5 V或3.3 V;
          ◇時鐘頻率達到16 MHz。通信時波特率最高可達1 M,并可編程設定波特率發生器;
          ◇具有標準的異步通信位,可選擇5、6、7或8位串行數據位,可設置奇偶校驗或無校驗模式,停止位長度為1、1.5、2;
          ◇可獨立控制發送、接收、線狀態以及中斷設置,可軟件設定FIFO,減少CPU中斷。
          TLl6C550C器件內部共有10個寄存器,可分別用于實現通信參數的設置、對線路及MODEM狀態的訪問、數據的發送和接收以及中斷管理等功能。TLl6C550C的地址可分別通過A0-A2地址線和某些寄存器的特定位置來確定,由于有些寄存器的地址是重疊的,所以還需同時通過讀/寫信號加以區分。
         TLl6C550C片內寄存器及其映射地址如表1所列,其中高位和低位寄存器為二次尋址寄存器,因此,在訪問這兩個寄存器之前,必須將LCR的第7位置為1。

2 TLl6C550C與PC的數據通信電路
2.1 TLl6C550C的選通

        TLl6C550C與PC的串行通信部分的硬件連接電路如圖1所示。由ISO3088實現電平轉換,即通過ISO3088將輸出電平配置為RS485信號。

2.2 TLl6C2550C的讀寫
        TLl6C550C的讀信號為,RD2,當為低電平或RD2為高電平,且TLl6C550C被選中時,可進行讀操作;寫信號為,WR2,當為低電平或WR2為高電平,且TLl6C550C被選中時,可進行寫操作。將、RD2、、WR2都與CPLD的I/0相連,便可通過CPLD來控制TLl6C550C的讀寫。
3 TLl6C550C和PC通信的軟件編程
        該套系統的軟件設計部分主要包括PC機程序、DSP初始化、TLl6C550C初始化和數據發送/接收以及雙方的通信協議等。本文著重介紹TLl6C550C的初始化程序。主要由以下幾部分組成:
         ◇波特率的設定;波特率除數寄存器由高8位(DLM)和低8位(DLL)組成。除數的值可由UART的工作時鐘和波特率共同確定,其計算公式為:除數=時鐘頻率/(期望的波特率×16)
          例如本系統中時鐘頻率12 MHz,波特率設置為9600,則除數的值為12,應在初始化程序中設置DLM=OOH,DLL=4eH;
          ◇增強功能的使能及設置EFR的相關位;
          ◇完成有關收/發FIF0的設定,主要是MCR/TCR/TLR三個寄存器的設置;
          ◇傳輸數據格式設定,包括8位數據位、1位停止位以及無校驗;
          ◇設置FIFO控制以及中斷控制寄存器。
        此外,在完成設置前,還應注意:設定DLL和DLH前,LCR的第7位應為1;地址相重疊的寄存器不能同時使能;讀寫RHR和THR時,DSP的讀寫速度很快,故最好不要連續讀寫,而是在每讀、寫一次后延時一段時間。然后再進行下一次讀寫。
        由于TLl6C550C映射在DSP的CEO區間,所以在DSP訪問其寄存器時只需將基地址加上偏移量即可。其初始化源程序如下:
4 結束語
        本文介紹了通過TLl6C550C擴展串口完成TMS320C6416與PC機串行通信的設計方案,給出了硬件設計框圖及軟件實現代碼。該電路及軟件經實驗證明能夠可靠地實現TMS320C416與PC機之間的通信,并且此方法已在實際的項目中得到應用。
        TLl6C550C采用3.3 V供電.將TLl6C550C的數據線DO~D7與TM320C6416T直連,從而實現數據的傳輸。同時應將TL16C550C的片內寄存器選擇線與TM320C6416T的BEAl,BEA2,BEA3引腳相連,當TLl6C550C的片選信號CSO,CSl為高電平,為低電平時,TLl6C550B即被選中。CS0,CSl直接與高電平相連。則與CPLD的I/0相連,如此便實現了以CPLD來實現TLl6C550C的選通。
此內容為AET網站原創,未經授權禁止轉載。
主站蜘蛛池模板: 亚洲一级片在线播放 | 2020国产微拍精品一区二区 | 91色老99久久九九爱精品 | 亚洲国产精品久久久久秋霞不卡 | 国产精品hd免费观看 | 精产网红自拍在线 | 久久影视一区 | 一区二区在线欧美日韩中文 | 国产精品久久久久国产精品 | 不卡国产视频 | 亚洲成在人线中文字幕 | 成人a视频在线观看 | 日韩黄色一级毛片 | 色婷婷久久综合中文久久蜜桃 | free性chinese国语对白 | 美国一级大黄香蕉片 | 中文字幕日本不卡 | 亚洲精品在线网站 | 国产一级视频免费 | 国产男女爽爽爽免费视频 | 欧美成人三级大全 | 久久99国产亚洲高清观看首页 | 久久综合狠狠综合久久97色 | 国产成人午夜性a一级毛片 国产成人午夜性视频影院 国产成人香蕉久久久久 | 国产女人在线视频 | 毛片天堂| 欧美日韩一区二区在线观看视频 | 秀人网私拍福利视频在线 | 午夜精品视频 | 正能量www正能量免费网站 | 国产精品亚洲成在人线 | 亚洲国产精品免费在线观看 | 在线综合亚洲欧美自拍 | 美女被躁免费视频软件 | 欧美一级特黄一片免费 | 亚洲精品一区二三区在线观看 | 二区三区在线观看 | 亚洲欧美一区二区三区 | a毛片免费全部播放完整成 a毛片免费全部在线播放毛 | 免费观看成人www精品视频在线 | 国产一区二区三区在线观看免费 |