《第6章 嵌入式系統(tǒng)總線接口》由會(huì)員分享,可在線閱讀,更多相關(guān)《第6章 嵌入式系統(tǒng)總線接口(15頁(yè)珍藏版)》請(qǐng)?jiān)谘b配圖網(wǎng)上搜索。
1、單擊此處編輯母版標(biāo)題樣式,單擊此處編輯母版文本樣式,第二級(jí),第三級(jí),第四級(jí),第五級(jí),*,實(shí)驗(yàn)六 串口通訊實(shí)驗(yàn),GX-ARM9-2410EP,教學(xué)實(shí)驗(yàn)系統(tǒng),1,實(shí)驗(yàn)?zāi)康?1掌握,ARM,的串行口工作原理;,2編程實(shí)現(xiàn),ARM,的,UART,通訊;,3掌握,S3C2410,寄存器配置方法。,2,實(shí)驗(yàn)內(nèi)容,實(shí)現(xiàn)查詢方式串口的收發(fā)功能。接收來(lái)自串口(通過(guò)超級(jí)終端)的字符并將接收到的字符發(fā)送到超級(jí)終端。,3 預(yù)備知識(shí),1熟悉,ADS,集成開發(fā)環(huán)境的基本功能;,2了解串口通訊的基本知識(shí);,3熟悉,S3C2410,串口有關(guān)寄存器。,4 實(shí)驗(yàn)設(shè)備,1,ARM2410,嵌入式開發(fā)板,,JTAG,仿真器。,2軟件
2、:,PC,機(jī)操作系統(tǒng),Win98、Win2000,或,WinXP,,ADS1.2,集成開發(fā)環(huán)境,仿真器驅(qū)動(dòng)程序,超級(jí)終端通訊程序。,5 實(shí)驗(yàn)原理,串行通信字符格式,5 實(shí)驗(yàn)原理,CPU,中的串口寄存器:,1),UART,行控制寄存器,ULCONn,該寄存器的位6決定是否使用紅外模式,位5位3決定校驗(yàn)方式,位2決定停止位長(zhǎng)度,位1和位0決定每幀的數(shù)據(jù)位數(shù)。,2),UART,控制寄存器,UCONn,該寄存器決定,UART,的各種模式。,3),FIFO,控制寄存器,UFCONn,該寄存器用于收發(fā)緩沖的管理,包括緩沖的觸發(fā)字節(jié)數(shù)的設(shè)置、,FIFO,的清除和使能。,5 實(shí)驗(yàn)原理,CPU,中的串口寄存器:
3、,4)MODEM,控制寄存器,UMCONn,該寄存器用于設(shè)置流控方式。在實(shí)驗(yàn)中沒有使用流控。,5),狀態(tài)寄存器,UTRSTATn,該寄存器用于判斷串口的狀態(tài),。,6)錯(cuò)誤狀態(tài)寄存器,UERSTATn,它可以反映芯片當(dāng)前的錯(cuò)誤類型。,7),FIFO,狀態(tài)寄存器,UFSTATn,通過(guò)它讀出目前,FIFO,是否滿以及其中的字節(jié)數(shù)。,5 實(shí)驗(yàn)原理,CPU,中的串口寄存器:,8),發(fā)送寄存器,UTXH,和接收寄存器,URXH,這兩個(gè)寄存器存放這發(fā)送和接收的數(shù)據(jù),當(dāng)然只有一個(gè)字節(jié)8位數(shù)據(jù)。需要注意的是,在發(fā)生溢出錯(cuò)誤時(shí),接收的數(shù)據(jù)必須被讀出來(lái),否則會(huì)引發(fā)下次溢出錯(cuò)誤。,9)波特率分頻寄存器,UBRDIV,
4、該寄存器為十六位,用于設(shè)置串口傳輸?shù)牟ㄌ芈?算法參見試驗(yàn)指導(dǎo)書上公式部分。,5 實(shí)驗(yàn)原理,串口在嵌入式系統(tǒng)中是一個(gè)重要的資源,常用來(lái)做輸入輸出設(shè)備,在后續(xù)的實(shí)驗(yàn)中也將使用串口的功能。串口的基本操作有三個(gè):串口初始化、發(fā)送數(shù)據(jù)和接收數(shù)據(jù),這些操作都是通過(guò)訪問(wèn)上節(jié)中描述的串口控制寄存器進(jìn)行,5 實(shí)驗(yàn)原理,(,1,)串口初始化程序,MMU_Init,(),;/,初始化內(nèi)存管理單元,/,設(shè)置系統(tǒng)時(shí)鐘,ChangeClockDivider,(,1,1,),;/1,:,2,:,4,ChangeMPllValue,(,0 xa1,0 x3,0 x1,),;/FCLK=202.8MHz,Port_Init,(
5、),;/,初始化,I/O,口,Uart,_Init,(,0,115200,),;/,初始化串口,Uart,_Select,(,0,),;,/,選擇串口,0,5 實(shí)驗(yàn)原理,(,2,)發(fā)送數(shù)據(jù),while,(,!,(,rUTRSTAT0&0 x2,),;/,等待發(fā)送緩沖空,rUTXH0=data;/,將數(shù)據(jù)寫到數(shù)據(jù)端口,(,3,)接收數(shù)據(jù),while,(,rUTRSTAT0&0 x1=0 x0,),;/,等待數(shù)據(jù),data=rURXH0;,/,讀取數(shù)據(jù),6 實(shí)驗(yàn)步驟,1參照模板工程,新建一個(gè)工程,UART,,添加相應(yīng)的文件,并修改,UART,的工程設(shè)置;,2創(chuàng)建,Main.C,和,mmu,.c,并加入到工程,UART,中;,3編寫串口操作函數(shù)實(shí)現(xiàn)如下功能:循環(huán)接收串口送來(lái)的數(shù)據(jù),并將接收到的數(shù)據(jù)發(fā)送回去;,4編譯,UART;,5,將計(jì)算機(jī)的串口接到開發(fā)板的,UART0,上;,6運(yùn)行超級(jí)終端,選擇正確的串口號(hào),并將串口設(shè)置位:波特率(115200)、奇偶校驗(yàn)(,None)、,數(shù)據(jù)位數(shù)(8)和停止位數(shù)(1),無(wú)流控,打開串口;,6 實(shí)驗(yàn)步驟,7運(yùn)行程序,在超級(jí)終端中輸入的數(shù)據(jù)將回顯到超級(jí)終端上,如下圖所示:,1簡(jiǎn)述串行接口的工作原理以及串行接口的優(yōu)缺點(diǎn);,2,RS-232C,的最基本數(shù)據(jù)傳送引腳是哪幾根?,3,簡(jiǎn)述串行接口通訊程序設(shè)計(jì)的基本步驟。,7,實(shí)驗(yàn)報(bào)告要求,