嵌入式實(shí)習(xí)報(bào)告_第1頁(yè)
嵌入式實(shí)習(xí)報(bào)告_第2頁(yè)
嵌入式實(shí)習(xí)報(bào)告_第3頁(yè)
嵌入式實(shí)習(xí)報(bào)告_第4頁(yè)
嵌入式實(shí)習(xí)報(bào)告_第5頁(yè)
已閱讀5頁(yè),還剩3頁(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)介

..XX:XX:班級(jí):學(xué)號(hào):信息科學(xué)與工程學(xué)院2014-01-15引言1、嵌入式的概述:隨著信息化技術(shù)的開展和數(shù)字化產(chǎn)品的普及,以計(jì)算機(jī)技術(shù)、芯片技術(shù)和軟件技術(shù)為核心的嵌入式系統(tǒng)再度成為當(dāng)前研究和應(yīng)用的熱點(diǎn),通信、計(jì)算機(jī)、消費(fèi)電子技術(shù)〔3C〕合一的趨勢(shì)正在逐步形成,無(wú)所不在的網(wǎng)絡(luò)和無(wú)所不在的計(jì)算〔everythingconnecting,everywhereputing〕正在將人類帶入一個(gè)嶄新的信息社會(huì)。2、嵌入式的歷史與現(xiàn)狀:雖然嵌入式系統(tǒng)是近幾年才開場(chǎng)真正風(fēng)行起來(lái)的,但事實(shí)上嵌入式這個(gè)概念卻很早就已經(jīng)存在了,從上個(gè)世紀(jì)70年代單片機(jī)的出現(xiàn)到今天各種嵌入式微處理器、微控制器的廣泛應(yīng)用,嵌入式系統(tǒng)少說(shuō)也有了近30年的歷史??v觀嵌入式系統(tǒng)的開展歷程,大致經(jīng)歷了以下四個(gè)階段:2.1、無(wú)操作系統(tǒng)階段嵌入式系統(tǒng)最初的應(yīng)用是基于單片機(jī)的,大多以可編程控制器的形式出現(xiàn),具有監(jiān)測(cè)、伺服、設(shè)備指示等功能,通常應(yīng)用于各類工業(yè)控制和飛機(jī)、導(dǎo)彈等武器裝備中,一般沒有操作系統(tǒng)的支持,只能通過匯編語(yǔ)言對(duì)系統(tǒng)進(jìn)展直接控制,運(yùn)行完畢后再去除存。這些裝置雖然已經(jīng)初步具備了嵌入式的應(yīng)用特點(diǎn),但僅僅只是使用8位的CPU芯片來(lái)執(zhí)行一些單線程的程序,因此嚴(yán)格地說(shuō)還談不上"系統(tǒng)"的概念。2.2、簡(jiǎn)單操作系統(tǒng)階段20世紀(jì)80年代,隨著微電子工藝水平的提高,IC制造商開場(chǎng)把嵌入式應(yīng)用中所需要的微處理器、I/O接口、串行接口以及RAM、ROM等部件統(tǒng)統(tǒng)集成到一片VLSI中,制造出面向I/O設(shè)計(jì)的微控制器,并一舉成為嵌入式系統(tǒng)領(lǐng)域中異軍突起的新秀。與此同時(shí),嵌入式系統(tǒng)的程序員也開場(chǎng)基于一些簡(jiǎn)單的"操作系統(tǒng)"開發(fā)嵌入式應(yīng)用軟件,大大縮短了開發(fā)周期、提高了開發(fā)效率。2.3、實(shí)時(shí)操作系統(tǒng)階段20世紀(jì)90年代,在分布控制、柔性制造、數(shù)字化通信和信息家電等巨大需求的牽引下,嵌入式系統(tǒng)進(jìn)一步飛速開展,而面向?qū)崟r(shí)信號(hào)處理算法的DSP產(chǎn)品那么向著高速度、高精度、低功耗的方向開展。隨著硬件實(shí)時(shí)性要求的提高,嵌入式系統(tǒng)的軟件規(guī)模也不斷擴(kuò)大,逐漸形成了實(shí)時(shí)多任務(wù)操作系統(tǒng)〔RTOS〕,并開場(chǎng)成為嵌入式系統(tǒng)的主流。2.4、面向Internet階段21世紀(jì)無(wú)疑將是一個(gè)網(wǎng)絡(luò)的時(shí)代,將嵌入式系統(tǒng)應(yīng)用到各種網(wǎng)絡(luò)環(huán)境中去的呼聲自然也越來(lái)越高。目前大多數(shù)嵌入式系統(tǒng)還孤立于Internet之外,隨著Internet的進(jìn)一步開展,以及Internet技術(shù)與信息家電、工業(yè)控制技術(shù)等的結(jié)合日益嚴(yán)密,嵌入式設(shè)備與Internet的結(jié)合才是嵌入式技術(shù)的真正未來(lái)。3、學(xué)習(xí)目的:以培養(yǎng)培養(yǎng)實(shí)際的嵌入式系統(tǒng)軟件設(shè)計(jì)能力和創(chuàng)新為主要目的,通過實(shí)習(xí),根本掌握嵌入式系統(tǒng)應(yīng)用系統(tǒng)的設(shè)計(jì)方法、調(diào)試技術(shù)及創(chuàng)新能力等技能。課題設(shè)計(jì)嵌入式系統(tǒng)嵌入式系統(tǒng)的概述根據(jù)IEEE的定義:嵌入式系統(tǒng)是"用于控制、監(jiān)視或者輔助操作機(jī)器和設(shè)備的裝置。〞通俗定義:嵌入式系統(tǒng)是以應(yīng)用為中心,以計(jì)算機(jī)技術(shù)為根底,并且軟硬件可裁剪,適用于應(yīng)用系統(tǒng)對(duì)功能、可靠性、本錢、體積、功耗有嚴(yán)格要求的專用計(jì)算機(jī)系統(tǒng)。嵌入式操作系統(tǒng)嵌入式操作系統(tǒng)〔EmbeddedOperatingSystem,簡(jiǎn)稱:EOS〕是指用于嵌入式系統(tǒng)的操作系統(tǒng)。嵌入式操作系統(tǒng)是一種用途廣泛的系統(tǒng)軟件,通常包括與硬件相關(guān)的底層驅(qū)動(dòng)軟件、系統(tǒng)核、設(shè)備驅(qū)動(dòng)接口、通信協(xié)議、圖形界面、標(biāo)準(zhǔn)化瀏覽器等。嵌入式操作系統(tǒng)負(fù)責(zé)嵌入式系統(tǒng)的全部軟、硬件資源的分配、任務(wù)調(diào)度,控制、協(xié)調(diào)并發(fā)活動(dòng)。它必須表達(dá)其所在系統(tǒng)的特征,能夠通過裝卸某些模塊來(lái)到達(dá)系統(tǒng)所要求的功能。目前在嵌入式領(lǐng)域廣泛使用的操作系統(tǒng)有:嵌入式Linux、WindowsCE、μC/OS-II、VxWorks等,以及應(yīng)用在智能手機(jī)和平板電腦的Android、iOS等。STC15F2K60S2硬件平臺(tái)STC15系列最小系統(tǒng)板,以宏景STC15F2K60S2單片機(jī)為核心,STC15F2K60S2功能簡(jiǎn)介如下,具體可參考相關(guān)數(shù)據(jù)手冊(cè)[2]。1)、STC15為1T單片機(jī)即晶振速度既是主頻速度2)、工作電壓STC15F2K60S25V單片機(jī)5.5v-3.8v3)、60Kflash存儲(chǔ)空間4)、2048字節(jié)即2KSRAM5)、1KEEPROM存儲(chǔ)空間6)、共8通道10位高速ADC速度可達(dá)30萬(wàn)次/秒3路PWM還可當(dāng)3路D/A使用7)、共3通道捕獲/比擬單元〔CCP/PWM/PCA〕8)、部高可靠復(fù)位8級(jí)可選擇復(fù)位門檻電壓可省去外部復(fù)位電路9)、支持部高精度R/C時(shí)鐘,可選擇〔5.5296MHz、11.0592MHz、22.1184MHz、33.1776MHz〕10)、兩組高速異步串行通信端口〔可同時(shí)使用〕即雙串口可在5組管腳之間進(jìn)展切換分時(shí)復(fù)用可當(dāng)5組串口使用!11)、一組高速異步串行SPI總線在讀SD卡NRF24L01flash芯片即擴(kuò)展IO等均可使用12)、低功耗設(shè)計(jì):低速模式,空閑模式,掉電模式/停機(jī)模式13)、共6個(gè)定時(shí)器/計(jì)數(shù)器3個(gè)16位可重裝載定時(shí)器/計(jì)數(shù)器〔T0/T1/T2其中T0/T1兼容普通8051的定時(shí)器/計(jì)數(shù)器〕,并均可獨(dú)立實(shí)現(xiàn)對(duì)外可編程時(shí)鐘輸出〔3通道〕,3路CPP/PWM/PCA還可再實(shí)現(xiàn)3個(gè)定時(shí)器。14)、可編程時(shí)鐘輸出功能〔對(duì)部系統(tǒng)時(shí)鐘或?qū)ν獠抗苣_的時(shí)鐘輸入進(jìn)展時(shí)鐘分頻輸出〕15)、硬件看門狗〔WDT〕16)、先進(jìn)的指令集構(gòu)造兼容普通8051指令集有硬件乘法/除非指令17)、42個(gè)通用I/O口復(fù)位后為:準(zhǔn)雙向口/弱上拉〔普通8051傳統(tǒng)I/O口〕可設(shè)置四種模式。μC/OS-II操作系統(tǒng)μC/OS-Ⅱ是一個(gè)源代碼開放、可剪裁、構(gòu)造小巧、搶先式的實(shí)時(shí)操作系統(tǒng),主要用于中小型嵌入式系統(tǒng)中,執(zhí)行效率高、占用空間小、可移植性強(qiáng),具有良好的實(shí)時(shí)性能和可擴(kuò)展性,最多支持64個(gè)任務(wù),可運(yùn)行在大局部嵌入式微處理器上。μC/OS操作系統(tǒng)的特點(diǎn)μC/OS是一個(gè)完成的,可移植、可固化、可裁減的搶占式實(shí)時(shí)多任務(wù)操作系統(tǒng)核。主要用ANSI的C語(yǔ)言編寫,少局部代碼是匯編語(yǔ)言。μC/OS主要有以下特點(diǎn):1)、可移植性可以移植到多個(gè)CPU上,包括三菱單片機(jī)。2)、可固化可以固化到嵌入式系統(tǒng)中3〕、可裁減可以定制μC/OS,使用少量的系統(tǒng)效勞4)、可剝奪性μC/OS是完全可剝奪的實(shí)時(shí)核,μC/OS總是運(yùn)行優(yōu)先級(jí)最高的就緒任務(wù)。5〕、多任務(wù)運(yùn)行μC/OS可以管理最多64個(gè)任務(wù)。不支持時(shí)間片輪轉(zhuǎn)調(diào)度法,所以要求每個(gè)任務(wù)的優(yōu)先級(jí)不一樣。6)、可確定性μC/OS的函數(shù)調(diào)用和系統(tǒng)效勞的執(zhí)行時(shí)間可以確定。7〕、任務(wù)棧每個(gè)任務(wù)都有自己的單獨(dú)的棧,而且每個(gè)任務(wù)??臻g的大小可以不一樣。8)、系統(tǒng)效勞μC/OS有很多系統(tǒng)效勞,如信號(hào)量、時(shí)間標(biāo)志、消息、消息隊(duì)列、時(shí)間管理等等。基于STC15F2K60S2單片機(jī)的μC/OSII的移植μC/OS-II可以大致分成核心、任務(wù)處理、時(shí)間處理、任務(wù)同步與通信,CPU的移植等5個(gè)局部。1)核心局部(OSCore.c)是操作系統(tǒng)的處理核心,包括操作系統(tǒng)初始化、操作系統(tǒng)運(yùn)行、中斷進(jìn)出的前導(dǎo)、時(shí)鐘節(jié)拍、任務(wù)調(diào)度、事件處理等多局部。能夠維持系統(tǒng)根本工作的局部都在這里。2)任務(wù)處理局部(OSTask.c)任務(wù)處理局部中的容都是與任務(wù)的操作密切相關(guān)的。包括任務(wù)的建立、刪除、掛起、恢復(fù)等等。因?yàn)棣藽/OS-II是以任務(wù)為根本單位調(diào)度的,所以這局部容也相當(dāng)重要。3)時(shí)鐘局部(OSTime.c)μC/OS-II中的最小時(shí)鐘單位是timetick〔時(shí)鐘節(jié)拍〕。任務(wù)延時(shí)等操作是在這里完成的。4)任務(wù)同步和通信局部為事件處理局部,包括信號(hào)量、、隊(duì)列、事件標(biāo)志等局部;主要用于任務(wù)間的互相聯(lián)系和對(duì)臨界資源的訪問。5)與CPU的接口局部是指μC/OS-II針對(duì)所使用的CPU的移植局部。由于μC/OS-II是一個(gè)通用性的操作系統(tǒng),所以對(duì)于關(guān)鍵問題上的實(shí)現(xiàn),還是需要根據(jù)具體CPU的具體容和要求作相應(yīng)的移植。這局部容由于牽涉到SP等系統(tǒng)指針,所以通常用匯編語(yǔ)言編寫。主要包括中斷級(jí)任務(wù)切換的底層實(shí)現(xiàn)、任務(wù)級(jí)任務(wù)切換的底層實(shí)現(xiàn)、時(shí)鐘節(jié)拍的產(chǎn)生和處理、中斷的相關(guān)處理局部等容。μC/OS-II應(yīng)用軟件設(shè)計(jì)此次應(yīng)用軟件設(shè)計(jì)我們?cè)O(shè)計(jì)了三個(gè)應(yīng)用,分別是:1、閃爍運(yùn)行指示燈2、1602顯示3、串口通訊收發(fā)流程圖閃爍運(yùn)行指示燈開場(chǎng)開場(chǎng)輸出"輸出"1〞,熄滅延時(shí)延時(shí)輸出"輸出"0〞,點(diǎn)亮延時(shí)延時(shí)1602顯示LCD初始化延時(shí)開場(chǎng)LCD初始化延時(shí)開場(chǎng)顯示第一行內(nèi)容設(shè)置第一行顯示位置顯示第一行內(nèi)容設(shè)置第一行顯示位置設(shè)置第二行顯示位置顯示第二行內(nèi)容設(shè)置第二行顯示位置顯示第二行內(nèi)容③串口通訊收發(fā)串口:接收線程從串口獲取數(shù)據(jù)接收線程:將數(shù)據(jù)打包放入緩存并通知處理線程串口:接收線程從串口獲取數(shù)據(jù)接收線程:將數(shù)據(jù)打包放入緩存并通知處理線程緩存緩存處理線程收到通知后,從Wait處理線程收到通知后,從Wait〔〕中醒來(lái),然后讀取緩存中數(shù)據(jù)數(shù)據(jù)處理線程數(shù)據(jù)處理線程代碼附錄&main.c代碼:#include"includes.h"http://運(yùn)行燈sbitLED1=P3^2;sbitLED2=P5^5;//定義任務(wù)堆棧OS_STKTask1Stk[MaxStkSize+1]; //注意:我在ASM文件中設(shè)置"STACK空間為40H即64OS_STKTask2Stk[MaxStkSize+1];OS_STKTask3Stk[MaxStkSize+1];//變量//OS_EVENT*FirstSem;INT8Uerr;voidInitTime0(void)reentrant{TMOD&=0xF0; TMOD|=0x01;//定時(shí)器0:模式1(16位定時(shí)器),僅受TR0控制;定時(shí)器1:波特率發(fā)生器//TH0=0xDC;//定義Tick=100次/秒(即0.01秒/次),TH,TL值與CPU的頻率有關(guān)(11.0592M)//TL0=0x00; //OS_CPU_C.C中定時(shí)器中斷響應(yīng)也要設(shè)置,OS_CFG.H中OS_TICKS_PER_SEC也有關(guān)系TR0=1; //必須啟動(dòng)}//喂狗硬件看門狗voidFeed_WDT(void)reentrant{ WDT_CONTR=0x3f;//EN_WDT=1,CLR_WDT=1,IDLE_WDT=0,PS2=0,PS1=0,PS0=0 H_DOG=~H_DOG;}voidTask1(void*ppdata)reentrant{ ppdata=ppdata; ET0=1;//根任務(wù)開時(shí)鐘節(jié)拍中斷重要?。。。。。。。。。。。。。。。。。。。。。。?!for(;;){LED1=~LED1;OSTimeDly(OS_TICKS_PER_SEC);//延時(shí)1s//OSSemPost(FirstSem); }}voidTask2(void*ppdata)reentrant{ ppdata=ppdata; while(1){ Process_Uart();LED2=~LED2;OSTimeDly(OS_TICKS_PER_SEC/20); Feed_WDT();}}voidTask3(void*ppdata)reentrant{ ppdata=ppdata; for(;;) {// OSTimeDlyHMSM(0,0,10,0); LCD1602_write_string(LCD1602_LINE1,0,"ZHOUJIE&");LCD1602_write_string(LCD1602_LINE2,0,"TANGQILUO"); OSTimeDly(OS_TICKS_PER_SEC);}}voidmain(void){initial_lcd1602(); OSInit(); InitTime0(); InitSerial(); Feed_WDT();// FirstSem=OSSemCreate(0);//定義一個(gè)信號(hào)量OSTaskCreate(Task1,(void*)0,&Task1Stk[0],0);//優(yōu)先級(jí)OSTaskCreate(Task2,(void*)0,&Task2Stk[0],1); OSTaskCreate(Task3,(void*)0,&Task3Stk[0],4); OSStart();}串口通信關(guān)鍵代碼:voidProcess_Uart(void) reentrant{ INT8UCMD=0xff; //Feed_WDT(); if(gRec_Flag1) { OSTimeDly(OS_TICKS_PER_SEC/10); //100ms Send_Str_Uart1(RxBuf,20); Clear_Buf(RxNum); gRec_Flag1=0; RxNum=0; }}結(jié)論實(shí)習(xí)中的經(jīng)歷教師上課講的實(shí)驗(yàn)時(shí)必須注意的幾點(diǎn)非常重要,例如電路板和手掌的靜電,啟動(dòng)電源開關(guān)對(duì)端口的

溫馨提示

  • 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ù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 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)論