国产精品久久久久影院,成人午夜福利视频,国产精品久久久久高潮,国产精品 欧美 亚洲 制服,国产精品白浆无码流出

一、新建工程

1.新建一個(gè)ARM Executable Image

2.創(chuàng)建uCOS_II文件夾,創(chuàng)建兩個(gè)子文件夾,分別為ARM、SOURCE

ARM存放和平臺(tái)相關(guān)的文件("OS_CPU.H" "Os_cpu_a.s" "Os_cpu_c.c" )

SOURCE下存入和平臺(tái)無(wú)關(guān)的文件("ucos_ii.h" "os_cfg.h" "os_core.c" "os_flag.c" "os_mbox.c" "os_mem.c" "os_mutex.c" "os_q.c" "os_sem.c" "os_task.c" "os_time.c" "os_tmr.c" )

3.創(chuàng)建一個(gè)S3C2440文件夾,創(chuàng)建兩個(gè)子文件夾,分別為INC、SRC

INC存放S3C2440相關(guān)頭文件("2440addr.h" "2440lib.h" "2440slib.h" "config.h" "Def1.h" "lcd.h" "mmu.h" "Option.h" "Target.h" "Timer.h" )

SRC存放S3C2440相關(guān)源文件("Timer.c" "2440init.s" "2440lib.c" "2440slib.s" "Font_Libs.c" "iphone.c" "lcd.c" "mmu.c" "nand.c" "Target.c" )

4.創(chuàng)建一個(gè)app文件夾(app_cfg.h、main.c、Printf.c、Printf.h)


二、工程設(shè)置Edit->DebugRel Settings下

1.Target->Target Settings,Post-linker:ARM fromELF

2.Target->Access Paths選中Always Search User Paths(ucos_ii部分文件采用#include <>包涵,不修改這里找不到文件)

3.Language Settings下ARM Assembler、ARM C Compliler、ARM C++ Complier處理器設(shè)置成ARM920T

4.Language Settings下ARM C Compliler下Errors下去掉Implicit pointer c,ARM C Compliler下Warnings下去掉Unused declaration(-O1 -g+ -cpu ARM920T -Wx -Ec)

5.ARM Linker下,Output下RO Base設(shè)置成0x30000000,Options下Image entry point設(shè)置成0x30000000,Layout下Place at beginning of image下的Object/Symbol設(shè)置成2440init.o,Section設(shè)置成Init,Listings下選勾Image map、List file設(shè)置list.txt,勾上Sizes、Totals、Unused、Veneers

6.ARM fromELF下Output file name下填寫輸出的二進(jìn)制


三、移植文件的修改


對(duì)OS_CPU.H的修改:


view plaincopy to clipboard

/*   

*********************************************************************************************************  

*                                              ARM  

*  

* Method #1:  NOT IMPLEMENTED  

*             Disable/Enable interrupts using simple instructions.  After critical section, interrupts  

*             will be enabled even if they were disabled before entering the critical section.  

*               

* Method #2:  NOT IMPLEMENTED  

*             Disable/Enable interrupts by preserving the state of interrupts.  In other words, if   

*             interrupts were disabled before entering the critical section, they will be disabled when  

*             leaving the critical section.  

*             NOT IMPLEMENTED  

*  

* Method #3:  Disable/Enable interrupts by preserving the state of interrupts.  Generally speaking you  

*             would store the state of the interrupt disable flag in the local variable 'cpu_sr' and then  

*             disable interrupts.  'cpu_sr' is allocated in all of uC/OS-II's functions that need to   

*             disable interrupts.  You would restore the interrupt disable state by copying back 'cpu_sr'  

*             into the CPU's status register.  This is the prefered method to disable interrupts.  

*********************************************************************************************************  

*/  

  

#define  OS_CRITICAL_METHOD    3  

  

#if      OS_CRITICAL_METHOD == 3  

#define  OS_ENTER_CRITICAL()  (cpu_sr = OSCPUSaveSR())  /* Disable interrupts                        */  

#define  OS_EXIT_CRITICAL()   (OSCPURestoreSR(cpu_sr))  /* Restore  interrupts                       */  

#endif  

  

/*  

*********************************************************************************************************  

*                                         ARM Miscellaneous  

*********************************************************************************************************  

*/  

  

#define  OS_STK_GROWTH        1                       /* Stack grows from HIGH to LOW memory on ARM    */  

  

#define  OS_TASK_SW()         OSCtxSw()  


對(duì)Os_cpu_c.c的修改:


view plaincopy to clipboard

/*  

*********************************************************************************************************  

*                                               uC/OS-II  

*                                        The Real-Time Kernel  

*  

*                           (c) Copyright 1992-2003, Micrium, Inc., Weston, FL  

*                                          All Rights Reserved  

*  

*                                               ARM9 Port  

*  

* File : OS_CPU_C.C  

*********************************************************************************************************  

*/  

  

//#define  OS_CPU_GLOBALS  

#include "ucos_ii.h"  

  

  

/*  

*********************************************************************************************************  

*                                        INITIALIZE A TASK'S STACK  

*  

* Description: This function is called by either OSTaskCreate() or OSTaskCreateExt() to initialize the  

*              stack frame of the task being created.  This function is highly processor specific.  

*  

* Arguments  : task          is a pointer to the task code  

*  

*              p_arg         is a pointer to a user supplied data area that will be passed to the task  

*                            when the task first executes.  

*  

*              ptos          is a pointer to the top of stack.  It is assumed that 'ptos' points to  

*                            a 'free' entry on the task stack.  If OS_STK_GROWTH is set to 1 then   

*                            'ptos' will contain the HIGHEST valid address of the stack.  Similarly, if  

*                            OS_STK_GROWTH is set to 0, the 'ptos' will contains the LOWEST valid address  

*                            of the stack.  

*  

*              opt           specifies options that can be used to alter the behavior of OSTaskStkInit().  

*                            (see uCOS_II.H for OS_TASK_OPT_???).  

*  

* Returns    : Always returns the location of the new top-of-stack' once the processor registers have  

*              been placed on the stack in the proper order.  

*  

* Note(s)    : 1) Interrupts are enabled when your task starts executing.   

*              2) All tasks run in SVC mode.  

*********************************************************************************************************  

*/  

  

OS_STK *OSTaskStkInit (void (*task)(void *pd), void *p_arg, OS_STK *ptos, INT16U opt)  

{  

    OS_STK *stk;  

  

    optopt      = opt;                 /* 'opt' is not used, prevent warning                      */  

      

    stk      = ptos;                /* Load stack pointer                                      */  

[1] [2] [3] [4] [5] [6] [7]
關(guān)鍵字:UCOS_II  移植到  S3C2440  ADS 引用地址:UCOS_II的移植到S3C2440 ADS 1.2

上一篇:采用JLink+ADS1.2調(diào)試uboot的方法
下一篇:將TQ2440的ADS工程文件移植到KEIL5中

推薦閱讀

? ? 董明珠股東大會(huì)放言:格力造芯片造手機(jī)都不是說(shuō)著玩的  26日,格力電器召開2017年度股東大會(huì)。與此前外界所期待與預(yù)測(cè)的不同,董事長(zhǎng)換屆并未在此次大會(huì)上完成。除此之外,格力電器在此次大會(huì)上還披露了最新的產(chǎn)業(yè)規(guī)劃圖,并稱明年空調(diào)或?qū)⒂蒙献约倚酒??! Q屆未入股東大會(huì)討論議題  6月26日下午14時(shí),格力電器在廣東省珠海市前山金雞西路...
STM32的開發(fā)學(xué)習(xí)主要涉及軟硬件兩個(gè)部分的實(shí)現(xiàn),包含眾多外設(shè)和總線的理解配置。STM32的整個(gè)學(xué)習(xí)曲線并不陡峭,但入門卻相當(dāng)困難,因此在學(xué)習(xí)之初,多動(dòng)手實(shí)驗(yàn)和測(cè)試相當(dāng)重要,GPIO作為整個(gè)STM32與外部連接的端口,難度不高,卻十分重要。從深入解析GPIO外設(shè)開始,一步步熟悉掌握STM32各個(gè)模塊,就是STM32的整個(gè)學(xué)習(xí)流程。GPIO模塊回顧 在嵌入式軟件...
Strategy Analytics手機(jī)元件技術(shù)服務(wù)最新發(fā)布的研究報(bào)告《2020年Q1智能手機(jī)電池市場(chǎng)份額:LG Chem縮小與ATL的距離》指出, 2020年Q1全球智能手機(jī)電池市場(chǎng)收益達(dá)到15億美元。 報(bào)告指出,2020年Q1,整個(gè)智能手機(jī)電池市場(chǎng)收益同比增長(zhǎng)5%。TDK擁有的ATL(Amperex Technology Ltd.)以36%的收益份額處于智能手機(jī)電池市場(chǎng)的領(lǐng)先地位, 其次是LG Chem和...
簡(jiǎn)介:一個(gè)交流采樣系統(tǒng), 交流信號(hào)由運(yùn)放組成信號(hào)調(diào)理電路, 并有運(yùn)放做加法運(yùn)算以后,進(jìn)入stm32的ADC管腳. 結(jié)果測(cè)試的時(shí)候,發(fā)現(xiàn)采樣很不準(zhǔn)確,插交流有效值算法也沒(méi)問(wèn)題.一個(gè)交流采樣系統(tǒng),交流信號(hào)由運(yùn)放組成信號(hào)調(diào)理電路,并有運(yùn)放做加法運(yùn)算以后,進(jìn)入stm32的ADC管腳.結(jié)果測(cè)試的時(shí)候,發(fā)現(xiàn)采樣很不準(zhǔn)確,插交流有效值算法也沒(méi)問(wèn)題.仔細(xì)檢測(cè),發(fā)現(xiàn)信號(hào)越小,測(cè)...

史海拾趣

問(wèn)答坊 | AI 解惑

AT91SAM7S64 嵌入式系統(tǒng)

DIY   基于AT91SAM7S64 嵌入式系統(tǒng)開發(fā)原理圖…

查看全部問(wèn)答∨

求wince游戲手柄廠商

要求支持WINCE,帶驅(qū)動(dòng),可以做鼠標(biāo)控制, 哪位做這方面的朋友,請(qǐng)聯(lián)系:QQ343556608,謝謝…

查看全部問(wèn)答∨

一個(gè)菜鳥對(duì)evc的問(wèn)題

evc創(chuàng)建new后 會(huì)生成.cpp .h .c等類型文件,它們的用處是什么?網(wǎng)上現(xiàn)有的編程代碼要copy到哪里去執(zhí)行? 剛接觸 什么都不懂 大家賜教…

查看全部問(wèn)答∨

wince6.0下不能彈出OTG對(duì)話框?

在6.0下接上USB OTG設(shè)備是,正常情況下應(yīng)該彈出個(gè)倒即時(shí)對(duì)話框,可是我的現(xiàn)在就沒(méi)有出現(xiàn)?硬件接線都是正常的,通過(guò)USB線與PC連接ActiveSync正?!?

查看全部問(wèn)答∨

你怎么不跳出來(lái)???IE6.0請(qǐng)求軟鍵盤!

各位大俠,用IESAMPLE的時(shí)候,在點(diǎn)連接地址欄時(shí),怎么才可以讓軟鍵盤自動(dòng)跳出來(lái)呢?我郁悶中.POCKET IE是可以自動(dòng)跳出來(lái)的.但是POCKET IE太爛了,新浪也不能訪問(wèn).…

查看全部問(wèn)答∨

關(guān)于SIPINFO結(jié)構(gòu)

#define SIPF_OFF        0x00000000 #define SIPF_ON         0x00000001 #define SIPF_DOCKED        0x00000002 #define SIPF_LOCKED        0x00000004 ...…

查看全部問(wèn)答∨

觸摸屏丟up中斷

各位大哥,我最近在sumsung2443上開發(fā)觸摸屏的驅(qū)動(dòng)程序,INT_ADC是觸摸屏中斷,timer3是ADC采樣計(jì)時(shí)器,不知道怎么回事,經(jīng)常丟觸摸筆抬起后的up中斷.大致流程如下,請(qǐng)各位告知是什么原因: DdsiTouchPanelGetPoint(TOUCH_PANEL_SAMPLE_FLAGS    ...…

查看全部問(wèn)答∨

剛電話面試,散分

剛接受電話面試。 回答的有點(diǎn)亂,好多小知識(shí)點(diǎn)長(zhǎng)時(shí)間沒(méi)復(fù)習(xí)了,都不清楚了。 建議大家面試前把各個(gè)知識(shí)點(diǎn)都捋一下。 明天結(jié)帖。…

查看全部問(wèn)答∨

關(guān)于FUTABA S3010 的詳細(xì)資料

搜集的網(wǎng)上比較全的資料。需要的可以看看,不用到處亂找了。…

查看全部問(wèn)答∨

MIT關(guān)于卡爾曼濾波算法的課程下載

卡爾曼濾波在車載導(dǎo)航等領(lǐng)域應(yīng)用非常廣泛,共享個(gè)MIT大學(xué)的課件,希望對(duì)大家有用…

查看全部問(wèn)答∨
小廣播
設(shè)計(jì)資源 培訓(xùn) 開發(fā)板 精華推薦

最新單片機(jī)文章

 
EEWorld訂閱號(hào)

 
EEWorld服務(wù)號(hào)

 
汽車開發(fā)圈

 
機(jī)器人開發(fā)圈

電子工程世界版權(quán)所有 京ICP證060456號(hào) 京ICP備10001474號(hào)-1 電信業(yè)務(wù)審批[2006]字第258號(hào)函 京公網(wǎng)安備 11010802033920號(hào) Copyright ? 2005-2025 EEWORLD.com.cn, Inc. All rights reserved