<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 嵌入式系統 > 設計應用 > DSP芯片基于SCl6C750B的RS232接口設計

DSP芯片基于SCl6C750B的RS232接口設計

作者: 時(shí)間:2011-04-09 來(lái)源:網(wǎng)絡(luò ) 收藏

本文引用地址:http://dyxdggzs.com/article/150873.htm


圖2中的端口信號,如數據和地址總線(xiàn)、復位信號、中斷信號,完成與TMS320C32之間的連接。本中片選信號對應TMS320C32的IOSTRB空間中的0x810100h,即的內部寄存器的基地址。


2 TMS320C32的串口軟件功能
串口工作模式控制和數據收發(fā)都是通過(guò)TMS320C32對UART內部相關(guān)寄存器的讀寫(xiě)操作來(lái)完成的。因此,首先分析一下片內寄存器的功能,然后確定在本的工作模式,并且給出該串口的初始化程序、中斷發(fā)送程序和中斷接收程序。程序以C語(yǔ)言寫(xiě)成。

2.1 SCl6C750B片內寄存器

表2給出SCl6C7 150B內部寄存器的功能描述。寄存器各位意義可參見(jiàn)該的數據手冊。


2.2程序設計
首先初始化編程,以確定TMS320C32與SCl6c750B之間的操作方式、數據傳輸幀格式、SCl6C750B自身的工作模式、數據傳輸波特率的設置等工作。設定:

①SCl6C7 150B工作在DMA模式0(DMA mode O)。在此模式下,每當發(fā)送寄存器THR為空,TXRDY信號會(huì )降為邏輯低電平。只要接收寄存器RHR被裝載了一個(gè)字符,RXRDY會(huì )立刻降為邏輯低電平。

②TMS320C32與SCl6C750B UART之間的操作方式采用中斷操作方式,中斷方式相對于查詢(xún)方式可以提高TMS3320C32的工作效率。TMS320C32的INT0中斷引腳接UART的RXRDY信號,INT1接TXRDY信號。這樣,由INT0、INT1對應的中斷服務(wù)例程完成數據的接收和發(fā)送。

③數據傳輸幀格式:數據字長(cháng)8位、2位停止位、偶校驗。

④設置波特率。


電平邏輯中,串行數據速率(serial data rate)就等于波特率(baud rate)。如果外部時(shí)鐘頻率(XTAL1clock frequency)為1.8432 MHz、波特率19 200 bps時(shí),對應的波特率除數(divisor)為6。

用C語(yǔ)言開(kāi)發(fā)[8]TMS320C32的串口通信程序。初始化程序如下:
#includestdlib.h>
#includeioports.h>
//聲明SCl6C750B寄存器的結構
typedef struet{
unsigned RHR,//接收保持寄存器
unsigned THR#//發(fā)送保持寄存器
unsigned IER;//中斷使能寄存器
unsigned FCR;//FIFO控制寄存器
unsigned ISR; //中斷服務(wù)狀態(tài)寄存器
unsigned LCR;//線(xiàn)路控制寄存器
unsigned MCR;//Modem控制寄存器
unsigned LSR; //線(xiàn)路狀態(tài)寄存器
unsigned MSR;//Modem狀態(tài)寄存器
unsigned SPR; //便箋寄存器
unsigned DLL; //波特率除數低字節鎖存器
unsigned DLM;//波特率除數高字節鎖存器
}SerialPort;
//SCl6C750B的寄存器基地址為0x810100h
SerialPort SD={
0x810100h,0x810100h,0x810101h,
0x810102h,0x810102h,0x810103h,
0x810104h.0x810105h, Ox810106h
0x810107h 0x810100h,0x810101h
);
void main(void){
;
//波特率設置
outport(sp.LCR,0x80); //LCR[7]=0
outport(sp.DLL,0x06); //波特率19 200 bps
outport(sp.DLM,0x00);
outport(sp.LCR,0xlF); //數據幀格式
outport(sD.FCR,0xAl)} //DMA mode 0
outport(sp.IER,0x07); //中斷使能
;

}

//INTO中斷服務(wù)例程——數據接收

unsigned char recvdata;

void c_int-1(void){

recvdata=inport(sp.RHR);

;

}

//INT中斷服務(wù)例程——數據發(fā)送

void c_int02(void){

outport(sp.THR,transdata);

;

}


3 結 論

TMS320C32是一種高性?xún)r(jià)比的32位浮點(diǎn)新片,但其通信功能相對較弱。采用SC16C750B UART擴展TMS320C32的串行口,用于實(shí)際溫度和壓力測控裝置中,經(jīng)驗證,數據通信可靠。


上一頁(yè) 1 2 下一頁(yè)

評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>