基于LPC2103ARM7的溫度測量系統(tǒng)_第1頁
基于LPC2103ARM7的溫度測量系統(tǒng)_第2頁
基于LPC2103ARM7的溫度測量系統(tǒng)_第3頁
基于LPC2103ARM7的溫度測量系統(tǒng)_第4頁
基于LPC2103ARM7的溫度測量系統(tǒng)_第5頁
已閱讀5頁,還剩42頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、本科畢業(yè)設計(論文)題 目 基于LPC2103 ARM7的溫度測量系統(tǒng) 電氣與自動化工程學院 電氣工程及其自動化專業(yè)學 號 學生姓名 指導教師 起訖日期 2021年3月-2021年6月 設計地點 41摘要隨著信息化、智能化、網(wǎng)絡化的發(fā)展,嵌入式系統(tǒng)技術廣泛應用于工業(yè)控制、信息家電、交通管理、農業(yè)、商業(yè)、服務業(yè)等各行業(yè),己成為現(xiàn)代電子產(chǎn)品設計的一大領域和方向。因此,研究嵌入式系統(tǒng)有著相當重要的理論和實際意義。嵌入式系統(tǒng)是以計算機技術為基礎,以應用為中心,軟件硬件可裁剪,適合于應用系統(tǒng)對功能、可靠性、成本、體積、功耗嚴格要求的專用計算機系統(tǒng)。本文基于ARM核心微控制器LPC2103的硬件環(huán)境,集成

2、搭建了一套具有實時操作系統(tǒng)的嵌入式平臺,對嵌入式系統(tǒng)的硬件和軟件及相關方面進行研究。通過分析具有一定實時性的、源代碼公開的嵌入式操作系統(tǒng)uC/OS-II,在初步了解其內核原理,如任務管理、時鐘管理、任務間通訊等基礎上,在基于LPC2103處理器的目標板上,對操作系統(tǒng)uC/OS-II進行配置,將此實時嵌入式操作系統(tǒng)成功地移植到目標板上,并用于實時溫度測量及報警系統(tǒng)中。該系統(tǒng)采用溫度傳感器PT100,并對系統(tǒng)的溫度進行測量,通過液晶顯示屏對溫度信息進行顯示。同時,通過按鍵可以設定報警溫度值,系統(tǒng)對溫度進行實時監(jiān)測,超過警示值,由LED燈進行報警?!娟P鍵詞】嵌入式系統(tǒng);LPC2103;uC/OS-I

3、I;溫度傳感器PT100;溫度測量與報警AbstractWith the development of information, intelligence and network, the technology of embedded system is widely applied to industrial control, information appliance, traffic control, agriculture, commerce, service industry, etc., and it has become a direction of design of mode

4、rn electrical products. Therefore, making research on embedded system has very important meaning both in theory and practice. The embedded system is a professional computer system which is based on computer technique and application-centered, with cutting software and hardware, applies to applicatio

5、n system, and meanwhile has strict requirement for function, reliability, cost diminution and power consumption. Based on the environment of the ARM core microcontroller LPC2103, this design builds an embedded platform of real-time operating system, and makes research on the hardware and software of

6、 embedded system and related aspects. This design analyzes the embedded system which is real-time, with open source code. With a preliminary understanding of core structure, such as task management, time management, task communication and so on, based on the target board of LPC2103 processor, we can

7、 allocate the operating system uC/OS-II and put the real-time embedded system into target board successfully, and meanwhile apply this system to real-time temperature mean sure and alarm system. This system adopts temperature sensor PT100, using PT100 to measure temperature of the system, and shows

8、the temperature by liquid crystal display. Moreover, the system can be set temperature alarm value for real-time monitoring. The LED light will alarm as it is over warning value.KEYWORDS:embedded system;LPC2103;uC/OS-II;temperature sensor PT100;temperature measure and alarm. 目錄摘要IAbstractII第一章 前言1&#

9、167;1.1課題背景和意義1§1.2國內同行研究概況1§1.3研究的主要內容2第二章 ARM處理器及嵌入式系統(tǒng)綜述4§2.1 ARM處理器4§2.1.1處理器的簡介4§2.1.2 ARM處理器的體系結構4§2.1.3 ARM編程模型5§2.2 嵌入式系統(tǒng)6§2.2.1嵌入式系統(tǒng)的定義6§2.2.2嵌入式系統(tǒng)的特征6§2.2.3嵌入式系統(tǒng)的應用6§2.2.4嵌入式系統(tǒng)的發(fā)展趨勢7§2.3 本章小結7第三章 基于LPC2103的軟硬件平臺8§3.1 LPC2103概述

10、8§3.1.1 LPC2103內核8§3.1.2LPC2103的系統(tǒng)控制模塊8§3.2 LPC2103最小系統(tǒng)9§3.2.1基于LPC2103的硬件平臺實物圖9§3.3 溫度傳感器PT10010§3.3.1 溫度傳感器的介紹及選擇10§3.3.2 PT100溫度傳感器工作原理10§3.4 液晶顯示屏S0-1286411§3.5 集成開發(fā)環(huán)境及仿真軟件11§3.5.1 集成開發(fā)環(huán)境IAR11§3.5.2 H-JTAG功能介紹17§3.6 本章小結21第四章 uC/OS-移植22

11、§4.1 uC/OS-概述22§4.1.1 任務管理22§4.1.2 時間管理23§4.2 uC/OS-在系統(tǒng)上的移植23§4.3 uC/OS-移植的測試23§4.4 本章小結25第五章 系統(tǒng)軟硬件的設計調試26§5.1 各功能模塊設計系統(tǒng)26§5.1.1 液晶屏12864的調試26§5.1.2 按鍵輸入功能嵌入30§5.1.3 溫度報警功能嵌入34§5.2 uC/OS-系統(tǒng)中應用程序的加載及其優(yōu)點35§5.3 本章小結35總結與展望36本文小結36前景展望36謝 辭37參考

12、文獻38第一章 前 言§1.1課題背景和意義隨著信息化、智能化、網(wǎng)絡化的發(fā)展,嵌入式系統(tǒng)技術廣泛應用于工業(yè)控制、信息家電、交通管理、農業(yè)、商業(yè)、服務業(yè)等各行業(yè),己成為現(xiàn)代電子產(chǎn)品設計的一大領域和方向。嵌入式系統(tǒng)是以計算機技術為基礎,以應用為中心,適合于應用系統(tǒng)對功能、可靠性、成本、體積、功耗嚴格要求的專用計算機系統(tǒng),因此可以說嵌入式系統(tǒng)開創(chuàng)了電子元器件的新紀元。因此,研究嵌入式系統(tǒng)有著相當重要的理論和實際意義。而溫度測量是工業(yè)、農業(yè)、國防和科研等部門最普遍的測量項目,它在工農業(yè)生產(chǎn),現(xiàn)代科學研究及高新技術開發(fā)過程中也是一個極其普遍而重要的測量參數(shù)。本次研究就是將這兩者有機的結合起來,

13、實現(xiàn)基于嵌入式系統(tǒng)的溫度測量。實現(xiàn)了這樣的研究將大大的提高溫度測量的穩(wěn)定性和有效性,更進一步的展現(xiàn)出進入嵌入式系統(tǒng)開發(fā)時代給社會的各個領域所帶來的高技術的支持,將讓我們更好的處于信息化時代。雖然我國目前的一些科技研發(fā)還遠不如國外,但是只要堅持著這一個研究方向一直走下去,我國的科技實力將會得到很大程度的提高?;贚PC2103ARM的溫度測量系統(tǒng)就是嵌入式系統(tǒng)在實際的生產(chǎn)生活中的一個簡單的實踐和運用,就是嵌入式系統(tǒng)和溫度測量的一個有效的結合。這樣的溫度測量系統(tǒng)穩(wěn)定性好,對溫度的采集、處理、監(jiān)控都有很高的要求。通過對這樣的一個溫度測量系統(tǒng)的研究不但可以增進對嵌入式系統(tǒng)的認識,而且將近一步了解嵌入式

14、系統(tǒng)發(fā)展的歷程及其今后的發(fā)展方向和溫度測量在現(xiàn)實生產(chǎn)生活中的普遍運用。這樣的一個研究最后要達到的目標就是對一些超過警示溫度的溫度進行預報警,這樣在工廠生產(chǎn)過程中將可以對一些因溫度而引起的事故進行有效的避免,大大提高生產(chǎn)的安全系數(shù),而且它可以進一步的彌補目前市場上的一些溫度測量系統(tǒng)的不足之處,讓溫度測量系統(tǒng)變得更加完善。§1.2國內同行研究概況溫度測量是工業(yè),農業(yè),國防和科研等部門最普遍的測量項目,它在工農業(yè)生產(chǎn),現(xiàn)代科學研究及高新技術開發(fā)過程中也是一個極其普遍而重要的測量參數(shù)。而嵌入式系統(tǒng)已經(jīng)滲透到我們生活中的每個角落,工業(yè)、服務業(yè)、消費電子,世界上第一個應用的嵌入式系統(tǒng)可以追溯到2

15、0世紀60年代中期的阿波羅導航計算機AGC(Apollo Guidance Computer)系統(tǒng)用來完成阿波羅飛船的導航控制。從單片機地出現(xiàn)到今天各種嵌入式微處理器、微控制器的廣泛應用,嵌入式系統(tǒng)開發(fā)少說也有了30多年的歷史??v觀嵌入式系統(tǒng)的發(fā)展歷程,大致經(jīng)歷了4個階段:(1)、無操作系統(tǒng);(2)、簡單操作系統(tǒng);(3)、實時操作系統(tǒng);(4)、面向Internet階段。把嵌入式系統(tǒng)的開發(fā)與溫度測量結合起來的設計聯(lián)系起來將是基于這兩種研究上的成熟運用。黃堅,朱節(jié)云在基于嵌入式技術的溫度測量系統(tǒng)1一文中采用可編程單總線數(shù)字式溫度傳感器DS18B20, 以嵌入式系統(tǒng)作為現(xiàn)場處理單元, 并利用中間件技

16、術實現(xiàn)了與上位機的實時數(shù)據(jù)交換。實驗表明, 該溫度測量系統(tǒng)具有較高的可靠性和精度。增加溫度控制功能并擴充測控點數(shù),構造一個集中監(jiān)控的分布式溫度測控系統(tǒng)為下一步的研究目標。劉鵬程在基于ARM的溫度測量系統(tǒng)2一文中設計了一款基于ARM的溫度測量系統(tǒng),其具有體積小、處理能力強、接口豐富、成本低、測溫精度高等特點。整個系統(tǒng)由三個模塊組成,包括溫度測量模塊、微處理器模塊和溫度控制模塊基于ARM芯片的溫度測量系統(tǒng),在功能、價格以及應用前景這些方面,都比目前廣泛使用的基于普通單片機技術的系統(tǒng)有很大優(yōu)勢。該系統(tǒng)的升級空間很大,可通過更換傳感器及相應軟件以實現(xiàn)不同物理量的測量。系統(tǒng)完成后進行了測量與處理模塊的試

17、驗,試驗證明該系統(tǒng)的溫度測量性能滿足設計要求。系統(tǒng)結構圖如圖1.1。SDJTAGLCDKEYARMLPC2114時鐘UART電源鉑電阻傳感器A/D光耦隔離D/A溫度控制系統(tǒng)陀螺儀圖1.1 系統(tǒng)整體結構圖在很多應用領域中,基于溫度探測的監(jiān)控和報警系統(tǒng)已經(jīng)不僅僅是一個獨立的系統(tǒng),更多的時候是某個更大的監(jiān)控系統(tǒng)的一個組成部分。有時和上位機相連,有時又和PC機連接,甚至可能連接在互聯(lián)網(wǎng)上以實現(xiàn)遠程監(jiān)測、控制和訪問。數(shù)字化、智能化的傳感器集采樣、A/D轉換、電平兼容、總線地址、閥值報警、數(shù)據(jù)雙向通信、接口協(xié)議眾多功能于一身。這為其廣泛應用于各種不同的環(huán)境提供了便捷的條件。§1.3研究的主要內容

18、本課題研究的是基于ARM7的一個溫度測量系統(tǒng)。在翻閱了大量資料后,決定采用PT100溫度傳感器和ARM7內核的LPC2103處理器進行開發(fā)。其中涉及一線總線技術的應用,嵌入式系統(tǒng)開發(fā)應用等。裝置通過數(shù)字溫度傳感器采集溫度,信息送到處理器上并計算出實際的溫度數(shù)值,并且由LCD進行顯示,并可以設置警示溫度值,超過警示溫度,由LED燈進行提示報警,整個裝置在uC/OS-II系統(tǒng)下運行。研究的工作:1 熟悉掌握LPC2103和PT100的功能。2 接收采集得到的溫度信息,編寫相應的處理程序并且在LCD上顯示采集到的溫度,設置上下限警示溫度3 IAR集成開發(fā)環(huán)境的建立。這部分主要利用IAR編寫程序后下載

19、到ARM芯片使操作系統(tǒng)在ARM上工作。4 設計報警電路,對采集到上下限外的溫度信息實施報警5 熟悉uC/OS-II系統(tǒng)6 將以上程序移植到uC/OS-II上,整個程序能在uC/OS-II操作系統(tǒng)上運行第二章 ARM處理器及嵌入式系統(tǒng)綜述嵌入式系統(tǒng)是指用于執(zhí)行獨立功能的專用計算機系統(tǒng),以應用中心,以微電子技術、控制技術、計算機技術和通信技術為基礎,強調硬件和軟件的協(xié)同性及整合性,軟件和硬件可裁剪,以滿足系統(tǒng)對功能、成本、體積和功耗等的要求。§2.1 ARM處理器§2.1.1處理器的簡介ARM是Advanced RISC Machines的縮寫。ARM公司,是近年來在嵌入式系統(tǒng)

20、中非常有影響的微處理器設計商,它主要是將芯片設計技術的授權出售給世界上眾多著名的半導體、軟件和OEM廠商,并且為他們提供ARM相關技術及服務3。ARM CPU是RISC架構的CPU,其設計主要適合于要求體積小、功耗低和功能較強處理能力等要求的嵌入式系統(tǒng)。它的主要特點有:(1)采用固定長的指令格式;(2)使用單周期指令,便于流水線操作執(zhí)行;(3)大量使用寄存器,數(shù)據(jù)處理指令只對寄存器操作,只有加載/存儲指令可以訪問儲器,以提高指令的執(zhí)行效率;(4)所有的指令都可以跟前面的執(zhí)行效果決定是否被執(zhí)行,從而提高指令的執(zhí)行效率;(5)可用加載/存儲指令批量傳輸數(shù)據(jù),以提高數(shù)據(jù)的傳輸效率;(6)可在一條數(shù)據(jù)

21、處理指令中同時完成邏輯處理和移位處理;(7)在循環(huán)處理中使用地址的增減來提高運行效率。ARM內核中有四個功能模塊可供生產(chǎn)廠商根據(jù)不同的用戶的不同要求來配置生產(chǎn)。這四個模塊分別用T、D、M和I來表示。T:表示Thumb,該內核可從16位指令集擴充到32位ARM指令集;D:表示Debug,該內核中放置了用于調試的結構,可以使CPU進入調試模式,從而可方便地通過JTAG進行斷點設置、單步調試;M:表示Multiplier,該內核內部帶有8位乘法器;I:表示Embedded ICE Logic,該內核可用于實現(xiàn)斷點觀測及變量觀測。§2.1.2 ARM處理器的體系結構ARM一般采用RISC結構

22、,版本也在不斷升級。嵌入式微處理器可分為CISC和RISC兩類。RISC和CISC是目前設計制造微處理器的兩種典型技術,雖然它們都是試圖在體系結構、操作運行、編譯時間和運行時間等諸多因素中做出某種平衡,以求達到高效的目的,但采用的方法不同,因此,在很多方面差異很大。兩者比較而言,傳統(tǒng)的CISC結構有其固有的缺點,即隨著計算機技術的發(fā)展而不斷引入新的復雜的指令集,為支持這些新增的指令,計算機的體系結構會越來越復雜。在CISC指令集的各種指令中,其使用頻率相差懸殊,大約有20%的指令會被反復使用,占整個程序代碼的80%,而余下的80%的指令卻不經(jīng)常使用,在程序設計中只占20%。而RISC并非只是簡

23、單地去減少指令,而是把著眼點放在了如何使計算機的結構更加簡單合理地提高運算速度上。除此之外,ARM體系結構還采用了一些特別的技術,在保證高性能的前提下盡量縮小芯片的面積,并降低功耗。·所有的指令都可根據(jù)前面的執(zhí)行結果決定是否被執(zhí)行,從而提高指令的執(zhí)行效率。·可用加載/存儲指令批量傳輸數(shù)據(jù),以提高數(shù)據(jù)的傳輸效率。·可在一調數(shù)據(jù)處理指令中同時完成邏輯處理和移位處理。·在循環(huán)處理中使用地址的自動增減來提高運行效率。當然,盡管RISC架構有上述的優(yōu)點,但絕不能認為RISC架構就可以取代CISC架構,事實上,RISC和CISC各有優(yōu)勢,而且界限并不是那么明顯,現(xiàn)代

24、的CPU往往采用CISC的外圍,內部加入了RISC的特征,如超長指令集CPU就是融合了RISC和CISC的優(yōu)勢。§2.1.3 ARM編程模型ARM7支持7種操作模式,可以由軟件配置,分別如下:User mode(usr):正常程序執(zhí)行模式;FIQ mode(fiq):支持快速數(shù)據(jù)傳送和通道處理;IRQ mode(irq):用于通用中斷處理;Supervisor mode(svc):操作系統(tǒng)保護模式;System mode(sys):運行特權模式操作系統(tǒng)任務;Abort mode(abt):數(shù)據(jù)或指令預取失效后進入的狀態(tài);Undefined mode(und):執(zhí)行未定義的指令時進入的

25、模式。對這些操作模式的支持,使得ARM可以支持虛擬存儲器機制,支持多種特權模式,從而可以運行多種主流的嵌入式操作系統(tǒng)。ARM微處理器中共定義了37個編程可見寄存器,每個寄存器的長度均為32位。根據(jù)不同的用途,可將其劃分為以下幾類:31個通用寄存器。在任意一種處理器模式下,只有15個通用寄存器可以使用,編號分別為r0,.,r14。其中,r13一般作為堆棧指針寄存器(SP:Stack Pointer)4。該寄存器由ARM編譯器自動使用。r14一般作為鏈接寄存器(LR:Link Register)。當系統(tǒng)中發(fā)生子程序調用時,用r14來記錄返回地址。如果返回地址己經(jīng)保存在堆棧中,則該寄存器也可以用于其

26、它用途。6個狀態(tài)寄存器。這些寄存器也是32位的,當只使用了其中的12位。在所有處理器模式下都可以訪問當前程序狀態(tài)寄存器CPSR(Current Program Status Register)。CPSR包含條件嗎標志、中斷禁止位、當前處理器模式以及其他狀態(tài)和控制信息。每種異常模式都有一個程序狀態(tài)保存寄存器SPSR(Saved Program Status Register)。當異常出現(xiàn)時,SPSR用于保留CPSR的狀態(tài)。§2.2 嵌入式系統(tǒng)§2.2.1嵌入式系統(tǒng)的定義嵌入式系統(tǒng)是指用于執(zhí)行獨立功能的專用計算機系統(tǒng)。它由微處理器、定時器、微控制器、存儲器、傳感器等一系列微電子

27、芯片及器件,和嵌入在存儲器中的微型操作系統(tǒng)及控制應用軟件組成,共同實現(xiàn)諸如實時控制、監(jiān)視、管理、移動計算、數(shù)據(jù)處理等各種自動化處理任務。嵌入式系統(tǒng)以應用中心,以微電子技術、控制技術、計算機技術和通信技術為基礎,強調硬件和軟件的協(xié)同性及整合性,軟件和硬件可裁剪,以滿足系統(tǒng)對功能、成本、體積和功耗等的要求。最簡單的嵌入式系統(tǒng)僅有執(zhí)行單一功能的控制能力,在唯一的ROM中僅有實現(xiàn)單一功能的控制程序,無微型操作系統(tǒng)。復雜的嵌入式系統(tǒng),例如個人數(shù)字處理(PDA)、手持電腦(HPC)等,幾乎具有與PC一樣的功能。實質上與PC的區(qū)別僅僅是將微型操作系統(tǒng)與應用軟件嵌入在ROM或FLASH存儲器中,而不是存儲與磁

28、盤等載體中。很多復雜的嵌入式系統(tǒng)又是由若干個小型嵌入式系統(tǒng)組成的4。§2.2.2嵌入式系統(tǒng)的特征嵌入式系統(tǒng)作為計算機應用系統(tǒng)的一個分支跟我們平時見到的PC機系統(tǒng)相比,有其自身的特點:(1)嵌入式系統(tǒng)要求其CPU具有功耗低、體積小、集成度高、處理能力強、價格低的特點,把很多板卡完成的功能集中到CPU芯片內部,從而使整個系統(tǒng)能夠做到小型化。而其高性能和低廉的價格是處理器具有市場競爭能力的保證。(2)嵌入式系統(tǒng)和具體的應用有機的結合,其升級換代也是和具體產(chǎn)品同步進行的,嵌入式產(chǎn)品一旦進入市場,就有較長的生命周期。(3)嵌入式系統(tǒng)為了提高系統(tǒng)的可靠性和執(zhí)行速度,一般都是將嵌入式的操作系統(tǒng)和應

29、用軟件固化在可擦寫的ROM或者FLASH中。(4)由于嵌入式系統(tǒng)對實時性要求較高,因此嵌入式的操作系統(tǒng)必須具有較高的實時性。同時對程序的質量和可靠性提出了較高要求。(5)由于儲存容量和體積的限制,嵌入式操作系統(tǒng)必須要具有體積小、功能強、可定制并能夠管理系統(tǒng)硬件的特點。(6)嵌入式系統(tǒng)的開發(fā)需要專門的開發(fā)工具和開發(fā)環(huán)境,一般采用宿主機(PC機)或工作站上編輯、編譯,最后固化到目標機上的方式。§2.2.3嵌入式系統(tǒng)的應用隨著嵌入式系統(tǒng)的高速發(fā)展,嵌入式軟件將繼續(xù)增加新的功能,并產(chǎn)生更加靈巧智能的產(chǎn)品,具體應用如下:(1)嵌入式系統(tǒng)在無線通信領域的應用有 、小靈通、智能 等,85%以上的無

30、線設備( 等)都采用了ARM技術,在向3G升級的過程中,ARM的地位也非常穩(wěn)固。(2)嵌入式系統(tǒng)在消費類電子中的應用迅速增長,如數(shù)字音頻播放器(mp3)、數(shù)字機頂盒和游戲機等。(3)信息家電將成為嵌入式系統(tǒng)最大的應用領域。具有用戶界面,能遠程控制,智能管理的電器是未來的發(fā)展趨勢,如冰箱、空調等得網(wǎng)絡化、智能化等。(4)嵌入式技術在交通管理、環(huán)境監(jiān)測中的應用·交通管理在車輛導航、流量控制、信息監(jiān)測與汽車服務方面,目前GPS設備已經(jīng)從尖端產(chǎn)品進入了普通百姓的家庭。·水文資料實時監(jiān)測,防洪體系及水土質量監(jiān)測、堤壩安全、地震監(jiān)測網(wǎng),實時氣象信息網(wǎng),水源和空氣污染監(jiān)測。·加

31、油站·停車場管理(5)嵌入式系統(tǒng)在其他領域也有著廣泛的應用,如工業(yè)控制、海量存儲設備(微型閃速存儲卡)、成像設備(包含ARM技術的數(shù)碼相機和數(shù)碼打印機)以及安全產(chǎn)品(32為SIM智能卡)等。§2.2.4嵌入式系統(tǒng)的發(fā)展趨勢以信息家電為代表的互聯(lián)網(wǎng)時代嵌入式產(chǎn)品,不僅為嵌入式市場展現(xiàn)了美好前景,注入了新的生命,同時也對嵌入式系統(tǒng)技術,特別是軟件技術提出了新的挑戰(zhàn)。這主要包括:支持靈活的網(wǎng)絡鏈接、輕便的移動應用和多媒體的信息處理。此外,當然還對需要對付更加激烈的市場競爭。(1)嵌入式的應用軟件越來越豐富、成熟。(2)聯(lián)網(wǎng)成為必然趨勢。(3)支持小型電子設備實現(xiàn)小尺寸、微功耗和低

32、成本。(4)提供精巧的多媒體人機界面。§2.3 本章小結本章主要對ARM微處理器和嵌入式系統(tǒng)做了一些方面的了解。對ARM的體系結構和一些編程模型進行了必要的學習。明確了嵌入式系統(tǒng)在現(xiàn)在社會的重要性,發(fā)現(xiàn)它對現(xiàn)在科學技術的發(fā)展有著其不可替代的作用,并且以后的發(fā)展趨勢特別的明朗,越來越注重社會的需要。第三章 基于LPC2103的軟硬件平臺LPC2103 是基于一個支持實時仿真的32 位ARM7 TDMI-S CPU 的微控制器,并帶有32kB 嵌入的高速Flash 存儲器。128 位寬度的存儲器接口和獨特的加速結構使32 位代碼能夠在最大時鐘速率下運行。針對LPC2103具有著與其他微處

33、理器不同的特征及其內部的一些結構以及軟件的仿真,將在本章做簡要的闡述。§3.1 LPC2103概述§3.1.1 LPC2103內核LPC2103是基于ARM7TDMI-S內核的嵌入式微處理器,它的主要特征如下:n ARM7TDMI-S處理器,頻率可達60MHz;n 128k字節(jié)片內Flash程序存儲器,具有ISP和IAP功能,F(xiàn)lash的編程時間:1ms ,可編程512字節(jié),扇區(qū)擦除或整片擦除時間只需400ms;n l6k字節(jié)靜態(tài)RAM;n 向量中斷控制器;n 標準ARM測試/調試接口,兼容現(xiàn)有的工具;n Real Monitor模塊支持實時調試,仿真跟蹤模塊,支持實時跟蹤

34、;n 極小封裝:TQFP48 (77mm);n 單UART;n I2C串行接口和SPI串行接口;n 兩個定時器,分別具有4 路捕獲/比較通道;n 多達6路輸出的PWM單元;n 實時時鐘和看門狗定時器;n 通用I/O口;n 高效的電源管理;由于LPC2103具有非常小的尺寸和極低的功耗,它們非常適合于那些小型化為主的應用,也可以和其它芯片一起封裝。它的主要應用領域有:Internet網(wǎng)關、串行通信協(xié)議轉換器、訪問控制、工業(yè)控制、MP3音頻產(chǎn)品、醫(yī)療產(chǎn)品等。§3.1.2LPC2103的系統(tǒng)控制模塊LPC2103的系統(tǒng)控制模塊包括幾個系統(tǒng)特征和控制寄存器,這些寄存器具有眾多與特定外設無關的

35、功能,它們的設置決定了系統(tǒng)的工作模式。它們包括:n 晶體振蕩器:n 外部中斷輸入:n 存儲器映射控制器:n PLL:n 功率控制:n 復位:n VPB分頻器:n 喚醒定時器:每種類型的功能都有其自身的功能,不需要的位則定義為保留。為了滿足將來擴展的需要,無關的功能不共用相同的寄存器地址。§3.2 LPC2103最小系統(tǒng)基于LPC2103的最小系統(tǒng)如圖3.1所示,主要由LPC2103核心板、電源模塊、復位和I2C模塊、時鐘模塊、按鍵和顯示模塊、UART串口模塊、JTAG調試模塊組成。LPC2103核心板電源模塊復位和I2C模塊時鐘模塊按鍵和顯示模塊UART串口模塊JTAG調試模塊圖3.

36、1:LPC2103最小系統(tǒng)原理圖§3.2.1基于LPC2103的硬件平臺實物圖如圖3.2圖3.2 基于LPC2103的硬件平臺實物圖§3.3 溫度傳感器PT100§3.3.1 溫度傳感器的介紹及選擇溫度傳感器從使用的角度大致可分為接觸式和非接觸式兩大類,前者是讓溫度傳感器直接與待測物體接觸,來敏感被測物體溫度的變化,而后者是使溫度傳感器與待測物體離開一定的距離,檢測從待測物體放射出的紅外線,從而達到測溫的目的。由于本課題的任務要求測量的范圍為-40一600,測量的精度為士0.2,綜合價格以及后續(xù)的電路,決定采用線性度相對較好的PT100作為本課題的溫度傳感器,具體

37、的型號為鉑電阻溫度傳感器,其測溫的范圍從-200一+650。溫度傳感器PT100是一種穩(wěn)定性和線性都比較好的鉑絲熱電阻傳感器,可以工作在-200至650的范圍.本電路選擇其工作在-19至500范圍。整個電路分為兩部分,一是傳感器前置放大電路,一是單片機A/D轉換和顯示,控制,軟件非線性校正等部分。§3.3.2 PT100溫度傳感器工作原理傳感器的接入非常簡單,從系統(tǒng)的5V供電端僅僅通過一支3K92的電阻就連接到PT100了.這種接法通常會引起嚴重的非線性問題,但是.由于有了單片機的軟件校正作為后盾,因此就簡化了傳感器的接入方式.   按照PT100的參數(shù)

38、,其在0到500的區(qū)間內,電阻值為100至280.9,我們按照其串聯(lián)分壓的揭發(fā),使用公式:Vcc/(PT100+3K92)* PT100=輸出電壓(mV),可以計算出其在整百時的輸出電壓,見下面的表格:溫度 PT100 阻值 傳感兩端電壓 mV0100.00124.381100.39124.850119.40147.79100138.51170.64150157.33192.93200175.86214.68250194.10235.90300212.05256.59350229.72276.79400247.09296.48450264.18315.69500280.98334.42

39、7;3.4 液晶顯示屏S0-12864SO-12864是一個漢字圖形點陣液晶顯示模塊,可顯示漢字及圖形,內置8192個中文漢字(16*16點陣,16*8=128,16*4=64,一行只能寫8個漢字,4行)、128個字符(8*16點陣)及64*256點陣顯示PAM(GDRAM)。S0-12864實物圖如圖3.5:圖3.5 液晶顯示屏S0-12864§3.5 集成開發(fā)環(huán)境及仿真軟件嵌入式系統(tǒng)本身不具備自己的開發(fā)能力,必須有一套開發(fā)工具和環(huán)境才能進行開發(fā)。本系統(tǒng)的工具主要包括:集成開發(fā)環(huán)境IAR和仿真軟件H-JTAG。§3.5.1 集成開發(fā)環(huán)境IARIAR Embedded Wo

40、rkbench for ARM是IAR Systems公司為ARM微處理器開發(fā)的一個集成開發(fā)環(huán)境。比較其他的ARM開發(fā)環(huán)境,IAR EWARM具有入門容易、使用方便和代碼緊湊等特點。IAR EWARM集成了開發(fā)嵌入式系統(tǒng)所需的文件編輯、項目管理、編譯、鏈接和調試工具。特別是IAR C-SPY調試器支持實時操作系統(tǒng)的響應調試,這給移植C/OS-II的調試帶來了很大的方便。另外,本設計在連接目標板與開發(fā)環(huán)境之間采用H-JTAG調試代理軟件。下面介紹下如何運用IAR建立一個工程:1:雙擊IAR圖標,打開開發(fā)環(huán)境;2:點擊第一個圖標,新建一個工程;(圖3.6)圖3.6 新建工程3:設計保存目錄和工程名

41、為;(圖3.7)圖3.7保存目錄4:新建一個文件;(圖3.8)圖3.8新建文件5:保存為main.c文件;(圖3.9)圖3.9 保存main.c文件6:右鍵點擊option,將C文件添加到工程中;(圖3.10)圖3.10 添加C文件至工程7 :進行編譯,保存EWW文件;(圖3.11)圖3.11 編譯,保存為EWW類型文件8 :進入option選項Generaltarget中設置ARM類型;(圖3.12)圖3.12 設置ARM類型9 :進入option選項Generaldebug中設置軟件仿真;(圖3.13)圖3.13 設置軟件仿真10:軟件仿真后可以查看相應的寄存器,按F10為單步運行 ;(如

42、圖3.14)圖3.14 單步運行顯示§3.5.2 H-JTAG功能介紹H-JTAG如圖3.15圖3.15 H-JTAG功能圖H-JTAG主要有以下五大功能:n 仿真測試功能利用H-JTAG的外測試功能,可以在指定I/0口模擬數(shù)字信號,測試板級系統(tǒng)的數(shù)字邏輯及邏輯驗證。n 在線測試功能利用H-JTAG的抽樣和預加載功能,可以在不影響系統(tǒng)工作的情況下,觀察系統(tǒng)各部分工作的情況。n 在線編程功能如系統(tǒng)中有EEPROM器件,可以利用H-JTAG的外測試功能,將需裝載的數(shù)據(jù)通過I/O加載到系統(tǒng)中EEPROM器件的引腳上,在無須任何附加電路情況下完成在線編程功能。n 冗余測試功能在本身具有測試功

43、能的系統(tǒng)中,可以通過H-JTAG的測試完成冗余測試,加強測試的可靠性。n 遠程測試診斷利用H-JTAG測試信號技術和Internet技術結合,就可擴展H-JTAG的測試手段和能力。下面介紹利用H-JTAG調試代理制RAM中仿真1:進入option選項Generaltarget中設置硬件仿真; 2:進入option選項 linkoutput中設置,選擇C-spy ;(圖3.16)圖3.16 選擇C-spy調試器3:進入option選項 linkextra output中設置 ;(圖3.17)4:進入option選項 linkconfig中設置為$PROJ_DIR$sysLPC2103_RAM.X

44、CL;圖3.17 設置link中的選項5:進入option選項 Debugger中設置,選擇調試代理RDI ;(圖3.18)圖3.18 選擇調試代理RDI6:在option選項 debuggerRDI中選擇H-JTAG ;(圖3.19) 圖3.19 選擇H-JTAG7:進入option選項 Debugger中設置,選擇設置類型 ;(圖3.20)圖3.20 對Debugger進行設置從其他的程序中將LPC2103_RAM.xcl文件拷貝過來再make一下就可以。 點擊 make一下,完成代碼編寫,按F7進行編譯。 §3.6 本章小結本章主要研究基于LPC2103的軟硬件平臺的設計。其中

45、主要包括對LPC2103的內核、LPC2103的最小系統(tǒng)、溫度傳感器PT100、液晶顯示屏S0-12864、集成開發(fā)環(huán)境IAR及仿真軟件H-JTAG的介紹和它們相應的運用,為下面做整個系統(tǒng)的設計打下基礎。第四章 uC/OS-移植操作系統(tǒng)是一種運行在嵌入式硬件平臺上,對整個系統(tǒng)機器所操作的部件、裝置等資源進行統(tǒng)一協(xié)調、指揮和控制的系統(tǒng)軟件。具有微型化、可裁剪性、實時性、高可靠性和易移植性等優(yōu)點。操作系統(tǒng)按對外部時間的響應能力來分類,有實時操作系統(tǒng)和分時操作系統(tǒng)兩類。實時操作系統(tǒng)是指系統(tǒng)能及時響應外部時間的請求,并能及時控制所有實施設備與實施人物協(xié)調運行,且能在一個規(guī)定的時間內完成對事件的處理。u

46、C/OS-就是一種嵌入式多任務實時操作系統(tǒng)。自問世以來,已有成千上萬的開發(fā)者把它成功地應用于各種系統(tǒng)中,安全性和穩(wěn)定性己經(jīng)得到認證,現(xiàn)已經(jīng)通過美國認證。§4.1 uC/OS-概述uC/OS-是源碼公開的嵌入式操作系統(tǒng)。它是一種搶先式實時內核,是基于優(yōu)先級的,即總是讓就緒狀態(tài)中優(yōu)先級高的任務先執(zhí)行。它可支持個任務,包含了實時內核、任務管理、任務間通信信號量、郵箱、消息隊列等和內存管理等功能它的代碼是用C語言和匯編語言編寫的,結構簡單、可移植性強。一該操作系統(tǒng)可以在8位、16位、32位微處理器、微控制器和數(shù)字信號處理器上運行。§4.1.1 任務管理一個任務通常是一個無限的循環(huán),

47、由程序和數(shù)據(jù)組成。在uC/OS-中,任務有5種狀態(tài):休眠態(tài)、就緒態(tài)、運行態(tài)、中斷態(tài)、等待態(tài),在任一時刻,任務處于這五種狀態(tài)之一。實時系統(tǒng)uC/OS-對任務的管理和調度主要是通過任務控制塊和任務就緒表來實現(xiàn)。任務控制塊是一個數(shù)據(jù)結構,它與任務一一對應。任務控制塊包括任務的指針,任務的堆棧信息,任務的優(yōu)先級,任務的狀態(tài),任務在任務就緒表中的位置等數(shù)據(jù)信息。在操作系統(tǒng)初始化OSINIT時,系統(tǒng)申請了一塊RAM空間來存儲空閑任務控制塊。 一旦任務建立, 系統(tǒng)就會分配一個任務控制塊(task control blocks)OS_TCB給該任務。當任務的CPU使用權被剝奪時,uC/OS-用它來保存該任務的

48、狀態(tài)。當任務重新得到CPU使用權時,任務控制塊能確保任務從被中斷的那一點繼續(xù)執(zhí)行下去。OS_TCB全部駐留在RAM中,在任務建立的時候,OS_TCB被初始化。應用程序中最多任務數(shù)(OS_MAX-TASKS)是在文件OS_CFG.H中定義的,所有的任務控制塊OS_TCBS都是放在任務控制塊列表數(shù)組OSTCBTb1中的。目前,系統(tǒng)uC/OS-占用了兩個任務,一個用于空閑任務,另一個用于任務統(tǒng)計。在uC/OS-初始化時,所有任務控制塊OS_TCBS被鏈接成空任務控制塊的單向鏈表。當任務一旦建立,空任務塊指針OSTCB Free List指向的任務控制塊便賦給了該任務,然后OSTCB Free Lis

49、t的值調整為指向鏈表中下一個空的任務控制表。一旦任務被刪除,它的任務控制塊就回到空任務控制塊鏈表中。uC/OS-對任務的管理實質上通過一系列函數(shù)改變任務控制塊的鏈表和數(shù)組以及改變任務控制塊的信息,例如OSTaskCreate()創(chuàng)造任務。uC/OS-任務的調度是基于優(yōu)先級調度, 通過就緒表來實現(xiàn),每個任務被賦予一個優(yōu)先級,優(yōu)先級高的任務先運行,反之亦然。§4.1.2 時間管理uC/OS-(其他內核也一樣)要求用戶提供定時中斷來實現(xiàn)延時與超時控制等功能,這個定時中斷叫時鐘節(jié)拍,它應該每秒發(fā)生10至100次。時鐘節(jié)拍的頻率實際上是由用戶應用程序決定的,時鐘頻率越高,系統(tǒng)的負荷就越重。時間

50、管理提供如下功能:n 產(chǎn)生時鐘節(jié)拍n 任務延時n 結束延時n 系統(tǒng)時間§4.2 uC/OS-在系統(tǒng)上的移植所謂移植,就是使一個實時內核能在其它的微處理器或微控制器上運行。C/OS-II移植到AT91M40800上需要修改幾個與處理器相關的文件:os_cpu.h、os_cpu.c和os_cpu_a.asm。在os_cpu.h文件中,重新定義與IAR編譯器相關的數(shù)據(jù)類型。定義保護臨界段代碼的開/關中斷模式為模式3。AT91M40800的堆棧生長方式設置為由高地址向低地址遞減方式。os_cpu.c文件包含與移植有關的10個簡單的C語言函數(shù)。本文移植了其中的2個函數(shù):OSTaskStakIn

51、it()和OSInitHookBegin()。前者用于堆棧的初始化設置,而后者則用于初始化變量OSIntCtxSwFlag,該變量用以表示在完成所有嵌套的中斷服務程序后是否需要進行任務切換。在os_cpu_a.asm文件中,編寫了5個匯編語言函數(shù): OSStartHighRdy ( )、OSCtxSw ( )、OSIntCtxSw()、OS_CPU_SR_Save()和OS_CPU_SR_Restore()。它們分別實現(xiàn)開/關中斷、上下文切換、時鐘中斷服務等功能。§4.3 uC/OS-移植的測試C/OS-II移植完成后,需要進行測試,以驗證移植的C/OS-II是否能正常工作。本設計將

52、測試程序放在app.c和app.h文件中。app.c文件是一個標準的C/OS-II測試文件,它包含main()函數(shù)和AppStartTask()函數(shù)。app.h文件中是與應用相關的常量、宏定義以及函數(shù)原型聲明等。main()函數(shù)首先建立空閑任務和統(tǒng)計任務,接著通過調用C/OS-II提供的OSTaskCreateExt()函數(shù)建立燈閃爍任務AppStartTask(),最后調用OSStart()開始運行多任務。main()函數(shù)程序流程如圖4.1所示。開始初始化uC/OS-建立燈閃爍任務AppStartTask內核進行多任務調度結束圖4.1 main()函數(shù)程序流程圖AppStartTask()任

53、務首先調用BSP()函數(shù)來初始化目標硬件;C/OS-II統(tǒng)計任務OSStatInit()執(zhí)行的必要條件是使能時鐘中斷;最終進入任務體,該任務通過AT91M40800的置位/清零P17口點亮或熄滅連接在該I/O口上的小燈,以直觀地表明C/OS-II是否進行了多任務調度。AppStartTask任務程序流程如圖4.2所示。開始初始化CPU 片內外圍設備BSP_Init()使能統(tǒng)計任務OSStatInit()任務體,循環(huán)點亮小燈圖4.2 AppStartTask()任務程序流程圖在IAR EWARM集成開發(fā)環(huán)境成功添加上述文件后,工作區(qū)界面如圖4.3所示圖4.3在IAR EWARM集成開發(fā)環(huán)境下進行

54、C/OS-II移植時的工作區(qū)界面§4.4 本章小結本章針對uC/OS-系統(tǒng)進行了簡要的概述。對于系統(tǒng)的時間管理和任務管理,做了詳盡的介紹;由于uC/OS-系統(tǒng)的移植是運用這個系統(tǒng)的關鍵,所以針對該系統(tǒng)在ARM7上的移植與測試都進行了簡要的了解。第五章 系統(tǒng)軟硬件的設計調試對所有的分模塊進行有效的整合,并設計溫度報警程序,同時將在其中加入按鈕輸入,流水燈報警以及液晶顯示屏12864的顯示。最后將以上程序移植到uC/OS-II上,整個程序能在uC/OS-II操作系統(tǒng)上運行。§5.1 各功能模塊設計系統(tǒng)整個溫度測量裝置主要由以下幾部分構成:LPC2103、SO-12864液晶顯示屏、PT100、三路按鍵輸入、三路LED燈報警。系統(tǒng)總體結構如圖5.1:液晶顯示屏1212S0-12864溫度傳感器PT100LPC2103流水燈、蜂鳴器報警按鈕輸入圖5.1

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論