2023年全國(guó)碩士研究生考試考研英語(yǔ)一試題真題(含答案詳解+作文范文)_第1頁(yè)
已閱讀1頁(yè),還剩15頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、<p>  課 程 設(shè) 計(jì) 說(shuō) 明 書(shū)</p><p>  題 目: 基于ARM的串口通信系統(tǒng)的設(shè)計(jì)</p><p>  課 程: 嵌入式系統(tǒng)及應(yīng)用課程設(shè)計(jì)</p><p>  院 (部): 信息與電氣工程學(xué)院</p><p>  專(zhuān) 業(yè): 電子信息工程<

2、;/p><p>  班 級(jí): 電信082</p><p>  學(xué)生姓名: </p><p>  學(xué) 號(hào): </p><p>  指導(dǎo)教師: </p><p>  完成日期: 2011年7月</p><p>

3、<b>  目 錄</b></p><p>  摘要····························&#

4、183;····································

5、····································

6、3;····································&#

7、183;II</p><p>  1 設(shè)計(jì)目的·······························

8、;····································

9、83;····································&

10、#183;······················1</p><p>  2 設(shè)計(jì)要求·········

11、;····································

12、83;····································&

13、#183;····································

14、;········1</p><p>  3 設(shè)計(jì)內(nèi)容·······················

15、83;····································&

16、#183;····································

17、;······························2</p><p>  3.1 S3C2410與串口通

18、信概述····································&

19、#183;····································

20、;····················2</p><p>  3.1.1S2C2410處理器概述·········

21、3;····································&#

22、183;····································

23、············2</p><p>  3.1.2 串口通信···················

24、;····································

25、83;····································&

26、#183;················· 3</p><p>  3.2方案設(shè)計(jì)·············

27、83;····································&

28、#183;····································

29、;································· 4</p><p&g

30、t;  3.3電路設(shè)計(jì)···································

31、;····································

32、83;····································&

33、#183;··········· 4</p><p>  3.3.1 電源設(shè)計(jì)···················

34、····································

35、3;····································&#

36、183;············· · 4</p><p>  3.3.2晶振電路················&

37、#183;····································

38、;····································

39、83;··················· 5</p><p>  3.3.3復(fù)位電路···········

40、83;····································&

41、#183;····································

42、;························ 6</p><p>  3.3.5存儲(chǔ)器設(shè)計(jì) ······

43、83;····································&

44、#183;····································

45、;························ 6</p><p>  3.3.4 JTAG接口 ······&

46、#183;····································

47、;····································

48、83;····························6</p><p>  3.3.6串口電路 ··

49、83;····································&

50、#183;····································

51、;·································7</p><p>

52、;  3.4軟件設(shè)計(jì)···································

53、····································

54、3;····································&#

55、183;··············8</p><p>  3.4.1 Boot loader 工作原理··············&#

56、183;····································

57、··································8</p><

58、;p>  3.4.2第一階段··································

59、;····································

60、83;····································&

61、#183;·9</p><p>  3.4.1第二階段·····························&#

62、183;····································

63、····································

64、3;·····10</p><p>  總結(jié)與致謝··························&#

65、183;····································

66、····································

67、3;··························11</p><p>  參考文獻(xiàn)·····

68、83;····································&

69、#183;····································

70、;····································

71、83;··············12</p><p>  附錄·················

72、3;····································&#

73、183;····································

74、····································

75、3;··········13</p><p><b>  摘 要</b></p><p>  串口通信是目前單片機(jī)和 DSP 等嵌入式系統(tǒng)之間,以及嵌入式系統(tǒng)與 PC 機(jī)或無(wú)線模塊之間的一種非常重要且普遍使用的通信方式。在嵌入式系統(tǒng)的硬件結(jié)構(gòu)中,通常只有一個(gè)8位或 16

76、位的 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ī)開(kāi)發(fā)板的內(nèi)核采用的是三星的 S3C2410 ,

77、工作非常可靠,可穩(wěn)定運(yùn)行在 203 MHz 的時(shí)鐘頻率下。其外設(shè)非常豐富,功能強(qiáng)大,完全可以滿足設(shè)計(jì)需要。串口線采用常用的 RS 232 型接口模式,能實(shí)現(xiàn)計(jì)算機(jī)與開(kāi)發(fā)板間的數(shù)據(jù)傳輸與控制。</p><p>  關(guān)鍵詞:ARM;串口通信;串行端口;RS 232</p><p><b>  設(shè)計(jì)目的</b></p><p>  以嵌入式芯片S3C

78、2410為核心的最小嵌入式系統(tǒng)構(gòu)建方法,給出了S3C2410的復(fù)位電路、電源電路、存儲(chǔ)器電路和串口電路等硬件組成。在ADS環(huán)境下自制的最小Boobt loader程序開(kāi)發(fā)并調(diào)試。</p><p><b>  2 設(shè)計(jì)要求</b></p><p>  串口通信是嵌入式設(shè)備必備的通信方式之一,選用ARM芯片和電平轉(zhuǎn)換芯片完成出口通信的設(shè)計(jì),并設(shè)計(jì)完整物理接口。</p

79、><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>  S3C241

80、0是Samsung公司基于A RM 920T內(nèi)核的嵌入式微處理器.本文以S3C2410為核心,配置了最基本外圍電路構(gòu)成了最小的嵌入式系統(tǒng),并在ADS上開(kāi)發(fā)了啟動(dòng)程序,完成硬件初始化,配置運(yùn)行環(huán)境,串日調(diào)試功能。</p><p>  Samsung 公司推出的16/32位RISC處理器S3C2410A,為手持設(shè)備和一般類(lèi)型應(yīng)用提 供了低價(jià)格、低功耗、高性能小型微控制器的解決方案。為了降低整個(gè)系統(tǒng)的成本, S3C24

81、10A提供了以下豐富的內(nèi)部設(shè)備:分開(kāi)的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主卡&MMC卡接口,2通

82、道的SPI以及內(nèi)部PLL時(shí)鐘倍頻器。</p><p>  S3C2410A采用了ARM920T內(nèi)核,0.18um工藝的CMOS標(biāo)準(zhǔn)宏單元和存儲(chǔ)器單元。 它的低功耗、精簡(jiǎn)和出色的全靜態(tài)設(shè)計(jì)特別適用于對(duì)成本和功耗敏感的應(yīng)用。同樣它還采用 一種叫做Advanced Microcontroller Bus Architecture(AMBA)新型總線結(jié)構(gòu)。</p><p>  S3C2410A的顯

83、著特性是它的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字長(zhǎng)的行(line)構(gòu)成。 </p><p>  通過(guò)提供一系列完整的系統(tǒng)外圍設(shè)備,S3C2410A大大減少了

84、整個(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 專(zhuān)用 DMA。</p><p>  ●4 通道 DMA 并有外部請(qǐng)求引腳。</p><p>  ●3 通道 UART(IrDA1.0,16 字節(jié) Tx FIFO,和 16 字節(jié) Rx FIFO)/2 通道 SPI</p><p>  

86、?●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、p>  ? ● 看門(mén)狗定時(shí)器 </p><p>  ??●117 個(gè)通用 I/O 口和 24 通道外部中斷源。 </p><p>  ? ● 功耗控制模式:具有普通,慢速,空閑和掉電模式。 ?</p><p>  ● ?8 通道 10 比特 ADC 和觸摸屏接口 </p><p>  ? ● 具有日歷功能的 RTC </p>

88、;<p>  ? ● 具有 PLL 片上時(shí)鐘發(fā)生器</p><p><b>  3.1.1串口通信</b></p><p>  串口通信的概念,即串口按位(bit)發(fā)送和接收字節(jié) </p><p>  通信協(xié)議是指通信雙方按照約定的數(shù)據(jù)格式、同步方式、傳送速度、傳送步驟等規(guī)程來(lái)進(jìn)行數(shù)據(jù)傳輸 </p><p>

89、;  本次采用異步通信 ,其特點(diǎn)是通信雙方以一個(gè)字符(包括特定附加位)作為數(shù)據(jù)傳輸單位,且發(fā)送方傳送字符的間隔時(shí)間是不定的。在傳輸一個(gè)字符時(shí)總是從起始位開(kāi)始,以停止位結(jié)束。</p><p><b>  如圖1所示:</b></p><p>  圖1 串行數(shù)據(jù)幀格式</p><p>  S3C2410的UART提供3個(gè)獨(dú)立的異步串行通信端口,每

90、個(gè)端口可以基于中斷或者DMA進(jìn)行操作。換句話說(shuō),UART控制器可以在CPU和UART之間產(chǎn)生一個(gè)中斷或者DMA請(qǐng)求來(lái)傳輸數(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è)停止位插入,5-8位數(shù)

91、據(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ù)制到FIFO。</p

92、><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 和 1 具有 nRTS

93、0, 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為核心的最小嵌入式系統(tǒng)構(gòu)建方法,給出

94、了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電壓;VDDalive引

95、腳是功能復(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通過(guò)MIC5207-1. 8轉(zhuǎn)換得到。如圖3所示。</p><

96、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í),主時(shí)鐘源和U SB模

97、塊時(shí)鐘源都由外接晶振產(chǎn)生。在XTIpll和XTOpll之間連接主晶振,可以選擇12 MHz品振,通過(guò)內(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><p>

98、;  3.3.3 復(fù)位電路</p><p>  S3C2410的J12引腳為nRESET復(fù)位引腳,nRESET上給4個(gè)FOLK時(shí)間的低電平后就可以復(fù)位.可以設(shè)計(jì)如圖5所小的復(fù)位電路,其中上電復(fù)位是靠RC電路特性完成,開(kāi)關(guān)二極管1N4148在手動(dòng)復(fù)位時(shí)對(duì)電容起快速放電的作用,因此可以把復(fù)位電平快速拉到OV。反響門(mén)74H C 14可以起到延時(shí)作用,保證有足夠的復(fù)位時(shí)間。</p><p>  

99、圖5 復(fù)位電路</p><p>  3.3.4 JTAG接口</p><p>  S3C2410有標(biāo)準(zhǔn)的JTAG接口,TCI(H6)為測(cè)試時(shí)鐘輸入;TDI(J1)為測(cè)試數(shù)據(jù)輸入;TDO(JS)為測(cè)試數(shù)據(jù)輸出;TMS(J3)為測(cè)試模式選擇,TMS用來(lái)設(shè)置JTA G接日處于某種特定的測(cè)試式;nTRST ( H 5)為測(cè)試復(fù)位,輸入引腳,低電平有效。其nTRST,TMS,TCK,TD

100、I需要接10K的上拉電阻。通過(guò),JTAG日可以完成芯片測(cè)試或在線編程。</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í)S3C2410的存儲(chǔ)器

101、映射如圖6所示。如當(dāng)訪問(wèn)物理地址Ox08000000- 0x10000000內(nèi)的地址則nGCSl自動(dòng)為低電平,以此類(lèi)推。</p><p>  通過(guò)圖6可知SDRAM只能連接在nGCS6和nGCS7片選引腳上。S3C2410提供了SDRAM的接口,其中包括nSRAS:行信號(hào)鎖存;nSCAS:列信號(hào)鎖存;nSCS(就是nGCS 6 ):片選信號(hào);</p><p><b>  圖

102、6</b></p><p>  DQM[3:0]:數(shù)據(jù)屏蔽 ; SCLI[ 1: 0];時(shí)鐘;SCKE:時(shí)鐘有效;nBE [ 3: 0]:高/低字節(jié)有效;nWBE[ 3:0]:寫(xiě)有效。MT48LC16M16A2P是4塊16位32M的SDRAM存儲(chǔ)器。MT48LC16M16A2P的行地址13位為A 0--A 12,列地址9位為CAO- CA8,行和列地址是復(fù)用的。MT48LC16M16A2P包括4個(gè)塊,

103、通過(guò)BA0,BA1的組合選擇塊。MT48LC16M16A2P是16位存儲(chǔ)器,因此數(shù)據(jù)線為 DQO--DQ15,還有CS片選,CLK時(shí)鐘,CKE時(shí)鐘使能,RAS行鎖存,CAS列鎖存,WE寫(xiě)使能等引腳.圖7表示MT48LC16M16A2P和S3C2410的連接方法,其中BA0, BA1需要連接ADD24和 A DDR25,通過(guò)S3C2410的說(shuō)明可知,因?yàn)閮?nèi)存總大小是64M因此塊選擇信號(hào)必須使用A DDR24和ADDR25。</p&g

104、t;<p>  S3C2410內(nèi)部有NAND Flash控制器,支持從NADN Flash啟動(dòng).圖7是K9F1208 64M Flash芯片和S3C2410的連接方式.S3C2410采用一組內(nèi)部寄存器來(lái)完成NAND Flash的操作.</p><p>  圖 7 存儲(chǔ)器連接電路</p><p><b>  3.3.6串口電路</b></p>

105、<p>  S3C2410的DART提供了二個(gè)同步串行IO日,圖8是COMO的連接方式。串口數(shù)據(jù)的收發(fā)有查詢(xún)方式、中斷方式和DMA方式等,這些可以在UCONO寄存器中設(shè)置。UTXH0把要發(fā)送的數(shù)據(jù)寫(xiě)入此寄存器。URXH0讀此寄存器獲得串日接收的數(shù)據(jù)。串日一般可以用程序運(yùn)行信息的輸出和程序調(diào)試。</p><p>  圖 8 串口連接電路</p><p>  3.4 軟件設(shè)

106、計(jì)</p><p>  在本系統(tǒng)中,指紋圖像識(shí)別部分的算法主要通過(guò)S3C2410芯片來(lái)完成。</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"單面.這一過(guò)程完

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開(kāi)始的前4k區(qū)域.在映射過(guò)程完成后NAND Flash控制器將pc指針直接指向arm地址空

108、間的0x00000000位置,準(zhǔn)備開(kāi)始執(zhí)行“steppingstone”上的代碼。而“steppingstone”上從NAND Flash拷貝過(guò)來(lái)的4k代碼,是程序員寫(xiě)的boot loader的前4k代碼。 boot loader之前寫(xiě)好,并己經(jīng)被燒寫(xiě)到NAND Flash的。x00000000開(kāi)始區(qū)域。</p><p>  3.4.1Boot loader 工作原理</p><p> 

109、 Boot loader是引導(dǎo)操作系統(tǒng)的程序,也是開(kāi)發(fā)階段目標(biāo)板和 PC機(jī)的通信工具。Boot loader一般都放在NAND Flash的起始位置,這樣上電后Bootbader的第一個(gè)指令被自動(dòng)執(zhí)行。由于Boot Loader的實(shí)現(xiàn)依賴(lài)于CPU的體系結(jié)構(gòu),因此大多數(shù)Boot Loader都分為stage1和stage2兩大部分.依賴(lài)于CPU體系結(jié)構(gòu)的代碼,比如設(shè)備初始化代碼等,通常都放在stagel中,而目通常都用匯編語(yǔ)言來(lái)實(shí)現(xiàn),以達(dá)

110、到短小精悍的目的。而stage2則通常用C語(yǔ)言來(lái)實(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 Loader的stage2,

111、準(zhǔn)備RAM空;拷貝Boot Loader的stage2到RAM空間中;設(shè)置好堆棧;跳轉(zhuǎn)到stage2的C入日點(diǎn)</p><p>  下面介紹ADS環(huán)境下開(kāi)始制作簡(jiǎn)單Bootloader的方法.</p><p>  先建立工程命名為myBoot,定義出程序的基本結(jié)構(gòu)如下:</p><p>  AREA mvBoot, CODE, READONLY;聲明一個(gè)

112、代碼段,名稱(chēng)為mvBooL</p><p>  ENTRY ;程序入口聲明,程序的開(kāi)始執(zhí)行位置</p><p>  __ ENTRY ;入口名稱(chēng)為_(kāi)ENTRY</p><p>  ………… ;中間寫(xiě)主要代碼</p><p&g

113、t;  END ;程序結(jié)束</p><p>  在myBoot工程的Settings中做一些設(shè)置.首先設(shè)置Target/ Target Settings/post Link 中選擇“ARM fromELF"。Linker/Arm Linker/0utput/Link Type選Simple簡(jiǎn)單連接方式;RO Base設(shè)置為0x30008000代碼段連接

114、地址。實(shí)際上RO BA SE指定了程序的靜態(tài)連接地址。程序真正被執(zhí)行時(shí)所在的內(nèi)存地址叫做運(yùn)行地址。如果連接時(shí)用到絕對(duì)地址的話運(yùn)行地址和鏈接地址保持一致時(shí)程序才能正常運(yùn)行,這種代碼叫做與位置有關(guān)代碼。如果連接時(shí)沒(méi)有涉及到絕對(duì)地址那么連接地址和運(yùn)行地址不一樣程序也可以正常運(yùn)行,這種代碼叫做位置無(wú)關(guān)的代碼.但是Bootloader一開(kāi)始時(shí)被加載在0x00位置開(kāi)始運(yùn)行,這會(huì)不會(huì)和RO Bas。設(shè)置地址沖突呢?實(shí)際上是會(huì)沖突的,解決沖突的辦法就采

115、用位置無(wú)關(guān)代碼( PIC)。實(shí)際上Boodloader的絕大部分代4i最后想讓它運(yùn)行在0x30000800開(kāi)始的SDRAM單,只有第一階段代碼運(yùn)行在0x00開(kāi)始的SRAM單,因此把階段1用位置無(wú)關(guān)的匯編代碼實(shí)現(xiàn)整個(gè)程序就正常運(yùn)行了。RW Base是數(shù)據(jù)</p><p>  程序的第一步要設(shè)置中斷向量表。S3C2410有7種中斷,中斷入日地址在0x00開(kāi)始處,每個(gè)中斷占用4個(gè)字節(jié),正好可以放一個(gè)跳轉(zhuǎn)指令.程序如下:

116、</p><p>  b ResetH andler;復(fù)位中斷,也是整個(gè)程序的入口,b指令是根據(jù)當(dāng)前PC進(jìn)行跳轉(zhuǎn),因此可以實(shí)現(xiàn)位置無(wú)關(guān)代碼引.在ResetH andler中需要做的工作有:關(guān)閉看門(mén)狗、關(guān)閉所有中斷、設(shè)置主頻、初始化SDRAM、設(shè)置中斷堆棧,最后搬移代碼到SDRAM中。最后一步跳轉(zhuǎn)到C程序的入口函數(shù)m ain中。</p><p>  3. 4. 3第二階段</p&g

117、t;<p>  這階段代碼用C語(yǔ)言編寫(xiě),從m ain函數(shù)開(kāi)始.這個(gè)階段的卞要任務(wù)有串日初始化、MMU的初始化、USB初始化、以太網(wǎng)初始化等.Bootloader工作時(shí)顯示屏可能還沒(méi)有工作,或者日標(biāo)板根本就沒(méi)有顯示屏或鍵盤(pán)等設(shè)備,因此人機(jī)交勻_一般通過(guò)串日來(lái)實(shí)現(xiàn).因此必須初始化串口,通過(guò)串日打印運(yùn)行信息或者接收用戶輸入.用串日連接到PC上,用專(zhuān)用或通用的串口軟件來(lái)接收信息或輸入信息。</p><p>

118、<b>  總結(jié)與致謝</b></p><p>  本次設(shè)計(jì)設(shè)計(jì)的系統(tǒng)具有成本低廉,體積小,功耗低等特點(diǎn),并且可靠性、可擴(kuò)展性、同時(shí)節(jié)省硬件資源。但同時(shí)存在一些不足,本系統(tǒng)中的代碼是順序執(zhí)行的,運(yùn)行時(shí)間較長(zhǎng)。</p><p>  通過(guò)本次課程設(shè)計(jì),使我對(duì)ARM開(kāi)發(fā)有了一定的掌握和理解,鞏固了我在《嵌入式系統(tǒng)及應(yīng)用》課程中所學(xué)的基本理論知識(shí)和實(shí)驗(yàn)技能,使我對(duì)《嵌入式系統(tǒng)

119、及應(yīng)用》課程有了更深入的了解,熟悉了S3C210 的串口的使用,了解S3C2410的內(nèi)部功能模塊,及內(nèi)核架構(gòu)。進(jìn)一步激發(fā)了我對(duì)所學(xué)專(zhuān)業(yè)學(xué)習(xí)的興趣;提高了我的思考與實(shí)踐能力。</p><p>  在設(shè)計(jì)的過(guò)程和設(shè)計(jì)說(shuō)明書(shū)的撰寫(xiě)過(guò)程中,老師們給予了我熱心的幫助和大力的支持,給我提了諸多的寶貴意見(jiàn),拓寬了我的思路。在此我向老師致以崇高的敬意和衷心的感謝!</p><p>  在我的學(xué)習(xí)過(guò)程中,z

120、z等其它老師也給了我耐心的指導(dǎo)和幫助。我在此對(duì)各位老師表示誠(chéng)摯的感謝!</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)開(kāi)發(fā)范例[M].北京:北京航空航天大學(xué)出版社,2006.

121、</p><p>  [3] 斯洛斯(Sloss,A.N.).ARM嵌入式系統(tǒng)開(kāi)發(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] .北京:北京航空航天大學(xué)

122、出版社,2005.</p><p>  [6] 孫天澤,袁文菊.嵌入式設(shè)計(jì)及Linux驅(qū)動(dòng)開(kāi)發(fā)指南——基于ARM9處理器[M] .第2版.北京:電子工業(yè)出版社,2007.</p><p>  [7] 田澤.ARM9嵌入式Linux開(kāi)發(fā)實(shí)驗(yàn)與實(shí)踐[M] .北京:北京航空航天大學(xué)出版社,2006.</p><p>  [8] 于明.ARM9嵌入式系統(tǒng)設(shè)計(jì)與開(kāi)發(fā)教程[M]

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 眾賞文庫(kù)僅提供信息存儲(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ì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論