第五章 嵌入式系統(tǒng)硬件平臺(tái)設(shè)計(jì)( 第1次課)_第1頁(yè)
第五章 嵌入式系統(tǒng)硬件平臺(tái)設(shè)計(jì)( 第1次課)_第2頁(yè)
第五章 嵌入式系統(tǒng)硬件平臺(tái)設(shè)計(jì)( 第1次課)_第3頁(yè)
第五章 嵌入式系統(tǒng)硬件平臺(tái)設(shè)計(jì)( 第1次課)_第4頁(yè)
第五章 嵌入式系統(tǒng)硬件平臺(tái)設(shè)計(jì)( 第1次課)_第5頁(yè)
已閱讀5頁(yè),還剩33頁(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、5C H A P T E R嵌入式系統(tǒng)硬件平臺(tái)設(shè)計(jì)5.2 LPC2214綜述5.1嵌入式系統(tǒng)體系結(jié)構(gòu)設(shè)計(jì)5.3 LPC2214存儲(chǔ)器尋址5.4 LPC2214系統(tǒng)控制模塊5.5 LPC2214引腳連接模塊5.6 LPC2214外部存儲(chǔ)器控制器5.7 LPC2214通用I/O模塊5.8 LPC2214向量中斷控制器5.9 LPC2214定時(shí)器模塊5.10 LPC2214 A/D轉(zhuǎn)換模塊5.11 LPC2214看門(mén)狗定時(shí)器 內(nèi)容組織一、嵌入式系統(tǒng)的軟硬件框架5.1 嵌入式系統(tǒng)體系結(jié)構(gòu)設(shè)計(jì)嵌入式微處理器SDRAMROMI/OA/DD/A人機(jī)交互接口通用接口實(shí)時(shí)操作系統(tǒng)(RTOS)圖形用戶接口BSP/

2、HAL 板極支持包/硬件抽象層文件系統(tǒng)應(yīng)用程序嵌入式系統(tǒng)硬件層OS層驅(qū)動(dòng)層應(yīng)用層軟件硬件串口、并口、USB、以太網(wǎng)等LED、LCD、觸摸屏、鼠標(biāo)、鍵盤(pán)等Linux、uCLinux、uC/OS-II等二、嵌入式系統(tǒng)的開(kāi)發(fā)步驟三、嵌入式系統(tǒng)的開(kāi)發(fā)步驟系統(tǒng)需求分析:確定設(shè)計(jì)任務(wù)和目標(biāo),并提煉出設(shè)計(jì)規(guī)格說(shuō)明書(shū),作為正式設(shè)計(jì)指導(dǎo)和驗(yàn)收的標(biāo)準(zhǔn)。系統(tǒng)的需求一般分功能性需求和非功能性需求兩方面。功能性需求是系統(tǒng)的基本功能,如輸入輸出信號(hào)、操作方式等;非功能需求包括系統(tǒng)性能、成本、功耗、體積、重量等因素。體系結(jié)構(gòu)設(shè)計(jì):描述系統(tǒng)如何實(shí)現(xiàn)所述的功能和非功能需求,包括對(duì)硬件、軟件和執(zhí)行裝置的功能劃分以及系統(tǒng)的軟件、硬

3、件選型等。一個(gè)好的體系結(jié)構(gòu)是設(shè)計(jì)成功與否的關(guān)鍵。硬件/軟件協(xié)同設(shè)計(jì):基于體系結(jié)構(gòu),對(duì)系統(tǒng)的軟件、硬件進(jìn)行詳細(xì)設(shè)計(jì)。為了縮短產(chǎn)品開(kāi)發(fā)周期,設(shè)計(jì)往往是并行的。系統(tǒng)集成:把系統(tǒng)的軟件、硬件和執(zhí)行裝置集成在一起,進(jìn)行調(diào)試,發(fā)現(xiàn)并改進(jìn)單元設(shè)計(jì)過(guò)程中的錯(cuò)誤。系統(tǒng)測(cè)試:對(duì)設(shè)計(jì)好的系統(tǒng)進(jìn)行測(cè)試,看其是否滿足規(guī)格說(shuō)明書(shū)中給定的功能要求。例:工業(yè)數(shù)據(jù)采集監(jiān)控和管理系統(tǒng)工業(yè)數(shù)據(jù)的采集,監(jiān)控,管理系統(tǒng)。用戶可以在工業(yè)現(xiàn)場(chǎng)和遠(yuǎn)程對(duì)數(shù)據(jù)進(jìn)行監(jiān)控與對(duì)工業(yè)設(shè)備進(jìn)行現(xiàn)場(chǎng)和遠(yuǎn)程控制。良好的人機(jī)交互界面。基于多種通信鏈路。工業(yè)數(shù)據(jù)采集監(jiān)控和管理系統(tǒng)數(shù)據(jù)采集模塊 Data Acquisition - DAQ控制模塊 Control

4、System 系統(tǒng)管理模塊 System Management System - SYSM用戶接口模塊 User Interface - UI數(shù)據(jù)采集模塊 DAQ傳感器 采集待監(jiān)控物理量。熱電偶、力傳感器、加速度計(jì)、線性差動(dòng)變壓器。測(cè)量溫度、機(jī)械應(yīng)力、加速度以及位移。信號(hào)處理階段。信號(hào)放大、縮小、過(guò)濾及隔離處理。數(shù)據(jù)采樣、存儲(chǔ)以及分析。結(jié)果上報(bào),異常報(bào)警。接收SYSM發(fā)送的命令,包括取樣率、分析參數(shù)等命令,并執(zhí)行。數(shù)據(jù)采集模塊 DAQ中型嵌入式系統(tǒng)。對(duì)時(shí)間有嚴(yán)格的要求,需要使用搶占式系統(tǒng)內(nèi)核。通過(guò)Ethernet或其他工業(yè)級(jí)聯(lián)網(wǎng)接口,如:RS485、DeviceNet、ARCnet、Modbu

5、s、Profibus或Interbus。使用CompactFlash或固有的flash設(shè)備引導(dǎo),使用RAM磁盤(pán)或CRAMFS存儲(chǔ)數(shù)據(jù)。使用固定IP地址。 控制模塊 Control將SYSM發(fā)送的命令送達(dá)控制的硬件,并監(jiān)控硬件對(duì)命令的反應(yīng)。向SYSM報(bào)告目前硬件的工作狀態(tài)。中型嵌入式系統(tǒng)具有可以控制硬件的接口。從CompactFlash或CFI Flash設(shè)備引導(dǎo),使用RAM磁盤(pán)或CRAMFS存儲(chǔ)數(shù)據(jù)。對(duì)時(shí)間有嚴(yán)格的要求,需要使用搶占式系統(tǒng)內(nèi)核。具有固定IP地址。系統(tǒng)管理模塊 SYSM整個(gè)系統(tǒng)的控制管理中心。在A鏈路上,SYSM模塊從DAQ模塊取回?cái)?shù)據(jù),存儲(chǔ)全部或部分?jǐn)?shù)據(jù)。對(duì)獲得的數(shù)據(jù)進(jìn)行分析。

6、根據(jù)分析的結(jié)果和過(guò)程控制的現(xiàn)行狀態(tài),對(duì)控制模塊下達(dá)控制命令。在B鏈路上,提供DHCP服務(wù),讓各個(gè)UI模塊啟動(dòng)時(shí)可以申請(qǐng)到IP地址;將適當(dāng)?shù)臄?shù)據(jù)送至UI模塊以便顯示,接收UI模塊的控制命令,命令分為兩類(lèi):一類(lèi)控制SYSM自己,比如發(fā)送或停止發(fā)送特定的數(shù)據(jù)給UI。另一類(lèi)控制數(shù)據(jù)采集或控制模塊。SYSM解析并轉(zhuǎn)發(fā)這類(lèi)命令給相應(yīng)的目標(biāo)。 對(duì)外部網(wǎng)絡(luò)提供HTTPS和SSH服務(wù)。HTTPS服務(wù)讓外部且經(jīng)過(guò)認(rèn)證的用戶通過(guò)網(wǎng)頁(yè)及表單,設(shè)定或監(jiān)控整個(gè)系統(tǒng)。SSH服務(wù)讓維護(hù)人員能夠從遠(yuǎn)程登陸系統(tǒng)進(jìn)行問(wèn)題排除以及升級(jí),可以同時(shí)降低設(shè)備制造商和客戶的維護(hù)費(fèi)用。系統(tǒng)管理模塊 SYSM大型嵌入式系統(tǒng)。具有三個(gè)網(wǎng)絡(luò)接口:一

7、個(gè)用在DAQ和控制模塊上,即控制鏈路A;一個(gè)用在用戶接口上,即控制鏈路B;一個(gè)用在外部網(wǎng)絡(luò)上。使用硬盤(pán)引導(dǎo),并且具有傳統(tǒng)工作站或服務(wù)器全部的特性,包括交換的功能。對(duì)時(shí)間有嚴(yán)格的要求,需要使用搶占式系統(tǒng)內(nèi)核。外部訪問(wèn)需要加密和認(rèn)證,可以考慮使用SSL/TLS協(xié)議。具有固定IP地址。用戶接口模塊 UI通過(guò)SYSM定時(shí)或非定時(shí)取回感興趣的數(shù)據(jù)。如果收到緊急事件會(huì)立刻顯示。發(fā)送用戶的控制命令給SYSM。小型嵌入式系統(tǒng)。通過(guò)flash設(shè)備引導(dǎo)或通過(guò)網(wǎng)絡(luò)引導(dǎo)。地址動(dòng)態(tài)通過(guò)DHCP協(xié)議獲得。需要經(jīng)過(guò)認(rèn)證UI才能注冊(cè)到SYSM中。嵌入式微處理器SDRAMROMI/OA/DD/A人機(jī)交互接口通用接口實(shí)時(shí)操作系統(tǒng)

8、(RTOS)圖形用戶接口BSP/HAL 板極支持包/硬件抽象層文件系統(tǒng)應(yīng)用程序嵌入式系統(tǒng)硬件層OS層驅(qū)動(dòng)層應(yīng)用層軟件硬件5.2 LPC2214綜述基于16/32位ARM7TDMI-S微控制器,LQPF144封裝。256K字節(jié)的FLASH和16K字節(jié)的SRAM,獨(dú)特的加速模塊可實(shí)現(xiàn)高達(dá)60MHz的時(shí)鐘頻率。固化在芯片內(nèi)的BootLoader程序可實(shí)現(xiàn)在系統(tǒng)編程(ISP)和在應(yīng)用編程(IAP),F(xiàn)lash編程可實(shí)現(xiàn)512字節(jié)/ms,整片擦除只需0.4s。Embedded ICE-RT可實(shí)現(xiàn)斷點(diǎn)和觀察點(diǎn)。當(dāng)使用片內(nèi)Real Monitor軟件對(duì)前臺(tái)任務(wù)進(jìn)行調(diào)試時(shí),中斷服務(wù)程序可繼續(xù)運(yùn)行。8路10位A

9、/D轉(zhuǎn)換器,轉(zhuǎn)換時(shí)間低至2.44微秒。一、芯片特性2個(gè)32位定時(shí)器(各帶4路捕獲通道和4路比較通道),6路PWM輸出,實(shí)時(shí)時(shí)鐘和看門(mén)狗定時(shí)器??膳渲脙?yōu)先級(jí)和向量地址的向量中斷控制器,最多可有32個(gè)中斷源。多個(gè)串行接口,包括2個(gè)UART、快速I(mǎi)2C接口和2個(gè)SPI接口。多達(dá)112個(gè)可承受5V電壓的通用I/O口,且有4個(gè)可邊沿觸發(fā)或電平觸發(fā)的外部中斷引腳。片內(nèi)晶體振蕩器頻率為130MHz,并內(nèi)嵌可編程鎖相環(huán)PLL。通過(guò)外部存儲(chǔ)器接口可外部擴(kuò)展4個(gè)存儲(chǔ)器組,每個(gè)存儲(chǔ)器組可訪問(wèn)16M字節(jié)空間,數(shù)據(jù)總線寬度可編程選擇為8位、16位或32位。具有2個(gè)低功耗模式:空閑模式和掉電模式??赏ㄟ^(guò)外部中斷將處理器從

10、掉電模式中喚醒。雙電源供電: -CPU操作電壓范圍:1.65V1.95V; -I/O操作電壓范圍:3.0V3.6V。二、結(jié)構(gòu)框圖VPB外設(shè) AHB外設(shè) 小端模式 ARM7局部總線AMBA高性能總線(AHB)VLSI外設(shè)總線(VPB,ARM AMBA總線的兼容集) LPC2214具有144個(gè)引腳,其中電源引腳占28個(gè)、1個(gè)外部復(fù)位引腳、2個(gè)晶振的輸入輸出引腳、112可多功能復(fù)用引腳和1個(gè)暫時(shí)不用的引腳。三、引腳說(shuō)明P0口:P0口是一個(gè)32位雙向I/O口,每位的方向可單獨(dú)控制,功能取決于管腳連接模塊的管腳功能選擇。P0.26和P0.31未用。P0.042OTxD0UART0發(fā)送輸出端OPWM1脈寬

11、調(diào)制器輸出1P0.149IRxD0UART0接收輸入端OPWM3脈寬調(diào)制器輸出3IEINT0外部中斷0輸入P2口:P2口是一個(gè)32位雙向I/O口,每位的方向可單獨(dú)控制,功能取決于管腳連接模塊的管腳功能選擇。 一般用作外部擴(kuò)展存儲(chǔ)器用的數(shù)據(jù)總線。P3口:P3口是一個(gè)32位雙向I/O口,每位的方向可單獨(dú)控制,功能取決于管腳連接模塊的管腳功能選擇。 一般用作外部擴(kuò)展存儲(chǔ)器用的地址總線及片選信號(hào)等。其他引腳:電源引腳、晶振引腳、復(fù)位引腳。P1口:P1口是一個(gè)32位雙向I/O口,每位的方向可單獨(dú)控制,功能取決于管腳連接模塊的管腳功能選擇。P1.2P1.15未用。 5.3 LPC2214存儲(chǔ)器尋址LPC2

12、214具有256K字節(jié)的FLASH、16K字節(jié)的SRAM、VPB外設(shè)和AHB外設(shè),并且可通過(guò)外部存儲(chǔ)器控制器擴(kuò)展4個(gè)16M字節(jié)空間的存儲(chǔ)器組,那么這些存儲(chǔ)器或者片內(nèi)外設(shè)的地址映射究竟是怎樣的呢? 1、存儲(chǔ)器映射16KB的片內(nèi)SRAM,可用作代碼和/或數(shù)據(jù)的存儲(chǔ),可讀可寫(xiě),支持8位、16位和32位訪問(wèn)。256KB的片內(nèi)Flash,可用于代碼和數(shù)據(jù)的存儲(chǔ),可采用以下幾種方法對(duì)其編程:通過(guò)內(nèi)置的JTAG口、通過(guò)在系統(tǒng)編程或通過(guò)在應(yīng)用編程??赏ㄟ^(guò)外部存儲(chǔ)器控制器對(duì)外部存儲(chǔ)器進(jìn)行擴(kuò)展,以存放用戶代碼和/或數(shù)據(jù),總線寬度可編程設(shè)定為8位、16位和32位。AHB外設(shè):向量中斷控制器和外部存儲(chǔ)器控制器VPB外

13、設(shè):系統(tǒng)控制模塊、A/D模塊、引腳連接模塊等。二、異常向量表完整的嵌入式系統(tǒng)必須具備異常處理能力。當(dāng)異常產(chǎn)生時(shí),微控制器在硬件驅(qū)動(dòng)機(jī)制下跳轉(zhuǎn)到預(yù)先設(shè)定的存儲(chǔ)器單元中,取出相應(yīng)的異常處理程序的入口地址,并根據(jù)該入口地址進(jìn)入異常處理程序。這個(gè)保存有異常處理程序入口地址的存儲(chǔ)器單元就是通常所說(shuō)的“異常入口”,單片機(jī)系統(tǒng)中也叫“中斷入口”。實(shí)際的嵌入式系統(tǒng)有多種類(lèi)型的異常,CPU設(shè)計(jì)人員為了簡(jiǎn)化芯片設(shè)計(jì),一般將所有的異常入口集中起來(lái)置于非易失性存儲(chǔ)器中,并在系統(tǒng)上電時(shí)映射到一個(gè)固定的連續(xù)地址空間上。位于這個(gè)地址空間上的異常入口集合就是“異常向量表”。異常入口地址異常類(lèi)型0 x00000000復(fù)位0 x

14、00000004未定義指令0 x00000008軟件中斷0 x0000000C預(yù)取指中止(從存儲(chǔ)器取指出錯(cuò))0 x00000010數(shù)據(jù)中止(數(shù)據(jù)訪問(wèn)存儲(chǔ)器出錯(cuò))0 x00000014保留0 x00000018IRQ0 x0000001CFIQLPC2214是一款基于ARM7的微控制器,其異常向量表位置為:0 x00000000 0 x0000001C。 EXPORT Vectors CODE32 AREA StartUp,CODE,READONLY ENTRYVectors LDR PC, ResetAddr LDR PC, UndefinedAddr LDR PC, SWI_Addr LDR

15、 PC, PrefetchAddr LDR PC, DataAbortAddr DCD 0 xb9205f80 LDR PC, PC, #-0 xff0 LDR PC, FIQ_AddrResetAddr DCD ResetUndefinedAddr DCD UndefinedSWI_Addr DCD SoftwareInterruptPrefetchAddr DCD PrefetchAbortDataAbortAddr DCD DataAbortnouse DCD 0IRQ_Addr DCD IRQ_HandlerFIQ_Addr DCD FIQ_HandlerEND異常向量表:三、Boot

16、 Loader 程序 Boot裝載程序完成芯片復(fù)位后的初始化操作,并提供實(shí)現(xiàn)Flash編程的方法,它存儲(chǔ)于目標(biāo)平臺(tái)的非易失性存儲(chǔ)器中。Boot裝載程序可啟動(dòng)對(duì)空片的編程、已編程器件的擦除和再編程(在系統(tǒng)編程ISP),以及在運(yùn)行的系統(tǒng)中由應(yīng)用程序?qū)lash進(jìn)行編程(在應(yīng)用編程IAP)。但從用戶角度來(lái)看,Boot裝載程序就是用來(lái)加載用戶程序或操作系統(tǒng)。LPC2214在芯片出廠前,已往片內(nèi)FLASH的頂端固化了Boot裝載程序和64字節(jié)的異常向量表,其大小為8KB,地址范圍為:0 x0003E0000 x0003FFFF。為方便討論,我們稱(chēng)這部分Flash塊為Boot Block。 LPC2214

17、 BootLoader實(shí)現(xiàn)的功能:四、存儲(chǔ)器重映射 代碼可能運(yùn)行的空間:Boot Block、片內(nèi)Flash、片內(nèi)RAM(可動(dòng)態(tài)的修改異常向量表)和片外存儲(chǔ)器。為了實(shí)現(xiàn)在不同的模式下都可以處理異常,需要對(duì)位于異常向量表和額外的32個(gè)字節(jié)進(jìn)行重新映射,將地址范圍0 x000000000 x0000003F重新映射到對(duì)應(yīng)的物理存儲(chǔ)器塊。整個(gè)Boot Block已由廠家固化到片內(nèi)Flash頂端的8K字節(jié),為了與將來(lái)的器件兼容,這個(gè)Boot Block需要被重新映射到片內(nèi)存儲(chǔ)器的頂端(系統(tǒng)復(fù)位后由處理的內(nèi)部硬件邏輯執(zhí)行完成)。已重映射區(qū)域和可重映射區(qū)域的片內(nèi)存儲(chǔ)器空間 34五、存儲(chǔ)器映射控制 存儲(chǔ)器映

18、射控制用于改變起始于地址0 x00000000的異常向量表的映射,以允許運(yùn)行在不同的存儲(chǔ)器塊的代碼對(duì)異常的控制。在LPC2214存儲(chǔ)器映射控制寄存器(MEMMAP)控制著存儲(chǔ)器的映射。存儲(chǔ)器映射控制寄存器(MEMMAP0 xE01FC040,R/W) MEMMAP選擇從片內(nèi)Flash、Boot Block、外部存儲(chǔ)器或片內(nèi)RAM中映射異常向量表,低2位有效,高6位保留,屬性為可讀可寫(xiě)。MEMMAP功能描述復(fù)位值1:0MAP1:000:Boot裝載程序模式。中斷向量從Boot Block重新映射; 01:用戶Flash模式。中斷向量不重新映射,位于片內(nèi)Flash中;10:用戶RAM模式。中斷向量

19、從片內(nèi)靜態(tài)RAM重新映射; 11:用戶外部存儲(chǔ)器模式。中斷向量從外部存儲(chǔ)器重新映射。07:2保留不可軟件寫(xiě)入0,讀出值未定義未定義在LPC2214中BOOT1:0引腳控制著系統(tǒng)的引導(dǎo)。程序一般都是存放在低速的非易失性存儲(chǔ)器當(dāng)中。對(duì)由LPC2214構(gòu)成的系統(tǒng),由于LPC2214具有外部存儲(chǔ)器接口,那么就有可能從片內(nèi)Flash中引導(dǎo)程序執(zhí)行,或者從片外的存儲(chǔ)器中引導(dǎo)執(zhí)行。當(dāng) 為低電平期間,通過(guò)合理的設(shè)置BOOT1:0引腳的電平就可以選擇正確的引導(dǎo)方式。BOOT1BOOT0MAP1:0引導(dǎo)方式0011由CS0控制的8位存儲(chǔ)器0111由CS0控制的16位存儲(chǔ)器1011由CS0控制的32位存儲(chǔ)器1101

溫馨提示

  • 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ù)網(wǎng)僅提供信息存儲(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)論