《電子技術應用》
您所在的位置:首頁 > 其他 > 設計應用 > 利用TL16C750實現(xiàn)DSP與PC機的高速串行通信
利用TL16C750實現(xiàn)DSP與PC機的高速串行通信
國外電子元器件
上海交通大學 鄧 勇 施文康
摘要: TL16C750是TI公司生產的異步通信芯片,在通信系統(tǒng)的實時性要求較高時,可通過擴展異步通信芯片TL16C750來實現(xiàn)系統(tǒng)的高速串行通信,從而增強系統(tǒng)的通信接口控制能力。文中介紹了TL16C750的性能及與通信有關的寄存器,給出了TL16C750在TMS320C50與PC機通信系統(tǒng)中的硬件應用電路及TMS320C50初始化TL16C750的軟件編程。
Abstract:
Key words :

     通用數(shù)字信號處理器(DSP)以其很強的數(shù)據(jù)處理能力使其在高速數(shù)字信號處理方面得到廣泛的應用,但是它的通信接口控制能力比較弱。如TMS320C50,它有兩個串口,其中一個是TDM(Time Division Mulitipl),另外一個串口常被語音接口占用。當TMS320C50獨立構成一個處理單元時,往往需要與外設交換一些數(shù)據(jù),通信能力弱就會影響DSP的應用。在研制語音信號頻譜分析儀時,筆者以TMS320C50作為信號處理單元進行快速傅立葉變換(FFT),然后將轉換的結果通過串口傳送到PC機顯示或作進一步處理。由于系統(tǒng)的實時性要求較高,如何實現(xiàn)TMS320C50與PC機高速和可靠的通信問題就顯得更加重要。

1 異步通信芯片TL16C750

    對TI(德州儀器)的TMS320系列的數(shù)字信號處理器來說,設計串口的方法一般有兩種:第一種是利用通用的I/O口線XF和BIO來構成串口,由軟件來設定波特率,在DSP不繁忙的情況下,往往采用這種方法;但是當這兩種I/O線被占用或通信的實時性要求較高時,DSP應該通過擴展異步通信芯片來實現(xiàn)高速串行通信。

    TL16C750是TI公司的異步通信芯片,其主要特點如下:

    ●管腳與TL16C550B/C兼容;

    ●可由軟件設定16字節(jié)或64字節(jié)的FIFO以減少CPU中斷;

    ●最高可達1M的波特率,其波特率發(fā)生器可編程;

    ●具有可編程的串行數(shù)據(jù)發(fā)送格式:

    數(shù)據(jù)位長度為5、6、7、8;

    具有偶校驗、奇校驗或無校驗模式;

    停止位長度為1、1.5、2;

    ●采用44引腳PLCC(Plastic Leaded Chip Carrier)封裝。

1.1 TL16C750的引腳功能

    TL16C750的引腳圖如圖1所示,各主要引腳的功能說明如下:

    A0~A2:片內寄存器的選擇信號;

    D0~D7:雙向8位數(shù)據(jù)線;

    CS0、CS1、CS2:輸入片選信號,當CS0=CS1=1且CS2=0時,TL16C750被選中;

    ADS:是地址選通信號,該腳有效時,可將CS0、CS1、CS2及A0、A1、A2鎖存在TL16C750內部;

    XIN、XOUT:外部時鐘端,該兩腳可接晶振或外部時鐘信號;

    RXRDY是接收準備好信號,當TL16C750已經從串行輸入端接收了一個字符時,該信號失效,在中斷方式時可作為中斷請求信號;

    TXRDY是發(fā)送準備好信號,當TL16C750允許發(fā)送且發(fā)送緩沖區(qū)為空時,該信號有效,在中斷方式時可作為中斷請求信號。

1.2 TL16C750的片內寄存器

    TL16C750內部共有11個寄存器,這些寄存器分別用于實現(xiàn)通信參數(shù)的設置、對線路及MODEN的狀態(tài)訪問、數(shù)據(jù)的發(fā)送和接收以及中斷管理等功能。編程人員可由A0、A1、A2三條片內寄存器選擇線和線路控制寄存器的除法數(shù)鎖存器訪問位DLAB一起通過多路復用進行訪問或控制TL16C750的任何一個寄存器。表1給出了訪問這些寄存器時DLAB和A0、A1、A2的狀態(tài)。因為接收/發(fā)送緩沖寄存器的DLAB、A0、A1、A2各位都相同,因此還必須通過讀/寫信號來加以區(qū)分:雞使用IN指令時,接收緩沖寄存器被訪問,雞使用OUT指令時,發(fā)送緩沖寄存器被訪問。

    下面對與TMS320C50和PC機通信有關的寄存器做一簡單介紹。

表1 TL16C750的片內寄存器

DLAB A2 A1 A0 寄存器
0 L L L 接收/發(fā)送緩沖寄存器
0 L L H 中斷允許寄存器
X L H L 中斷識別寄存器
X L H L FIFO控制寄存器
X L H H 線路控制寄存器
X H L L MODEN控制寄存器
X H L H 線路狀態(tài)寄存器
X H H L MODEN狀態(tài)寄存器
X H H H 高速暫存寄存器
1 L L L 波特率因子寄存器低位
1 L L H 波特率因子寄存器高位

    線路控制寄存器(LCR)用來存放串口傳送的二進制位串行數(shù)據(jù)格式,LCR是一個8位寄存器,各位的定義如下:d0d1是字長選擇位,若d0d1=00,傳送的字長為5位;d0d1=01時字長為6;d0d1=10時字長為7;d0d1=11時字長為8。d2位是停止位選擇,,d2=0時停止位為1位;d2=1時停止位為1.5位。d3位是校驗有效位,d3=0時校驗有效;d3=1時校驗無效。d4是校驗類型位,d4=0時進行奇校驗;d4=1時進行偶校驗。d7位(DLAB)是鎖定特率發(fā)生器位,d7=1時訪問波特率因子寄存器;d7=0時訪問其它寄存器。

    線路狀態(tài)寄存器(LSR)用于記錄串行數(shù)據(jù)發(fā)送和接收過程的狀態(tài)信息,CPU可在集體時候讀取這些信息。該寄存器的狀態(tài)位如表2所列。

表2 TL16C750寄存器的狀態(tài)位

LSR的各位 1 0
d0接收完成標成 接收完畢 讀后復位
d1接收重疊標志 發(fā)生重疊 讀后復位
d2奇偶校驗錯標志 奇偶校驗錯 讀后復位
d3格式錯標志 接收有錯 接收無誤
d4間斷標志 連續(xù)收到0 未間斷
d5發(fā)緩沖器空標志 THR已空 寫THR復位
d6發(fā)移位寄存器空標志 已空 未空
d7接收器FIFO出錯 FIFO有錯 FIFO無錯

    兩個8位波特率因子寄存器可構成一個16位的波特率因子寄存器。TL16C750的內部波特率發(fā)生器可產生發(fā)送數(shù)據(jù)的時鐘信號。波特率因子可以通過下列算式求出:

    波特率因子=基準時鐘頻率/(16×波特率)

    這個波特率發(fā)生器可以利用比較通用的三種不同頻率產生標準的波特率。這三種不同的頻率為1.8432MHz、3.072MHz和8MHz。可以任意選擇寫入波特率因子的高字節(jié)和低字節(jié)的順序,但寫入前必須置線路控制寄存器(LCR)的d7(DLAB)位為1。寫入波特率因子后應將線路控制寄存器的d7恢復為0,以便訪問其他寄存器。在外接晶振為1.8432MHz時,幾種常用的波特率所對應的波特率因子寄存器的值如表3所列。

表3 波特率因子對應的波特率因子寄存器的值

波特率 波特率因子寄存器的值
3600 32
4800 24
9600 12
19200 6
38400 3

2 TMS320C50與PC機串行通信的硬件電路

    TMS320C50與PC機通信的硬件電路如圖2所示。圖中,TL16C750的CS0和CS1都接高電平,而CS2接TMS320C50的IS。IS是TMS320C50的外部I/O空間選擇線,它和PS(程序空間選擇)、DS(數(shù)據(jù)空間選擇)一起來確定CPU所訪問的空間。當TMS320C50使用IN、OUT指令對TL16C750的內部寄存器進行訪問時,IS信號有效,TL16C750被選中。

    當XIN、XOUT端外接1.8432MHz晶振時,TMS320C50以28400的波特率與PC機通信,所以波特率因子寄存器的低位的值應為02H,高位值為00H.

    TL16C750的數(shù)據(jù)線D0~D7直接與TMS320C50的D0~D7數(shù)據(jù)線相連;TL16C750的片內寄存器選擇線接TMS320C50的A0~A2。

    由于TL16C750的讀信號和寫信號保持時間的典型值均為40ns,因此可以將TMS320C50的WR和RD直接連到TL16C750的WR1和RD1,為了避免與其它I/O端口發(fā)生沖突,在硬件電路設計中,將TMS320C50的RD信號線與兩條高位地址線A15、A14及IS經一個與非門后再接到TL16C750的RD1端。實踐證明:這樣的設計在解決地址沖突的基礎上對寫信號性能也有一定的改善作用。TMS320C50的讀信號也作了類似的處理。具體的電路如圖3所示。

    由于RS-232-C電路電平與CMOS電平不同,因此RS232驅動器與CMOS電平連接時必須經過電平轉換。本系統(tǒng)采用MAX3232完成這一功能,MAX3232具有一個專有的低壓降發(fā)送器輸出級,在其以雙電荷泵3.0~5.5V供電時,可獲得真正的RS-232性能。該器件只需4個0.1μF小型外接電容,可在維持RS-232輸出電平的情況下確保運行于120kb/s數(shù)據(jù)率,因此十分適合高速串行數(shù)據(jù)通信的場合。TL16C750的串行輸入線(SIN)和串行輸出線(SOUT)分別接MAX3232的R1OUT和T1IN,經電平轉換后由MAX3232的T1OUT和R1IN連接到PC機的串口。

    TL16C750與TMS320C50雖然可以通過查詢的方式工作,但這樣會降低系統(tǒng)的性能。筆者在本系統(tǒng)中利用RXRDY和TXRDY來引入外部中斷,從而使系統(tǒng)工作在中斷方式,這樣就保證了TMS320C50和PC機的高速通信。由圖2可知,RXRDY將產生外部0中斷(INT0),而TXRDY將產生外部1中斷(INT1)。

3 軟件設計

    該系統(tǒng)軟件設計包括PC機、TMS320C50及TL16C750的初始化和通信協(xié)議等。下面將結合本系統(tǒng)的硬件給出TMS320C50初始化TL16C750的程序。初始化的主要任務是設置操作所需要的參數(shù),這些參數(shù)包括串行通信時數(shù)據(jù)串的數(shù)據(jù)位數(shù)、停止位數(shù)、奇偶校驗等。另外,還需要設置發(fā)送和接收的波特率及中斷方式。

    在本系統(tǒng)中,TL16C750的線路控制寄存器(LCR)的地址為8003H(A15=1,A14=0)。波特率設置為38400,波特率因子寄存器的高位是00H,低位為03H。通信格式為8位數(shù)據(jù)位,2位停止位,奇校驗,線路控制寄存器的值(LCR)為07H。系統(tǒng)工作在中斷方式,應允許接收就緒中斷和發(fā)送緩沖區(qū)空中斷,相應地,中斷允許寄存器的值亦設置為03H.具體程序如下:

    TEM-BUF EQU 80H

    AORG 40H

    INIT-TL16C750 ROVM

    LACK 80H;DLAB=1,設置波特率

    SACL TEM-BUF

    OUT TEM-BUF,8003H

    LACK 00H;波特率為38400,

    SACL TEM-BUF;16位波特率因子寄存器的值為0003>

    OUT TEM-BUT,8001H

    LACK 03H

    SACL TEM-BUF

    OUT TEM-BUF,8000H

    LACK 07H;通信格式設定,8位數(shù)據(jù)

    SACL TEM-BUF;2位停止位,奇校驗

    OUT TEM-BUF,8003H

    LACK 03H;設置中斷允許寄存器

    SACL TEM-BUF

    OUT TEM-BUF,8001H

4 結束語

    通過擴展串口完成TMS320C50與PC機通信時,其硬件接口簡單,數(shù)據(jù)傳送距離遠、使用經濟。該電路及其軟件經與微機的通信實踐證明,在波特率為38400時可實現(xiàn)與PC機的可靠通信。

此內容為AET網站原創(chuàng),未經授權禁止轉載。
亚洲一区二区欧美_亚洲丝袜一区_99re亚洲国产精品_日韩亚洲一区二区
久久精品久久99精品久久| 在线视频你懂得一区| 日韩一区二区久久| 亚洲国产精品一区二区www在线| 国产曰批免费观看久久久| 国产精品午夜春色av| 国产精品久久久久久久久免费樱桃| 欧美日韩成人一区| 欧美激情一区二区三级高清视频| 欧美成人一区二区| 欧美黄色aaaa| 欧美欧美天天天天操| 欧美伦理a级免费电影| 欧美日本一区| 欧美日韩一级大片网址| 欧美性猛交视频| 国产精品看片你懂得| 国产精品久线观看视频| 国产精品视频久久久| 欧美三级电影大全| 国产精品久久久一本精品| 国产精品入口夜色视频大尺度| 国产精品久在线观看| 国产香蕉久久精品综合网| 国产综合自拍| 在线欧美一区| 亚洲免费高清视频| 亚洲私拍自拍| 久久福利精品| 亚洲免费av电影| 亚洲午夜精品久久| 欧美中文字幕视频| 免播放器亚洲| 欧美日韩在线免费观看| 国产欧美一区二区三区视频| 合欧美一区二区三区| 亚洲国产欧美一区二区三区丁香婷| 亚洲精品久久7777| 亚洲一区二区在线看| 久久不射中文字幕| 亚洲精品在线观看免费| 亚洲在线观看| 久久久久国产免费免费| 欧美黄在线观看| 国产精品久久久久一区二区三区| 国产亚洲制服色| 亚洲人成在线观看一区二区| 亚洲性夜色噜噜噜7777| 久久福利精品| 亚洲午夜高清视频| 久久这里只有| 国产精品高清一区二区三区| 狠狠色狠狠色综合人人| 日韩天堂在线观看| 欧美在线高清| 国产精品99久久不卡二区| 久久黄色级2电影| 欧美日本国产在线| 国产一区二区三区观看| 亚洲麻豆一区| 久久国产精品99精品国产| 亚洲视频一二区| 久热精品视频在线观看| 欧美天堂在线观看| 在线观看欧美日韩| 亚洲免费一在线| 亚洲免费电影在线| 久久久久久久97| 欧美视频日韩| 禁久久精品乱码| 亚洲一二三四久久| 亚洲剧情一区二区| 久久精品欧美日韩| 国产精品成人一区二区艾草| 在线精品观看| 午夜精品美女自拍福到在线| 一区二区三区回区在观看免费视频| 久久久久久久性| 国产精品国产精品| 亚洲精品123区| 久久激情视频| 欧美一区二区三区在线| 欧美日韩成人一区二区| 一区在线视频观看| 香港久久久电影| 亚洲免费在线播放| 欧美日韩另类视频| 亚洲丰满在线| 久久精品视频网| 久久国产一区二区| 国产精品自在欧美一区| 亚洲九九爱视频| 日韩视频一区| 欧美大片一区二区三区| 黄色精品网站| 欧美一区二区三区四区夜夜大片 | 亚洲伦伦在线| 久久亚洲视频| 国产婷婷精品| 亚洲免费视频网站| 亚洲综合色激情五月| 欧美日本高清视频| 亚洲精品一区二区三区蜜桃久| 亚洲黑丝一区二区| 久久综合伊人| 在线观看日韩av| 亚洲高清视频一区二区| 久久久久久欧美| 国产伦精品一区二区三区视频孕妇 | 亚洲黄色视屏| 亚洲精品小视频| 欧美激情综合色| 91久久久在线| 99热免费精品| 欧美精品在线观看91| 亚洲欧洲日本专区| 亚洲狼人综合| 欧美激情一区二区| 亚洲三级影院| 在线中文字幕一区| 欧美视频一区二区三区…| 正在播放亚洲| 久久av老司机精品网站导航| 国产欧美一区二区三区国产幕精品| 香蕉免费一区二区三区在线观看| 新狼窝色av性久久久久久| 国产乱码精品一区二区三区av| 午夜精品久久久久久久白皮肤| 欧美一区中文字幕| 国产一区二区中文| 亚洲高清在线视频| 欧美国产精品专区| 日韩午夜在线电影| 午夜国产一区| 国产一区二区三区四区老人| 久久大逼视频| 欧美精品导航| 亚洲一区二区三区四区在线观看 | 欧美日韩一区自拍| 亚洲一区二区在| 久久久久久久一区| 亚洲国产日韩综合一区| 一区二区三区高清在线| 国产精品久久久久一区二区三区共 | 久久狠狠一本精品综合网| 欧美sm极限捆绑bd| 99在线精品视频| 久久成人在线| 亚洲国产合集| 亚洲综合成人婷婷小说| 国产综合一区二区| 一本久道久久综合婷婷鲸鱼| 国产精品日本精品| 亚洲国产高清在线观看视频| 欧美精品久久久久久久久老牛影院| 一区二区毛片| 久久久久久999| 亚洲精品视频在线| 欧美一区二视频在线免费观看| 黄色日韩在线| 亚洲一区精品在线| 韩国欧美一区| 妖精视频成人观看www| 国产精品一区二区在线观看不卡 | 欧美一区二区三区久久精品茉莉花| 欧美成人免费视频| 亚洲自拍啪啪| 欧美激情片在线观看| 午夜精品久久久久久99热软件| 免费在线观看精品| 亚洲在线中文字幕| 欧美国产欧美综合 | 亚洲国产成人一区| 亚洲精品中文字| 欧美性色综合| 欧美夜福利tv在线| 欧美日韩国产综合新一区| 欧美一区二区视频在线观看2020 | 欧美性感一类影片在线播放| 久久狠狠一本精品综合网| 欧美日韩成人一区二区| 欧美一区亚洲| 欧美视频中文在线看| 亚洲福利久久| 国产精品国产三级欧美二区 | 日韩一区二区久久| 国产亚洲欧美日韩美女| 一区二区三区高清不卡| 激情五月婷婷综合| 欧美一区二区三区四区视频 | 中日韩高清电影网| 欧美91大片| 欧美在线视频日韩| 欧美性猛交视频| 999在线观看精品免费不卡网站| 国产在线精品二区| 亚洲欧美日韩直播| 日韩一级精品视频在线观看| 免费黄网站欧美| 欧美怡红院视频|