新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設計應用 > TMS320C54X DSP實現(xiàn)UART的技術

TMS320C54X DSP實現(xiàn)UART的技術

作者: 時間:2011-03-29 來源:網(wǎng)絡 收藏


2.1 串行傳輸

異步串行數(shù)據(jù)格式的設置通過線路控制寄存器(LCR)來完成的。除了數(shù)據(jù)格式外,另外一個指標是波特率,它是通過除數(shù)寄存器來設置的,實際的波特率為輸入時鐘信號進行分頻后獲得,其公式如下:

本文引用地址:http://2s4d.com/article/150917.htm



2.2 數(shù)據(jù)接收

從SIN輸入的數(shù)據(jù)首先進入接收移位寄存器(RSR),一個字符接收完成后,數(shù)據(jù)移人接收緩沖寄存器(RBR)。RBR實際是一個16字節(jié)的FIFO,當中斷設置時,會根據(jù)FIFO中接收數(shù)據(jù)的數(shù)目產(chǎn)生中斷,主機設備從RBR中讀取數(shù)據(jù)后,中斷會自動清除。

2.3 數(shù)據(jù)發(fā)送

發(fā)送操作和接收操作相反,主機數(shù)據(jù)寫入發(fā)送保持寄存器(THR),THR是一個16字節(jié)的FIFO,然后數(shù)據(jù)移入發(fā)送移位寄存器(TSR),之后送人SOUT。當中斷設置時,會根據(jù)FIFO中發(fā)送數(shù)據(jù)的數(shù)目產(chǎn)生中斷,主機設備可根據(jù)中斷來決定是否繼續(xù)發(fā)送數(shù)據(jù)。

除了收發(fā)操作外,TLl6C550C還可以產(chǎn)生其他類型的中斷,但它只有一根中斷信號引腳INTRPT,因此主機接收到中斷后必須判決產(chǎn)生中斷的信號源。

FIFO的操作通過FCR來設置。當使用FIFO時,中最多可存放16字節(jié)數(shù)據(jù),反之則只能存放一個數(shù)據(jù),即相當于FIF0只有一個字節(jié)大小。有兩種工作方式:中斷方式和查詢方式。

UART中還有Modem控制寄存器(MClR)和Modem狀態(tài)寄存器(MSR),它們用于控制一些信號引腳,能把UART的工作狀態(tài)通過硬件的方式表達出來。

2.4部分LIART匯編編程

測試程序:
ST #0x55,*SP(var_reg) ;用來確定LJART設備是存在的
PORTW*SP(vat_reg),ADDR_SPR
PORTR ADDR_SPR.*SP(vaLr_reg)
LD *SP(var_reg),A
SUB #0x55,A,B
BC rs232_no_errclr,BEQ
設置特率程序:
ST #0x83,*SP(vaL_reg)
PORTW*SP(var_reg),ADDK_LCR
ST #0xOO,*SP(var_reg) ;設置波特率為9600
PORTW*SP(var_reg),ADDR_DIV_MSB
ST #0x18,*SP(van_reg)
PORTW*SP(vaLreg),ADDR_DUV_LSB
ST #0x03,*SP(var_reg)
PORTW*SP(var_reg).ADDR_LCR

3 總 結(jié)
利用軟件模擬的方法,缺點是將長時間處于對IJART的中斷和處理中,無法全速參與運算,而且占用了外部中斷0和一個定時器(有些只有一個定時器);優(yōu)點是在和帶UART的外設之間除了電平轉(zhuǎn)換部分外不需要另外的硬件,可以節(jié)約產(chǎn)品的成本。利用外部接口芯片組的方法,缺點是增加了額外的硬件開銷,從而增加了產(chǎn)品成本;優(yōu)點是收發(fā)數(shù)據(jù)快,可以和數(shù)據(jù)處理同步進行,能夠系統(tǒng)的實時性。


上一頁 1 2 下一頁

評論


相關推薦

技術專區(qū)

關閉