




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、x學(xué)校課 程 設(shè) 計(jì) 報(bào) 告課程名稱: 嵌入式系統(tǒng) 設(shè)計(jì)題目:arm9串行接收發(fā)送驅(qū)動(dòng)程序設(shè)計(jì)院 系: 電氣信息學(xué)院 班 級: 姓 名: 學(xué) 號(hào): 指導(dǎo)教師: 設(shè)計(jì)時(shí)間: 目 錄一、設(shè)計(jì)題目2二、設(shè)計(jì)內(nèi)容2三、硬件原理2四、程序流程圖21接收程序流程圖42、發(fā)送程序流程圖43、收發(fā)程序流程圖5五、程序設(shè)計(jì)61、基于arm9微處理器的串行接收驅(qū)動(dòng)程序設(shè)計(jì)62、基于arm9微處理器的串行發(fā)送驅(qū)動(dòng)程序設(shè)計(jì)73、基于arm9微處理器的串行接收發(fā)送驅(qū)動(dòng)程序設(shè)計(jì)10六、心得體會(huì)16七、參考文獻(xiàn)16一、設(shè)計(jì)題目(1)基于arm9微處理器的串行接收驅(qū)動(dòng)程序設(shè)計(jì)(2)基于arm9微處理器的串行發(fā)送驅(qū)動(dòng)程序設(shè)計(jì)(
2、3)基于arm9微處理器的串行接收發(fā)送驅(qū)動(dòng)程序設(shè)計(jì)二、設(shè)計(jì)內(nèi)容1 (1)基于arm9微處理器的串行接收驅(qū)動(dòng)程序設(shè)計(jì)初始化程序設(shè)計(jì) 串行接收程序設(shè)計(jì)(2)基于arm9微處理器的串行發(fā)送驅(qū)動(dòng)程序設(shè)計(jì)初始化程序設(shè)計(jì)串行發(fā)送程序設(shè)計(jì)(3)基于arm9微處理器的串行接收發(fā)送驅(qū)動(dòng)程序設(shè)計(jì)初始化程序設(shè)計(jì)串行接收發(fā)送程序設(shè)計(jì)2 實(shí)現(xiàn)pc機(jī)與el-arm-830開發(fā)系統(tǒng)的串行通訊,具體通訊方式與內(nèi)容:(1) 幀格式:正常模式,無奇偶校驗(yàn),一個(gè)停止位,8個(gè)數(shù)據(jù)位(2)串行發(fā)送:每過一定時(shí)間,隔2行發(fā)送字符串“how are you!”,通過pc機(jī)的串口調(diào)試助手接收。(3) 串行接收:將接收到的5個(gè)字符存儲(chǔ)到以0x
3、c300000為首地址的sdram中,通過串口調(diào)試助手發(fā)送字符.(4)當(dāng)接收到串口調(diào)試助手界面發(fā)送的“1”,發(fā)送第1屏信息;當(dāng)接收到串口調(diào)試助手界面發(fā)送的“2”,發(fā)送第2屏信息;當(dāng)接收到串口調(diào)試助手界面發(fā)送的“3”,發(fā)送第3屏信息設(shè)計(jì)要求(1)流程圖設(shè)計(jì),流程圖上每個(gè)任務(wù)的文字說明。(2)完整的程序清單。(3)通過在pc機(jī)和el-arm-830開發(fā)平臺(tái)上的調(diào)試。三、硬件原理硬件原理如圖所示,u2 max232是rs-232c的接口電路,實(shí)現(xiàn)電平轉(zhuǎn)換作用。能將來自s3c44b0x一側(cè)的0v3.3v正邏輯電平轉(zhuǎn)換為符合eia標(biāo)準(zhǔn)的負(fù)邏輯電平輸出,既當(dāng)s3c44b0x發(fā)出0v電平時(shí),經(jīng)過max232
4、轉(zhuǎn)換為3v15v電平,當(dāng)s3c44b0x發(fā)出3.3v電平時(shí),經(jīng)過max232轉(zhuǎn)換為-3v-15v電平;能將來自pc機(jī)一側(cè)的標(biāo)準(zhǔn)rs-232電平,轉(zhuǎn)換為ttl電平輸出,既當(dāng)max232接收到3v15v電平時(shí),能轉(zhuǎn)換為0v電平傳向s3c44b0x一側(cè),當(dāng)max232接收到-3v-15v電平時(shí),能轉(zhuǎn)換為5v電平傳向s3c44b0x一側(cè)。通過這種電平轉(zhuǎn)換,實(shí)現(xiàn)s3c44b0x與標(biāo)準(zhǔn)rs-232c設(shè)備通訊。圖10-8中r1、r2是限流電阻,起保護(hù)作用。原因是,max232向s3c44b0x一側(cè)的電平信號(hào)是05v,而s3c44b0x僅能發(fā)出/接收03.3v電平,邏輯高電平不匹配,通過限流電阻,簡單實(shí)現(xiàn)兩種
5、電平的接口。串行通訊原理圖四、程序流程圖1接收程序流程圖開始初始化檢測接收寄存器是否有有效數(shù)據(jù)noyes讀出數(shù)據(jù)結(jié)束2、發(fā)送程序流程圖開始初始化檢測發(fā)送寄存器是否為空noyes發(fā)送數(shù)據(jù)結(jié)束3、收發(fā)程序流程圖開始初始化檢測是否有有效數(shù)據(jù)noyesyes檢測有效數(shù)據(jù)是否為1發(fā)送第1屏數(shù)據(jù)noyes檢測有效數(shù)據(jù)是否為2no發(fā)送第2屏數(shù)據(jù)yes檢測有效數(shù)據(jù)是否為3no發(fā)送第3屏數(shù)據(jù)五、程序設(shè)計(jì)1、基于arm9微處理器的串行接收驅(qū)動(dòng)程序設(shè)計(jì)ulcon0equ0x01d00000 ;/0x03 無校驗(yàn),一個(gè)停止位;ucon0equ0x01d00004 ;/0x0c;ufcon0equ0x01d00008
6、;/0x01;umcon0equ0x01d0000c ;/0x00;urxh0equ0x01d00024 ;/數(shù)據(jù)寄存器ubirdiv0equ0x01d00028 ;/波特率設(shè)置utrstat0equ0x01d00010 ;/狀態(tài)寄存器cntequ5pconeequ0x01d20028pupeequ0x01d20030wdtconequ0x01d30000;wdtconarea t_txd,code,readonlyentry ldrr13,=0xc800000blinitldrr4,=0xc300000 ldr r5,=cntloop ldr r3,=utrstat0 ldr r2,r3 t
7、st r2,#0x01 beq loopldr r0,=urxh0 ldrbr1,r0 strb r1,r4,#1 subs r5,r5,#1 bne looploop1 b loop1delayldrr6,=0xffffdelay1subsr6,r6,#1bnedelay1movpc,r14initldrr1,=wdtconldrr0,=0x0strr0,r1 ldrr1,=pcone ldrr0,=0x28 strr0,r1 ldrr1,=pupe ldrr0,=0xff strr0,r1 ldrr1,=ulcon0 ldrr0,=0x03 strr0,r1 ldr r1,=ucon0 l
8、dr r0,=0x245 str r0,r1ldr r1, = ufcon0 ldr r0, = 0x0 str r0, r1ldr r1, = umcon0 ldr r0, = 0x0 str r0, r1 ldr r1, = ubirdiv0;頻率60m ldr r0, = 0x20;(取整)(60000000/16/115200)-1 str r0, r1 movpc,lrend2、基于arm9微處理器的串行發(fā)送驅(qū)動(dòng)程序設(shè)計(jì)ulcon0 equ 0x01d00000 ; uart線控制器地址ucon0 equ 0x01d00004 ; uart控制器地址ufcon0 equ 0x01d0
9、0008 ; uart fifo控制器地址umcon0 equ 0x01d0000c ; uart modem控制器地址utxh0 equ 0x01d00020 ; 發(fā)送數(shù)據(jù)寄存器地址urxh0 equ 0x01d00024 ; 接收數(shù)據(jù)寄存器ubirdiv0 equ 0x01d00028 ; 波特率除數(shù)寄存器utrstat0 equ 0x01d00010 ; uart發(fā)送/接收狀態(tài)寄存器地址pconeequ0x01d20028; 通用e口配置寄存器地址pupeequ0x01d20030; 通用e口上拉電阻配置寄存器地址wdtconequ0x01d30000; wdt控制器地址 area t_
10、txd,code,readonly;歡宕攵?t_txd entry ;程序入口ldrr13,=0x800000;設(shè)置堆棧指針bl init ;調(diào)用初始化子程序子程序m1ldrr0,=s1_l1 ;發(fā)送1行字符bltxd_lineldrr1,=0xfffff;延時(shí)bldelaybm1;重復(fù)發(fā)送;-delay sub.-delay;延時(shí)子程序subsr1,r1,#1bnedelaymovpc,r14;-init sub.-init;初始化子程序ldrr1,=wdtcon;關(guān)閉wdt,以免影響程序調(diào)試ldrr0,=0x0strr0,r1ldrr1,=pcone;配置通用i/o口,使pe2為rxd0,
11、pe1為txd0 ldrr0,=0x28 strr0,r1 ldrr1,=pupe;配置e口無上掛電阻 ldrr0,=0xff strr0,r1ldrr1,=ulcon0;配置uart線控制器:正常模式,無奇偶校驗(yàn),一個(gè)停止位,8個(gè)數(shù)據(jù)位 ldr r0,=0x03 strr0,r1ldr r1,=ucon0;配置uart控制器:rx邊沿觸發(fā),tx電平觸發(fā),;禁用延時(shí)中斷,使用rx錯(cuò)誤中斷,正常操作;模式,中斷請求或表決模式 ldr r0,=0x245 str r0,r1ldr r1, = ufcon0;配置uart fifo控制器:禁用 fifoldr r0, = 0x0 str r0, r1
12、ldr r1, = umcon0;配置uart modem控制器:禁止使用afcldr r0, = 0x0 str r0, r1 ldr r1, = ubirdiv0;配置波特率,系統(tǒng)主頻為頻率60m ldr r0, = 0x20 ;(取整)(60000000/16/115200)-1=32 str r0, r1 movpc,lr;子程序返回 ;-txd_line sub.-txd_line;發(fā)送1行字符串子程序 movr4,lr;保存堆棧指針txd_line1 ldrbr1,r0,#1 andsr1,r1,#0xff moveqpc,r4 bltxd_byte btxd_line1;-txd
13、_byte sub.-txd_byte;發(fā)送1字符子程序 movr5,lr ldr r3,=utrstat0 ldr r2,r3 tst r2,#0x02 beq txd_byte ldr r2,=utxh0 strb r1,r2 ldrr1,=0xffff bldelay movpc,r5;- s1_l1dcbhow are you!,&a,&a,&d,0 0020;定義字符串 mov r0,r0 end3、基于arm9微處理器的串行接收發(fā)送驅(qū)動(dòng)程序設(shè)計(jì)ulcon0equ0x01d00000 ; uart線控制器地址ucon0equ0x01d00004; uart控制器地址ufcon0equ
14、0x01d00008; uart fifo控制器地址umcon0equ0x01d0000c; uart modem控制器地址utxh0equ0x01d00020 ; 發(fā)送數(shù)據(jù)寄存器地址urxh0 equ0x01d00024; 接收數(shù)據(jù)寄存器ubirdiv0 equ0x01d00028; 波特率除數(shù)寄存器utrstat0equ0x01d00010 ; uart發(fā)送/接收狀態(tài)寄存器地址pconeequ0x01d20028; 通用e口配置寄存器地址pupeequ0x01d20030; 通用e口上拉電阻配置寄存器地址wdtconequ0x01d30000; wdt控制器地址 area t_uart,c
15、ode,readonlyentry ;程序入口ldrr13,=0x800000;設(shè)置堆棧指針bl init;調(diào)用初始化子程序子程序m1 ldr r3,=utrstat0 ldr r2,r3 tst r2,#0x01 beq m1ldr r0,=urxh0 ldrbr1,r0 cmpr1,#1 bnem2 bltxd_screen1 bm1m2cmpr1,#2bnem3bltxd_screen2bm1m3cmpr1,#3bnem1bltxd_screen3bm1txd_screen1;-txd_screen 1-movr6,lrldrr0,=s1_l1bltxd_lineldrr0,=s1_l2
16、bltxd_lineldrr0,=s1_l3bltxd_lineldrr0,=s1_l4bltxd_lineldrr0,=s1_l5bltxd_lineldrr0,=s1_l6bltxd_lineldrr0,=s1_l7bltxd_lineldrr0,=s1_l8bltxd_linemovpc,r6txd_screen2;-txd_screen 2-movr6,lrldrr0,=s2_l1bltxd_lineldrr0,=s2_l2bltxd_lineldrr0,=s2_l3bltxd_lineldrr0,=s2_l4bltxd_lineldrr0,=s2_l5bltxd_lineldrr0,
17、=s2_l6bltxd_lineldrr0,=s2_l7bltxd_lineldrr0,=s2_l8bltxd_linemovpc,r6txd_screen3;-txd_screen 3-movr6,lrldrr0,=s3_l1bltxd_lineldrr0,=s3_l2bltxd_lineldrr0,=s3_l3bltxd_lineldrr0,=s3_l4bltxd_lineldrr0,=s3_l5bltxd_lineldrr0,=s3_l6bltxd_lineldrr0,=s3_l7bltxd_lineldrr0,=s3_l8bltxd_linemovpc,r6;-delay sub.-d
18、elay;延時(shí)子程序subsr1,r1,#1bnedelaymovpc,r14;-init sub.-init;初始化子程序ldrr1,=wdtcon;關(guān)閉wdt,以免影響程序調(diào)試ldrr0,=0x0strr0,r1ldrr1,=pcone;配置通用i/o口,使pe2為rxd0 ldrr0,=0x28 strr0,r1 ldrr1,=pupe;配置e口無上掛電阻 ldrr0,=0xff strr0,r1ldrr1,=ulcon0;配置uart線控制器:正常模式,無;奇偶校驗(yàn),一個(gè)停止位,8個(gè)數(shù)據(jù)位 ldrr0,=0x03 strr0,r1ldr r1,=ucon0;配置uart控制器:rx邊沿
19、觸發(fā),tx;電平觸發(fā),;禁用延時(shí)中斷,使用rx錯(cuò)誤中斷,正;常操作;模式,中斷請求或表決模式 ldr r0,=0x245 str r0,r1ldr r1, = ufcon0;配置uart fifo控制器:禁用 fifoldr r0, = 0x0 str r0, r1ldr r1, = umcon0;配置uart modem控制器:禁止使;用afcldr r0, = 0x0 str r0, r1 ldr r1, = ubirdiv0;配置波特率,系統(tǒng)主頻為頻率60m ldr r0, = 0x20;(取整)(60000000/16/115200)-1=32 str r0, r1 movpc,lr;
20、子程序返回;-txd_line sub.-txd_line;發(fā)送1行字符串子程序 movr4,lr;保存堆棧指針txd_line1 ldrbr1,r0,#1 andsr1,r1,#0xff moveqpc,r4 bltxd_byte btxd_line1;-txd_byte sub.-txd_byte;發(fā)送1字符子程序 movr5,lr ldr r3,=utrstat0 ldr r2,r3 tst r2,#0x02 beq txd_byte ldr r2,=utxh0 strb r1,r2 ldrr1,=0xffff bldelay movpc,r5;-screen 1- s1_l1dcb *
21、,0xa,0xa,0xa,0s1_l2dcb* *,0xa,0xa,0xa,0s1_l3dcb* welcom to use el-arm-830 *,0xa,0xa,0xa,0s1_l4dcb* *,0xa,0xa,0xa,0s1_l5dcb* this is screen 1 *,0xa,0xa,0xa,0s1_l6dcb* 2010-12-01 *,0xa,0xa,0xa,0s1_l7dcb* *,0xa,0xa,0xa,0s1_l8dcb *,0xa,0xa,0xa,0;-screen 2- s2_l1dcb *,0xa,0xa,0xa,0s2_l2dcb* *,0xa,0xa,0xa,0s2_l3dcb* welcom to use el-arm-830 *,0xa,0xa,0xa,0s2_l4dcb* *,0xa,0xa,0xa,0s2_l5dcb* this is screen2 *,0xa,0xa,0xa,0s2_l6dcb* 2010-12-01 *,0xa,0xa,0xa,0s2_l7d
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 上海市勞務(wù)合同范例
- 勞動(dòng)合同范本在昆明
- 包地合同范本模板
- 出口車牌架采購合同范本
- 臨時(shí)用房建設(shè)合同范本
- 第五課 我是小畫家-模塊組 教學(xué)設(shè)計(jì) -2023-2024學(xué)年大連版(2015)初中信息技術(shù)七年級下冊
- 勞動(dòng)合同范本申請
- 養(yǎng)羊合作合同范本
- 2024年云浮市郁南縣河口鎮(zhèn)招聘筆試真題
- 2024年日照銀行社會(huì)招聘考試真題
- 2024寧波交通投資集團(tuán)有限公司校園招聘筆試參考題庫附帶答案詳解
- 幼兒園春季開學(xué)教職工安全培訓(xùn)內(nèi)容
- 《萬以內(nèi)數(shù)的認(rèn)識(shí)》大單元整體設(shè)計(jì)
- 中醫(yī)護(hù)理質(zhì)量敏感指標(biāo)的構(gòu)建
- 實(shí)驗(yàn)動(dòng)物使用者職業(yè)健康與安全課件
- WJ30059-2024軍事工業(yè)爆炸物品設(shè)計(jì)安全標(biāo)準(zhǔn)
- 創(chuàng)傷性腦疝查房
- 《政府管制基本理論》課件
- 機(jī)房建設(shè)驗(yàn)收報(bào)告
- 環(huán)境巖土工程學(xué)課件-東南大學(xué)-潘華良境巖土工程學(xué)概論-9大環(huán)境巖土工程問題
- 《紅樓夢》中寶黛之間的愛情與悲劇分析
評論
0/150
提交評論