版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、<p> 課 程 設(shè) 計(jì) 說 明 書</p><p> 題 目: 基于ARM的串口通信系統(tǒng)的設(shè)計(jì)</p><p> 課 程: 嵌入式系統(tǒng)及應(yīng)用課程設(shè)計(jì)</p><p> 院 (部): 信息與電氣工程學(xué)院</p><p> 專 業(yè): 電子信息工程<
2、;/p><p> 班 級(jí): 電信082</p><p> 學(xué)生姓名: </p><p> 學(xué) 號(hào): 2008081265</p><p> 指導(dǎo)教師: </p><p> 完成日期: 2011年7月</p>
3、<p><b> 目 錄</b></p><p> 摘要···························
4、;····································
5、83;····································&
6、#183;····································
7、;··II</p><p> 1 設(shè)計(jì)目的·····························
8、183;····································
9、····································
10、3;························1</p><p> 2 設(shè)計(jì)要求·······
11、183;····································
12、····································
13、3;····································
14、183;·········1</p><p> 3 設(shè)計(jì)內(nèi)容······················
15、····································
16、3;····································
17、183;·······························2</p><p> 3.1 S3
18、C2410與串口通信概述··································
19、3;····································
20、183;·····················2</p><p> 3.1.1S2C2410處理器概述········&
21、#183;····································
22、;····································
23、83;·············2</p><p> 3.1.2 串口通信·················
24、183;····································
25、····································
26、3;··················· 3</p><p> 3.2方案設(shè)計(jì)············
27、····································
28、3;····································
29、183;·································· 4</p>
30、<p> 3.3電路設(shè)計(jì)·································
31、183;····································
32、····································
33、3;············· 4</p><p> 3.3.1 電源設(shè)計(jì)·················
34、83;····································&
35、#183;····································
36、;··············· · 4</p><p> 3.3.2晶振電路··············
37、3;····································
38、183;····································
39、····················· 5</p><p> 3.3.3復(fù)位電路··········
40、····································
41、3;····································
42、183;························· 6</p><p> 3.3.5存儲(chǔ)器設(shè)計(jì) ·····
43、····································
44、3;····································
45、183;························· 6</p><p> 3.3.4 JTAG接口 ····
46、3;····································
47、183;····································
48、······························6</p><p> 3.3.6串口電路 ·
49、····································
50、3;····································
51、183;··································7</p>
52、<p> 3.4軟件設(shè)計(jì)·································
53、83;····································&
54、#183;····································
55、;················8</p><p> 3.4.1 Boot loader 工作原理·············
56、;····································
57、83;···································8</p
58、><p> 3.4.2第一階段································
59、183;····································
60、····································
61、3;···9</p><p> 3.4.1第二階段····························
62、;····································
63、83;····································&
64、#183;······10</p><p> 總結(jié)與致謝·························
65、;····································
66、83;····································&
67、#183;···························11</p><p> 參考文獻(xiàn)····
68、····································
69、3;····································
70、183;····································
71、················12</p><p> 附錄················&
72、#183;····································
73、;····································
74、83;····································&
75、#183;···········13</p><p><b> 摘 要</b></p><p> 串口通信是目前單片機(jī)和 DSP 等嵌入式系統(tǒng)之間,以及嵌入式系統(tǒng)與 PC 機(jī)或無線模塊之間的一種非常重要且普遍使用的通信方式。在嵌入式系統(tǒng)的硬件結(jié)構(gòu)中,通常只
76、有一個(gè)8位或 16位的 CPU, 不僅要完成主流程的工作, 同時(shí)還要處理隨時(shí)發(fā)生的各種中斷, 因而嵌入式系統(tǒng)中的串口通信程序設(shè)計(jì)與 PC 機(jī)有很大的不同。</p><p> 串行端口的本質(zhì)功能是作為 CPU 和串行設(shè)備間的編碼轉(zhuǎn)換器,一般微機(jī)內(nèi)都配有通信適配器,使計(jì)算機(jī)能夠與其他具有RS 232 串口的計(jì)算機(jī)或設(shè)備進(jìn)行通信。</p><p> 本系統(tǒng)中目標(biāo)機(jī)開發(fā)板的內(nèi)核采用的是三星的
77、S3C2410 ,工作非常可靠,可穩(wěn)定運(yùn)行在 203 MHz 的時(shí)鐘頻率下。其外設(shè)非常豐富,功能強(qiáng)大,完全可以滿足設(shè)計(jì)需要。串口線采用常用的 RS 232 型接口模式,能實(shí)現(xiàn)計(jì)算機(jī)與開發(fā)板間的數(shù)據(jù)傳輸與控制。</p><p> 關(guān)鍵詞:ARM;串口通信;串行端口;RS 232</p><p><b> 設(shè)計(jì)目的</b></p><p>
78、以嵌入式芯片S3C2410為核心的最小嵌入式系統(tǒng)構(gòu)建方法,給出了S3C2410的復(fù)位電路、電源電路、存儲(chǔ)器電路和串口電路等硬件組成。在ADS環(huán)境下自制的最小Boobt loader程序開發(fā)并調(diào)試。</p><p><b> 2 設(shè)計(jì)要求</b></p><p> 串口通信是嵌入式設(shè)備必備的通信方式之一,選用ARM芯片和電平轉(zhuǎn)換芯片完成出口通信的設(shè)計(jì),并設(shè)計(jì)完整物理
79、接口。</p><p> 根據(jù)設(shè)計(jì)題目的要求,選擇確定ARM芯片型號(hào)、電平轉(zhuǎn)換芯片型號(hào),完成系統(tǒng)硬件設(shè)計(jì)和程序設(shè)計(jì)。</p><p><b> 3 設(shè)計(jì)內(nèi)容</b></p><p> 3.1 S3C2410與串口通信概述</p><p> 3.1.1S3C2410處理器概述</p><p>
80、; S3C2410是Samsung公司基于A RM 920T內(nèi)核的嵌入式微處理器.本文以S3C2410為核心,配置了最基本外圍電路構(gòu)成了最小的嵌入式系統(tǒng),并在ADS上開發(fā)了啟動(dòng)程序,完成硬件初始化,配置運(yùn)行環(huán)境,串日調(diào)試功能。</p><p> Samsung 公司推出的16/32位RISC處理器S3C2410A,為手持設(shè)備和一般類型應(yīng)用提 供了低價(jià)格、低功耗、高性能小型微控制器的解決方案。為了降低整個(gè)系統(tǒng)的
81、成本, S3C2410A提供了以下豐富的內(nèi)部設(shè)備:分開的16KB的指令Cache和16KB數(shù)據(jù)Cache, MMU虛擬存儲(chǔ)器管理,LCD控制器(支持STN&TFT),支持NAND Flash系統(tǒng)引導(dǎo),系統(tǒng) 管理器(片選邏輯和SDRAM控制器),3通道UART,4通道DMA,4通道PWM定時(shí)器,I/O 端口,RTC,8通道10位ADC和觸摸屏接口,IIC-BUS接口,IIC-BUS接口,USB主機(jī),USB 設(shè)備,SD主卡&
82、MMC卡接口,2通道的SPI以及內(nèi)部PLL時(shí)鐘倍頻器。</p><p> S3C2410A采用了ARM920T內(nèi)核,0.18um工藝的CMOS標(biāo)準(zhǔn)宏單元和存儲(chǔ)器單元。 它的低功耗、精簡和出色的全靜態(tài)設(shè)計(jì)特別適用于對(duì)成本和功耗敏感的應(yīng)用。同樣它還采用 一種叫做Advanced Microcontroller Bus Architecture(AMBA)新型總線結(jié)構(gòu)。</p><p> S
83、3C2410A的顯著特性是它的CPU核心,是一個(gè)由Advanced RISC Machines(ARM) 有限公司設(shè)計(jì)的16/32位ARM920T RISC處理器。ARM920T實(shí)現(xiàn)了MMU,AMBA BUS和 Harvard高速緩沖體系結(jié)構(gòu)。這一結(jié)構(gòu)具有獨(dú)立的16KB指令Cache和16KB數(shù)據(jù)Cache,每 個(gè)都是由8字長的行(line)構(gòu)成。 </p><p> 通過提供一系列完整的系統(tǒng)外圍設(shè)備,S3C2
84、410A大大減少了整個(gè)系統(tǒng)的成本,消除了 為系統(tǒng)配置額外器件的需要。本文檔將介紹S3C2410A中集成的以下片上功能:</p><p> ● 1.8V/2.0V內(nèi)核供電,3.3V存儲(chǔ)器供電,3.3V外部I/O供電;</p><p> ● 具備16KB的I-Cache和16KB的D-Cache/MMU;</p><p> ● 外部存儲(chǔ)控制器(SDRAM 控制和片
85、選邏輯)</p><p> ● LCD 控制器(?大支持 4K 色 STN 和 256K 色 TFT)提供 1 通道 LCD 專用 DMA。</p><p> ●4 通道 DMA 并有外部請(qǐng)求引腳。</p><p> ●3 通道 UART(IrDA1.0,16 字節(jié) Tx FIFO,和 16 字節(jié) Rx FIFO)/2 通道 SPI</p>&l
86、t;p> ?●1 通道多主 IIC-BUS/1 通道 IIS-BUS 控制器。</p><p> ? ● 兼容 SD 主接口協(xié)議 1.0 版和 MMC 卡協(xié)議 2.11 兼容版。</p><p> ?●2 端口 USB 主機(jī)/1 端口 USB 設(shè)備(1.1 版)</p><p> ?●4 通道 PWM 定時(shí)器和 1 通道內(nèi)部定時(shí)器</p&
87、gt;<p> ? ● 看門狗定時(shí)器 </p><p> ??●117 個(gè)通用 I/O 口和 24 通道外部中斷源。 </p><p> ? ● 功耗控制模式:具有普通,慢速,空閑和掉電模式。 ?</p><p> ● ?8 通道 10 比特 ADC 和觸摸屏接口 </p><p> ? ● 具有日歷功能的 RTC
88、</p><p> ? ● 具有 PLL 片上時(shí)鐘發(fā)生器</p><p><b> 3.1.1串口通信</b></p><p> 串口通信的概念,即串口按位(bit)發(fā)送和接收字節(jié) </p><p> 通信協(xié)議是指通信雙方按照約定的數(shù)據(jù)格式、同步方式、傳送速度、傳送步驟等規(guī)程來進(jìn)行數(shù)據(jù)傳輸 </p>
89、<p> 本次采用異步通信 ,其特點(diǎn)是通信雙方以一個(gè)字符(包括特定附加位)作為數(shù)據(jù)傳輸單位,且發(fā)送方傳送字符的間隔時(shí)間是不定的。在傳輸一個(gè)字符時(shí)總是從起始位開始,以停止位結(jié)束。</p><p><b> 如圖1所示:</b></p><p> 圖1 串行數(shù)據(jù)幀格式</p><p> S3C2410的UART提供3個(gè)獨(dú)立的異
90、步串行通信端口,每個(gè)端口可以基于中斷或者DMA進(jìn)行操作。換句話說,UART控制器可以在CPU和UART之間產(chǎn)生一個(gè)中斷或者DMA請(qǐng)求來傳輸數(shù)據(jù)。UART在系統(tǒng)時(shí)鐘下運(yùn)行可支持高達(dá)230.4K的波特率,如果使用外部設(shè)備提供的UEXTCLK,UART的速度還可以更高。每個(gè)UART通道各含有兩個(gè)16位的接收和發(fā)送FIFO。</p><p> S3C2410的UART包括可編程的波特率,紅外 接收/發(fā)送,一個(gè)或兩個(gè)停止
91、位插入,5-8位數(shù)據(jù)寬度和奇偶校驗(yàn)。</p><p> 每個(gè)UART包括一個(gè)波特率發(fā)生器、一個(gè)發(fā)送器、一個(gè)接收器和一個(gè)控制單元,如圖11-1所示。波特率發(fā)生器的輸入可以是PCLK或者UEXTCLK。發(fā)送器和接收器包含16位的FIFO和移位寄存器,數(shù)據(jù)被送入FIFO,然后被復(fù)制到發(fā)送移位寄存器準(zhǔn)備發(fā)送,然后數(shù)據(jù)按位從發(fā)送數(shù)據(jù)引腳TxDn輸出。同時(shí),接收數(shù)據(jù)從接收數(shù)據(jù)引腳RxDn按位移入接收移位寄存器,并復(fù)制到FI
92、FO。</p><p><b> 特性</b></p><p> RxD0, TxD0, RxD1, TxD1, RxD2, 和TxD2基于中斷或者DMA操作</p><p> UART Ch 0, 1, 和 2 具有 IrDA 1.0 & 16 字節(jié) FIFO</p><p> UART Ch 0 和
93、1 具有 nRTS0, nCTS0, nRTS1, 和 nCTS1</p><p><b> 支持發(fā)生/接收握手</b></p><p><b> 3.2 方案設(shè)計(jì)</b></p><p> 圖2 通信系統(tǒng)的組成框圖</p><p> 本系統(tǒng)是以嵌入式芯片S3C2410為核心的最小嵌入式
94、系統(tǒng)構(gòu)建方法,給出了S3C2410的復(fù)位電路、調(diào)試接口、電源電路、存儲(chǔ)器電路和串口電路等硬件組成。</p><p> 3.3 電路設(shè)計(jì)</p><p> 3.3.1 電源設(shè)計(jì)</p><p> S3C2410工作時(shí)內(nèi)核需要1. 8 V電壓,I/ O端口和外設(shè)需要3. 3 V電壓. VDDi/VDDiarm引腳口是供S3C2410內(nèi)核的1. 8 V電壓;
95、VDDalive引腳是功能復(fù)位和端口狀態(tài)寄存器電壓. M12引腳RTCVDD是RT C模塊的1. 8 V電壓,用電池供電保證系統(tǒng)的掉電后保持實(shí)時(shí)時(shí)鐘.VDDOP引腳是I/ O端口3. 3V電壓;V DDM OP引腳是存儲(chǔ)器I/ O端口電壓;還有一系列VSS引腳需要接到電源地上.3. 3 V電壓從SV用A M S 1117- 3. 3轉(zhuǎn)換得到如圖3所示;1.8V從3. 3 V通過MIC5207-1. 8轉(zhuǎn)換得到。如圖3所示。</p&
96、gt;<p><b> 圖 3 電源電路</b></p><p><b> 3.3.2晶振電路</b></p><p> S3C2410內(nèi)部有時(shí)鐘管理模塊,有2個(gè)鎖相環(huán),其中M PLL能夠產(chǎn)生CPU卞頻FCLK,AHB總線外設(shè)時(shí)鐘HCLK和APB總線外設(shè)時(shí)鐘PCLK; UPLL產(chǎn)生USB模塊的時(shí)鐘。OM3,OM2都接地時(shí),主
97、時(shí)鐘源和U SB模塊時(shí)鐘源都由外接晶振產(chǎn)生。在XTIpll和XTOpll之間連接主晶振,可以選擇12 MHz品振,通過內(nèi)部寄存器的設(shè)置產(chǎn)生不同頻率的FOLK, H CLK和PCLK;在XT Irtc和XTOrtc上需要接32.768 kHz的晶振供RTC模塊使用.同時(shí)在MPLLCAP和UPLLCAP上也要外接5pF的環(huán)路濾波電容。晶振電路如圖4所示。</p><p> 圖 4 晶振電路</p>
98、<p> 3.3.3 復(fù)位電路</p><p> S3C2410的J12引腳為nRESET復(fù)位引腳,nRESET上給4個(gè)FOLK時(shí)間的低電平后就可以復(fù)位.可以設(shè)計(jì)如圖5所小的復(fù)位電路,其中上電復(fù)位是靠RC電路特性完成,開關(guān)二極管1N4148在手動(dòng)復(fù)位時(shí)對(duì)電容起快速放電的作用,因此可以把復(fù)位電平快速拉到OV。反響門74H C 14可以起到延時(shí)作用,保證有足夠的復(fù)位時(shí)間。</p>&l
99、t;p> 圖5 復(fù)位電路</p><p> 3.3.4 JTAG接口</p><p> S3C2410有標(biāo)準(zhǔn)的JTAG接口,TCI(H6)為測試時(shí)鐘輸入;TDI(J1)為測試數(shù)據(jù)輸入;TDO(JS)為測試數(shù)據(jù)輸出;TMS(J3)為測試模式選擇,TMS用來設(shè)置JTA G接日處于某種特定的測試式;nTRST ( H 5)為測試復(fù)位,輸入引腳,低電平有效。其nTRST,T
100、MS,TCK,TDI需要接10K的上拉電阻。通過,JTAG日可以完成芯片測試或在線編程。</p><p> 3.3.5 存儲(chǔ)器設(shè)計(jì)</p><p> S3C2410有32根數(shù)據(jù)線和27根地址線,因此地址線的尋址范圍為128 M;但是S3C2410還有8根存儲(chǔ)器芯片片選信號(hào)線nGCSO-- nGCS7,因此總的尋址空間為128M * 8= 1G。Nand Flash啟動(dòng)模式下復(fù)位時(shí)S3
101、C2410的存儲(chǔ)器映射如圖6所示。如當(dāng)訪問物理地址Ox08000000- 0x10000000內(nèi)的地址則nGCSl自動(dòng)為低電平,以此類推。</p><p> 通過圖6可知SDRAM只能連接在nGCS6和nGCS7片選引腳上。S3C2410提供了SDRAM的接口,其中包括nSRAS:行信號(hào)鎖存;nSCAS:列信號(hào)鎖存;nSCS(就是nGCS 6 ):片選信號(hào);</p><p><b&
102、gt; 圖 6</b></p><p> DQM[3:0]:數(shù)據(jù)屏蔽 ; SCLI[ 1: 0];時(shí)鐘;SCKE:時(shí)鐘有效;nBE [ 3: 0]:高/低字節(jié)有效;nWBE[ 3:0]:寫有效。MT48LC16M16A2P是4塊16位32M的SDRAM存儲(chǔ)器。MT48LC16M16A2P的行地址13位為A 0--A 12,列地址9位為CAO- CA8,行和列地址是復(fù)用的。MT48LC16M16
103、A2P包括4個(gè)塊,通過BA0,BA1的組合選擇塊。MT48LC16M16A2P是16位存儲(chǔ)器,因此數(shù)據(jù)線為 DQO--DQ15,還有CS片選,CLK時(shí)鐘,CKE時(shí)鐘使能,RAS行鎖存,CAS列鎖存,WE寫使能等引腳.圖7表示MT48LC16M16A2P和S3C2410的連接方法,其中BA0, BA1需要連接ADD24和 A DDR25,通過S3C2410的說明可知,因?yàn)閮?nèi)存總大小是64M因此塊選擇信號(hào)必須使用A DDR24和ADDR25
104、。</p><p> S3C2410內(nèi)部有NAND Flash控制器,支持從NADN Flash啟動(dòng).圖7是K9F1208 64M Flash芯片和S3C2410的連接方式.S3C2410采用一組內(nèi)部寄存器來完成NAND Flash的操作.</p><p> 圖 7 存儲(chǔ)器連接電路</p><p><b> 3.3.6串口電路</b>&
105、lt;/p><p> S3C2410的DART提供了二個(gè)同步串行IO日,圖8是COMO的連接方式。串口數(shù)據(jù)的收發(fā)有查詢方式、中斷方式和DMA方式等,這些可以在UCONO寄存器中設(shè)置。UTXH0把要發(fā)送的數(shù)據(jù)寫入此寄存器。URXH0讀此寄存器獲得串日接收的數(shù)據(jù)。串日一般可以用程序運(yùn)行信息的輸出和程序調(diào)試。</p><p> 圖 8 串口連接電路</p><p>
106、3.4 軟件設(shè)計(jì)</p><p> 在本系統(tǒng)中,指紋圖像識(shí)別部分的算法主要通過S3C2410芯片來完成。</p><p> 當(dāng)S3C2410的OM0,OM1引腳接低電平時(shí)S3C2410就從NADN Flash啟動(dòng).在NAND Flash啟動(dòng)模式下上電后NAND Flash控制器自動(dòng)將NAND Flash的最前面的4k區(qū)域拷貝到所謂的" steppingstone"
107、;單面.這一過程完全由硬件自動(dòng)實(shí)現(xiàn)." steppingstone”實(shí)際上是S3C2410內(nèi)部的一個(gè)SRA M,因?yàn)镹ADN Flash不支持程序片內(nèi)運(yùn)行,因此必須把NAND Flash內(nèi)的指令拷貝到SRAM或SDRAM中才可以運(yùn)行.在拷貝完前4k代碼后,NAND Flash控制器自動(dòng)將“steppingstone”映射到arm地址空間0x00000000開始的前4k區(qū)域.在映射過程完成后NAND Flash控制器將pc指針直
108、接指向arm地址空間的0x00000000位置,準(zhǔn)備開始執(zhí)行“steppingstone”上的代碼。而“steppingstone”上從NAND Flash拷貝過來的4k代碼,是程序員寫的boot loader的前4k代碼。 boot loader之前寫好,并己經(jīng)被燒寫到NAND Flash的。x00000000開始區(qū)域。</p><p> 3.4.1Boot loader 工作原理</p>&
109、lt;p> Boot loader是引導(dǎo)操作系統(tǒng)的程序,也是開發(fā)階段目標(biāo)板和 PC機(jī)的通信工具。Boot loader一般都放在NAND Flash的起始位置,這樣上電后Bootbader的第一個(gè)指令被自動(dòng)執(zhí)行。由于Boot Loader的實(shí)現(xiàn)依賴于CPU的體系結(jié)構(gòu),因此大多數(shù)Boot Loader都分為stage1和stage2兩大部分.依賴于CPU體系結(jié)構(gòu)的代碼,比如設(shè)備初始化代碼等,通常都放在stagel中,而目通常都用匯
110、編語言來實(shí)現(xiàn),以達(dá)到短小精悍的目的。而stage2則通常用C語言來實(shí)現(xiàn),這樣可以實(shí)現(xiàn)復(fù)雜的功能,而目代碼會(huì)具有更好的可讀性和可移植性。階段1和階段2的工作流程如圖9。</p><p> 圖 9 程序流程圖</p><p><b> 3.4.2第一階段</b></p><p> 第一階段的卞要工作是硬件設(shè)備初始化,加載Boot Loade
111、r的stage2,準(zhǔn)備RAM空;拷貝Boot Loader的stage2到RAM空間中;設(shè)置好堆棧;跳轉(zhuǎn)到stage2的C入日點(diǎn)</p><p> 下面介紹ADS環(huán)境下開始制作簡單Bootloader的方法.</p><p> 先建立工程命名為myBoot,定義出程序的基本結(jié)構(gòu)如下:</p><p> AREA mvBoot, CODE, READ
112、ONLY;聲明一個(gè)代碼段,名稱為mvBooL</p><p> ENTRY ;程序入口聲明,程序的開始執(zhí)行位置</p><p> __ ENTRY ;入口名稱為_ENTRY</p><p> ………… ;中間寫主要代碼</p>
113、<p> END ;程序結(jié)束</p><p> 在myBoot工程的Settings中做一些設(shè)置.首先設(shè)置Target/ Target Settings/post Link 中選擇“ARM fromELF"。Linker/Arm Linker/0utput/Link Type選Simple簡單連接方式;RO Base設(shè)置為0x3000
114、8000代碼段連接地址。實(shí)際上RO BA SE指定了程序的靜態(tài)連接地址。程序真正被執(zhí)行時(shí)所在的內(nèi)存地址叫做運(yùn)行地址。如果連接時(shí)用到絕對(duì)地址的話運(yùn)行地址和鏈接地址保持一致時(shí)程序才能正常運(yùn)行,這種代碼叫做與位置有關(guān)代碼。如果連接時(shí)沒有涉及到絕對(duì)地址那么連接地址和運(yùn)行地址不一樣程序也可以正常運(yùn)行,這種代碼叫做位置無關(guān)的代碼.但是Bootloader一開始時(shí)被加載在0x00位置開始運(yùn)行,這會(huì)不會(huì)和RO Bas。設(shè)置地址沖突呢?實(shí)際上是會(huì)沖突的,
115、解決沖突的辦法就采用位置無關(guān)代碼( PIC)。實(shí)際上Boodloader的絕大部分代4i最后想讓它運(yùn)行在0x30000800開始的SDRAM單,只有第一階段代碼運(yùn)行在0x00開始的SRAM單,因此把階段1用位置無關(guān)的匯編代碼實(shí)現(xiàn)整個(gè)程序就正常運(yùn)行了。RW Base是數(shù)據(jù)</p><p> 程序的第一步要設(shè)置中斷向量表。S3C2410有7種中斷,中斷入日地址在0x00開始處,每個(gè)中斷占用4個(gè)字節(jié),正好可以放一個(gè)跳
116、轉(zhuǎn)指令.程序如下:</p><p> b ResetH andler;復(fù)位中斷,也是整個(gè)程序的入口,b指令是根據(jù)當(dāng)前PC進(jìn)行跳轉(zhuǎn),因此可以實(shí)現(xiàn)位置無關(guān)代碼引.在ResetH andler中需要做的工作有:關(guān)閉看門狗、關(guān)閉所有中斷、設(shè)置主頻、初始化SDRAM、設(shè)置中斷堆棧,最后搬移代碼到SDRAM中。最后一步跳轉(zhuǎn)到C程序的入口函數(shù)m ain中。</p><p> 3. 4. 3第二階
117、段</p><p> 這階段代碼用C語言編寫,從m ain函數(shù)開始.這個(gè)階段的卞要任務(wù)有串日初始化、MMU的初始化、USB初始化、以太網(wǎng)初始化等.Bootloader工作時(shí)顯示屏可能還沒有工作,或者日標(biāo)板根本就沒有顯示屏或鍵盤等設(shè)備,因此人機(jī)交勻_一般通過串日來實(shí)現(xiàn).因此必須初始化串口,通過串日打印運(yùn)行信息或者接收用戶輸入.用串日連接到PC上,用專用或通用的串口軟件來接收信息或輸入信息。</p>
118、<p><b> 總結(jié)與致謝</b></p><p> 本次設(shè)計(jì)設(shè)計(jì)的系統(tǒng)具有成本低廉,體積小,功耗低等特點(diǎn),并且可靠性、可擴(kuò)展性、同時(shí)節(jié)省硬件資源。但同時(shí)存在一些不足,本系統(tǒng)中的代碼是順序執(zhí)行的,運(yùn)行時(shí)間較長。</p><p> 通過本次課程設(shè)計(jì),使我對(duì)ARM開發(fā)有了一定的掌握和理解,鞏固了我在《嵌入式系統(tǒng)及應(yīng)用》課程中所學(xué)的基本理論知識(shí)和實(shí)驗(yàn)技能,
119、使我對(duì)《嵌入式系統(tǒng)及應(yīng)用》課程有了更深入的了解,熟悉了S3C210 的串口的使用,了解S3C2410的內(nèi)部功能模塊,及內(nèi)核架構(gòu)。進(jìn)一步激發(fā)了我對(duì)所學(xué)專業(yè)學(xué)習(xí)的興趣;提高了我的思考與實(shí)踐能力。</p><p> 在設(shè)計(jì)的過程和設(shè)計(jì)說明書的撰寫過程中,老師們給予了我熱心的幫助和大力的支持,給我提了諸多的寶貴意見,拓寬了我的思路。在此我向老師致以崇高的敬意和衷心的感謝!</p><p> 在
120、我的學(xué)習(xí)過程中,高煥兵、辛征等其它老師也給了我耐心的指導(dǎo)和幫助。我在此對(duì)各位老師表示誠摯的感謝!</p><p><b> 參考文獻(xiàn)</b></p><p> [1] 杜春雷.ARM體系結(jié)構(gòu)與編程[M].北京:清華大學(xué)出版社,2003.</p><p> [2] 周立功 .ARM嵌入式Linux系統(tǒng)構(gòu)建與驅(qū)動(dòng)開發(fā)范例[M].北京:北京航空
121、航天大學(xué)出版社,2006.</p><p> [3] 斯洛斯(Sloss,A.N.).ARM嵌入式系統(tǒng)開發(fā):軟件設(shè)計(jì)與優(yōu)化[M].北京:北京航空航天大學(xué)出版社,2005.</p><p> [4] ARM&Linux嵌入式系統(tǒng)教程.北京:北京航空航天大學(xué)出版社,2004.</p><p> [5] 陳賾.ARM9嵌入式技術(shù)及Linux高級(jí)實(shí)踐教程[M]
122、 .北京:北京航空航天大學(xué)出版社,2005.</p><p> [6] 孫天澤,袁文菊.嵌入式設(shè)計(jì)及Linux驅(qū)動(dòng)開發(fā)指南——基于ARM9處理器[M] .第2版.北京:電子工業(yè)出版社,2007.</p><p> [7] 田澤.ARM9嵌入式Linux開發(fā)實(shí)驗(yàn)與實(shí)踐[M] .北京:北京航空航天大學(xué)出版社,2006.</p><p> [8] 于明.ARM9嵌入
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 基于arm的串口通信系統(tǒng)的課程設(shè)計(jì)說明書
- 串行通信系統(tǒng)微機(jī)課程設(shè)計(jì)說明書
- 課程設(shè)計(jì)說明書-基于arm的_圖形點(diǎn)陣lcd菜單設(shè)計(jì)
- 移動(dòng)通信ofdm課程設(shè)計(jì)說明書
- 操作系統(tǒng)課程設(shè)計(jì)說明書--基于linux的進(jìn)程之間通信
- 基于dsp課程設(shè)計(jì)說明書
- 課程設(shè)計(jì)說明書
- 課程設(shè)計(jì)說明書
- 工廠管理系統(tǒng)課程設(shè)計(jì)說明書
- 學(xué)生管理系統(tǒng)課程設(shè)計(jì)說明書
- 醫(yī)院管理系統(tǒng)課程設(shè)計(jì)說明書
- vfp課程設(shè)計(jì)--學(xué)生管理系統(tǒng)課程設(shè)計(jì)說明書
- 串口通信c++課程設(shè)計(jì)--基于串口通信的高級(jí)語言控制程序的設(shè)計(jì)
- 倉儲(chǔ)管理系統(tǒng)-課程設(shè)計(jì)說明書
- 歌手比賽系統(tǒng)課程設(shè)計(jì)說明書
- 采購管理系統(tǒng)課程設(shè)計(jì)說明書
- 前門課程設(shè)計(jì)說明書
- javaweb課程設(shè)計(jì)說明書
- 后蓋課程設(shè)計(jì)說明書
- 鍋爐課程設(shè)計(jì)說明書
評(píng)論
0/150
提交評(píng)論