freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

基于arm9的ucos-ii移植-預覽頁

2025-07-12 22:05 上一頁面

下一頁面
 

【正文】 ght等.《ARM嵌入式系統(tǒng)開發(fā)》.北京:北京航空航天大學出版社,2005.《嵌入式實時操作系統(tǒng)μC/OSII原理及應用》.,20054. JeanJ Labrosse.《嵌入式實時操作系統(tǒng)μC/OSII》.,2003 Matloff等.《軟件調(diào)試的藝術(shù)》.北京:人民郵電出版社,2010完成形式:1. 設計與制作可供實際檢測的實物樣板;2. 每組的兩位同學完成一個作品,作品的內(nèi)容必須和ARM嵌入式相關(guān);3. 完成實訓論文。項目開始時間:2012年12月09日項目結(jié)束時間:2012年12月29日任務下達:2012年12月09日摘 要以應用為中心、以計算機為基礎(chǔ)的嵌入式技術(shù),是當今發(fā)展最快、應用最廣、最有發(fā)展前景的主要技術(shù)之一。本文主要研究了μC/OSII在S3c2440芯片上的移植。 realtime。但是,人們所談論的往往是一些著名的商業(yè)內(nèi)核,諸如VxWorks、PSOS等。論文第一章主要介紹lpc2132硬件結(jié)構(gòu)和代碼的編寫;第二章討論ucosii代碼結(jié)構(gòu);第三章分析ucosii在arm板上的移植。在這些開發(fā)板中都包含了電源電路、系統(tǒng)復位電路、系統(tǒng)時鐘電路、JTAG接口、串行接口、按鍵輸入接口、IIC接口、USB接口、IIS音頻數(shù)據(jù)接口電路、以太網(wǎng)接口、ADC輸入接口、攝像頭接口、液晶接口等電路。本設計使用TQ2440開發(fā)板作為硬件平臺,其中它的板載存儲器資源有:一片2MB的Nor Flash(EN29LV160AB)一片256MB的Nand Flash (K9F2G08U0A) 及用2片SDRAM (MT48LC16M16A2)組成32位總線寬度構(gòu)成64MB32bit的SDRAM,供系統(tǒng)使用。程序開發(fā)人員可以改寫源代碼,使之符合自己的要求,裁減掉不需要的部分,使操作系統(tǒng)變得小巧、靈活、并且能滿足用戶特定操作系統(tǒng)的需要。有兩種類型的實時系統(tǒng):軟實時系統(tǒng)和硬實時系統(tǒng)。實時系統(tǒng)的應用涵蓋廣泛的領(lǐng)域,而多數(shù)實時系統(tǒng)又是嵌入式的。因為中斷服務提供的信息一直要等到后臺程序走到該處理這個信息這一步時才能得到處理,這種系統(tǒng)在處理信息的及時性上,比實際可以做到的要差。進而,如果程序修改了,循環(huán)的時序也會受到影響。OSStart()函數(shù)只能調(diào)用一次,一旦調(diào)用,系統(tǒng)將運行進入就緒態(tài)并且優(yōu)先級最高的任務。uc/osii總是運行進入就緒狀態(tài)的最高優(yōu)先級的任務。對OSSched(),它內(nèi)部調(diào)用的是OS_TASK_SW()完成實際的調(diào)度(人為模仿一次中斷);OSIntExt()內(nèi)部調(diào)用的是OSCtxSw()實現(xiàn)調(diào)度??紤]到任務數(shù)目64,可以用6bit來表示,分為高3位和低3位。這樣形成了的二級查詢,先選組,再選組內(nèi)偏移。 Relationshipbetweentasks,ISRsandasemaphoreUcos為內(nèi)存中存儲塊的動態(tài)分配提供了支持。如下圖所示: 內(nèi)存模塊 3 μC/OSII在ARM9上的移植隨著國內(nèi)工業(yè)化、數(shù)字化的步伐加快,嵌入式開發(fā)在IT行業(yè)中的重要性越來顯著。采用此類系統(tǒng)進行產(chǎn)品開發(fā)需要仔細的分析、設計,否則也很難真正滿足工業(yè)產(chǎn)品生產(chǎn)的要求。從這個角度考慮,僅僅拿來一個操作系統(tǒng)內(nèi)核并開發(fā)應用產(chǎn)品,很難萬全滿足這種要求。(1)不依賴于編譯的數(shù)據(jù)類型μC/OSⅡ不使用C語言中的short,int和long等數(shù)據(jù)類型的定義,因為他們與處理器類型有關(guān),隱含著不可移植性,代之以移植性強的整數(shù)數(shù)據(jù)類型,這樣,既直觀又可移植。opt=opt。*stk=0。*stk=0。*stk=0。*stk=(INT32U)pdata。另一個需要編寫的函數(shù)是OSTimeTickHook,該函數(shù)被時鐘節(jié)拍中斷服務函數(shù)OSTickISR中的OSTimeTick函數(shù)調(diào)用,用來清除時鐘節(jié)拍中斷發(fā)生設備的請求。包含了與移植有關(guān)的C函數(shù),包括堆棧的初始化和一些鉤子函數(shù)的實現(xiàn),但是最重要的是OSTaskStkInit()函數(shù),該函數(shù)是在用戶建立任務時系統(tǒng)內(nèi)部自己調(diào)用的,用來對用戶任務的堆棧初始化。這是因為這兩個函數(shù)的實現(xiàn)是和移植者的移植思路以及相關(guān)硬件定時器、中斷寄存器的設置有關(guān),在實際的移植工作中,這兩個地方也是比較容易出錯的地方,這部分需要對處理器的寄存器進行操作,所以必須用匯編語言編寫,包括4個子函數(shù):OSStartHighRdy()、OSCtxSw()、OSIntCtxSw()、OSTickISR()。OSTickISR()該函數(shù)是系統(tǒng)時鐘節(jié)拍中斷服務函數(shù),首先要保存處理器寄存器,接著調(diào)用OSIntEnter()函數(shù),以保證中斷嵌套層數(shù)不超過255層,如果滿足了該條件,則把堆棧指針保存到當前任務的任務控制塊TCB中,然后給產(chǎn)生中斷的設備清中斷,重新允許中斷,接下來調(diào)用OSTimeTick()來維持μC/OSⅡ內(nèi)部的定時以及調(diào)用OSIntExit()函數(shù)決定是否因為這個中斷服務程序的執(zhí)行,使得更高優(yōu)先級的任務就緒。復位入口代碼的主要功能就是設置好PLL然后搬遷代碼。例如,搬遷后,應該初始化的全局變量是否正確初始化。這種初始化過程不影響主體代碼的僅僅在開始階段執(zhí)行一次,完全不會影響主體程序的執(zhí)行效率,確能夠保障代碼在任何情況下的穩(wěn)定運行。/異常矢量,接到異常跳轉(zhuǎn)*/。此下之后均為再次跳轉(zhuǎn)例程bHandleFIQbHandleFIQbHandleFIQ。并通過看門狗完成復位bHandleFIQLTORG。/*SPSR是被中斷任務或ISR的當前處理器狀態(tài)值,*/。/***************************************/。并保存到R3。如果不是第一層,進入3。跳到第3步。R1=1,保存R1值到R0地址()。,第一層中斷,一定是中斷運行在SVC模式下的任務。其中LR無法拷貝,需要在本模式獲取。準備要拷貝字節(jié)數(shù),與硬件相關(guān)IRQSTACKSVCCOPYldmdbr3!,{r0}。/***************************************/。/***************************************/ldrr0,=i__pCurTcbldrr1,[r0]strsp,[r1]。/***************************************/。是嵌套中斷切換到sys模式處理ISR。(SP),。壓棧真正LRstmfdsp!,{lr}ldrr1,=56。遞減計數(shù)bneNESTSTACKSVCCOPY。同時已經(jīng)是SYS模式下。(void)函數(shù)。如果不需要嵌套中斷,只需要在該函數(shù)中,保持中斷屏蔽即可。即能保持系統(tǒng)的嵌套中斷能力,又能防止同一設備的嵌套中斷。6.中斷結(jié)束處理,IrqFinish,SYS模式的原有堆棧指針作為參數(shù)。到被中斷任務,不再返回。同時在這一步處理中還要恢復SYS模式的堆棧指針,道理相同。/***************************************/blIrqFinish。第一個位置應該存放的是被中斷模式的CPSR也就是irq的SPSR。/*復位初始化完成后CSPR中的I/F是打開的*/。********************************。使能并連接strr1,[r0]ldrr0,=SFR_PLLFEEDldrr1,=0xAAldrr2,=0x55strr1,[r0]strr2,[r0]ldrr0,=SFR_PLLSTATldrr0,=SFR_VPBDIV??截悳蕚鋖drr1,=|Image$$RO$$Limit|??截恟wldrr0,[r1],4strr0,[r2],4subsr3,r3,4。遞減計數(shù)bneCLEARZI_LOOPCLEARZI_OK。*因此在操作系統(tǒng)中已開始就要屏蔽中斷*。IRQModeldrsp,=IRQStackmsrcpsr_cf,ARM7_SVC_MOD|ARM7_NOINTR。DCD0x87654321LTORG。),這是一個永無止境的回路,所以裝置可以一直進行下去,直到關(guān)閉裝置.  intmain(void){OSInit()。/*Startmultitasking*/} 4 測試程序 圖在主程序中創(chuàng)建三個任務OSTaskCreate(Task0,(void*)0,amp。 OSTaskCreate(Task2,(void*)0,amp。文中還針對設計要求介紹了如何選擇開發(fā)的ARM9硬件平臺,并介紹了開發(fā)過程中如何移植μC/OSII和開發(fā)相應的任務程序,及程序的調(diào)試方法。本設計方案采用嵌入式系統(tǒng)實現(xiàn),并且已能較好地提供高性能人機交互界面,顯示樣式較好、并且在體積、功耗比傳統(tǒng)的傳統(tǒng)嵌入式系統(tǒng)要小得多,因此有一定的市場推廣價值。在桂林電子科技大學的學習生涯是我在這十幾年的學習生涯中最忙碌與最充實的時光。在這美好的時光即將結(jié)束之際首先,并且是最重要的我要感謝桂林電子科技大學給了我這個學習生活環(huán)境平臺,讓我能夠在知識的海洋里暢
點擊復制文檔內(nèi)容
公司管理相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1