基于TLl6C550C的DSP異步串行通信的實(shí)現
摘要:由于TMS320C6416不帶異步串行收發(fā)接口(UART),無(wú)法實(shí)現DSP系統常用的通串行通信。為此,本文基于TL16C550C設計了一種通過(guò)TMS32C6416實(shí)現UART數據通信的方法,同時(shí)給出了其硬件設計框圖以及通過(guò)TMS320C6416初始化TLl6C550C的軟件編程方式。
關(guān)鍵詞:DSP;異步串行通信;CPLD
0 引言
高速數字信號處理器(DSP)在圖像處理中,特別是視頻處理中的應用非常廣泛。通常DSP都具有很強的運算能力,但是其外設的接口相對有限。在應用系統中,往往需要DSP與下位機通信或者接受上位機的控制信號時(shí),一般都是采用異步串行通信協(xié)議,如RS232或RS422來(lái)實(shí)現。由于TMS320C6416器件自身只帶有同步的串口,因此,為了實(shí)現正常的通信,一般都需要為其擴展異步串口。
l TLl6C550C芯片介紹
TLl6C550C是TI公司研發(fā)的異步通信器件,其主要性能特點(diǎn)如下:
◇供電電壓為5 V或3.3 V;
◇時(shí)鐘頻率達到16 MHz。通信時(shí)波特率最高可達1 M,并可編程設定波特率發(fā)生器;
◇具有標準的異步通信位,可選擇5、6、7或8位串行數據位,可設置奇偶校驗或無(wú)校驗模式,停止位長(cháng)度為1、1.5、2;
◇可獨立控制發(fā)送、接收、線(xiàn)狀態(tài)以及中斷設置,可軟件設定FIFO,減少CPU中斷。
TLl6C550C器件內部共有10個(gè)寄存器,可分別用于實(shí)現通信參數的設置、對線(xiàn)路及MODEM狀態(tài)的訪(fǎng)問(wèn)、數據的發(fā)送和接收以及中斷管理等功能。TLl6C550C的地址可分別通過(guò)A0-A2地址線(xiàn)和某些寄存器的特定位置來(lái)確定,由于有些寄存器的地址是重疊的,所以還需同時(shí)通過(guò)讀/寫(xiě)信號加以區分。
TLl6C550C片內寄存器及其映射地址如表1所列,其中高位和低位寄存器為二次尋址寄存器,因此,在訪(fǎng)問(wèn)這兩個(gè)寄存器之前,必須將LCR的第7位置為l。
2 TLl6C550C與PC的數據通信電路
2.1 TLl6C550C的選通
TLl6C550C與PC的串行通信部分的硬件連接電路如圖l所示。由ISO3088實(shí)現電平轉換,即通過(guò)ISO3088將輸出電平配置為RS485信號。
TLl6C550C采用3.3 V供電.將TLl6C550C的數據線(xiàn)DO~D7與TM320C6416T直連,從而實(shí)現數據的傳輸。同時(shí)應將TL16C550C的片內寄存器選擇線(xiàn)與TM320C6416T的BEAl,BEA2,BEA3引腳相連,當TLl6C550C的片選信號CSO,CSl為高電平,為低電平時(shí),TLl6C550B即被選中。CS0,CSl直接與高電平相連。則與CPLD的I/0相連,如此便實(shí)現了以CPLD來(lái)實(shí)現TLl6C550C的選通。
評論