亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? os_cpu.h

?? 基于GE00 實驗系統開發板的實驗指導用途
?? H
字號:
/*
*********************************************************************************************************
*                                               uC/OS-II
*                                        The Real-Time Kernel
*
*                         (c) Copyright 1992-2002, Jean J. Labrosse, Weston, FL
*                                          All Rights Reserved
*
* File         : OS_CPU.H
* By           : Jean J. Labrosse
*********************************************************************************************************
*/

/*
*********************************************************************************************************
*                                               ARM Port
*
*                 Target           : ARM (Includes ARM7, ARM9)
*                 Ported by        : Michael Anburaj
*                 URL              : http://geocities.com/michaelanburaj/    Email : michaelanburaj@hotmail.com
*
*********************************************************************************************************
*/

#ifndef __OS_CPU_H__
#define __OS_CPU_H__


#ifdef  OS_CPU_GLOBALS
#define OS_CPU_EXT
#else
#define OS_CPU_EXT  extern
#endif

/*
*********************************************************************************************************
*                                              DATA TYPES
*                                         (Compiler Specific)
*********************************************************************************************************
*/

typedef unsigned char  BOOLEAN;
typedef unsigned char  INT8U;                    /* Unsigned  8 bit quantity                           */
typedef signed   char  INT8S;                    /* Signed    8 bit quantity                           */
typedef unsigned int   INT16U;                   /* Unsigned 16 bit quantity                           */
typedef signed   int   INT16S;                   /* Signed   16 bit quantity                           */
typedef unsigned long  INT32U;                   /* Unsigned 32 bit quantity                           */
typedef signed   long  INT32S;                   /* Signed   32 bit quantity                           */
typedef float          FP32;                     /* Single precision floating point                    */
typedef double         FP64;                     /* Double precision floating point                    */

typedef unsigned int   OS_STK;                   /* Each stack entry is 16-bit wide                    */
typedef unsigned int   OS_CPU_SR;                /* Define size of CPU status register (PSR = 32 bits) */

#define BYTE           INT8S                     /* Define data types for backward compatibility ...   */
#define UBYTE          INT8U                     /* ... to uC/OS V1.xx.  Not actually needed for ...   */
#define WORD           INT16S                    /* ... uC/OS-II.                                      */
#define UWORD          INT16U
#define LONG           INT32S
#define ULONG          INT32U

/* 
*********************************************************************************************************
*                              ARM
*
* Method #1:  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:  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.
*
* 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.
*
* Note     :  In this ARM7 Port: Method #1 not implemeted.
*             ------------------------------
*            | Method | SDT 2.51 | ADS 1.2  |
*            |========+==========+==========|
*            |   1    |   N/I    |   N/I    |
*            |   2    |   yes    |   no     |
*            |   3    |   yes    |   yes    |
*             ------------------------------
*
*********************************************************************************************************
*/
/* Don't modify these lines. ADS can only support OS_CRITICAL_METHOD 3. */
#define	ADS
#if defined (ADS)
#define  OS_CRITICAL_METHOD    3
#elif defined (SDT)
#define  OS_CRITICAL_METHOD    2
#else
        #error Please define a valid tool chain
#endif

#if      OS_CRITICAL_METHOD == 2
#define  OS_ENTER_CRITICAL() IRQFIQDE                     /* Disable interrupts                        */
/* Note: R0 register need not be saved, for it gets saved outside. Refer SDT userguide 6-5 */
#define IRQFIQDE __asm                       \
{                                            \
        mrs r0,CPSR;                         \
        stmfd sp!,{r0};                      \
        orr r0,r0,#NOINT;                    \
        msr CPSR_c,r0;                       \
}

#define  OS_EXIT_CRITICAL() IRQFIQRE                      /* Restore  interrupts                       */
#define IRQFIQRE __asm                       \
{                                            \
        ldmfd sp!,{r0};                      \
        msr CPSR_c,r0;                       \
}
#endif

#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 80x86  */

#define  OS_TASK_SW()         OSCtxSw()

/*
*********************************************************************************************************
*                                            GLOBAL VARIABLES
*********************************************************************************************************
*/


/*
*********************************************************************************************************
*                                              PROTOTYPES
*********************************************************************************************************
*/

void UCOS_IRQHandler(void);
void OSCtxSw(void);
void OSIntCtxSw(void);

#if OS_CRITICAL_METHOD == 3                      /* Allocate storage for CPU status register           */
OS_CPU_SR  OSCPUSaveSR(void);
void       OSCPURestoreSR(OS_CPU_SR cpu_sr);
#endif

#endif /*__OS_CPU_H__*/

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产精品国产三级国产aⅴ无密码 国产精品国产三级国产aⅴ原创 | 欧美国产日韩在线观看| 蜜桃久久久久久久| 91精品国产美女浴室洗澡无遮挡| 亚洲高清免费视频| 欧美在线免费观看亚洲| 亚洲一区二区在线播放相泽| 欧美久久一二三四区| 美国av一区二区| 国产欧美日韩另类一区| 成人av网站在线| 一区二区三区四区在线免费观看| 色猫猫国产区一区二在线视频| 亚洲精品自拍动漫在线| 欧美精品久久天天躁| 久久精品国产免费| 国产精品欧美一级免费| 91美女福利视频| 五月激情综合网| 久久久久久久久久看片| 91视频免费播放| 毛片基地黄久久久久久天堂| 国产农村妇女精品| 色综合久久中文综合久久牛| 蜜臀av一区二区在线观看| 中文字幕第一区综合| 欧美日本高清视频在线观看| 国产在线观看免费一区| 亚洲制服丝袜av| 精品久久一二三区| 色成年激情久久综合| 狠狠色综合色综合网络| 亚洲靠逼com| 日韩免费高清av| 97精品国产97久久久久久久久久久久| 一区二区三区在线影院| 久久综合国产精品| 精品视频999| 成人av免费在线| 奇米四色…亚洲| 亚洲人妖av一区二区| 91精品国产91热久久久做人人| 成人精品一区二区三区四区| 五月激情六月综合| 亚洲欧洲日韩在线| 亚洲精品一区二区三区99| 欧美亚日韩国产aⅴ精品中极品| 久久99国产精品尤物| 一区二区三区四区不卡视频| 久久久久国产一区二区三区四区 | 亚洲欧洲成人精品av97| 欧美一区二区三区爱爱| 成人高清在线视频| 极品瑜伽女神91| 青娱乐精品视频在线| 亚洲国产视频直播| 综合久久国产九一剧情麻豆| 久久久久久9999| 欧美成人国产一区二区| 8v天堂国产在线一区二区| 91视频国产资源| aaa亚洲精品一二三区| 成人性生交大合| 国产成人啪午夜精品网站男同| 老司机免费视频一区二区| 图片区小说区国产精品视频| 一区二区免费在线播放| 国产精品久久99| 中文字幕av不卡| 久久品道一品道久久精品| 日韩欧美中文一区二区| 日韩一二三区不卡| 欧美一区三区二区| 69av一区二区三区| 欧美精选一区二区| 欧美性受xxxx黑人xyx性爽| 99久久777色| 色婷婷精品久久二区二区蜜臂av | 欧美亚洲综合色| 91福利资源站| 在线视频综合导航| 精品视频一区 二区 三区| 欧美亚洲一区二区在线| 欧美亚洲愉拍一区二区| 欧美久久久久久久久| 欧美一区二区三区免费在线看| 欧美另类一区二区三区| 欧美一级搡bbbb搡bbbb| 欧美一区二区三区视频在线观看| 7777精品伊人久久久大香线蕉完整版 | 成人成人成人在线视频| 99久久婷婷国产综合精品| voyeur盗摄精品| 色综合天天综合狠狠| 欧美综合色免费| 欧美日韩精品一区二区三区| 欧美日韩一区二区三区在线看 | 国产精品电影一区二区三区| 国产精品女上位| 亚洲欧美日韩国产综合在线 | 国产视频一区在线播放| 亚洲色图另类专区| 亚洲mv在线观看| 国产综合久久久久影院| 国产成人精品一区二区三区网站观看| 丰满少妇久久久久久久| 在线免费观看日韩欧美| 制服丝袜av成人在线看| 2023国产精品自拍| 亚洲欧洲日产国码二区| 亚洲va国产天堂va久久en| 韩国中文字幕2020精品| 一本大道久久a久久精二百| 9191精品国产综合久久久久久| 久久综合一区二区| 亚洲精品国产精品乱码不99| 免费成人在线播放| 成人爱爱电影网址| 在线成人小视频| 国产精品久99| 首页国产欧美久久| 成人av在线播放网址| 在线电影国产精品| 自拍偷拍亚洲激情| 精品在线免费视频| 欧美亚洲精品一区| 国产日产亚洲精品系列| 日韩国产欧美三级| 91亚洲精品久久久蜜桃| 精品国产3级a| 亚洲3atv精品一区二区三区| 国产99精品视频| 日韩欧美123| 亚洲成人资源在线| 9人人澡人人爽人人精品| 日韩一区二区三区电影在线观看| 国产精品久久久久三级| 美国十次综合导航| 欧美日韩成人高清| 中文字幕一区二区三区不卡| 蜜臀av性久久久久蜜臀aⅴ| 99久久国产免费看| 久久久久综合网| 蜜臀久久久久久久| 色八戒一区二区三区| 欧美激情中文不卡| 蜜桃一区二区三区在线观看| 欧美婷婷六月丁香综合色| 成人欧美一区二区三区小说| 国产美女精品人人做人人爽 | 色综合久久久久综合| 精品999久久久| 麻豆91在线观看| 欧美久久久久久蜜桃| 一区二区三区四区蜜桃| 成人av小说网| 欧美国产乱子伦| 国产一区二区三区最好精华液| 91精品蜜臀在线一区尤物| 亚洲在线视频一区| 色老头久久综合| 亚洲色图制服诱惑| 成人国产精品免费网站| 国产日韩亚洲欧美综合| 国产乱人伦偷精品视频免下载| 日韩欧美亚洲国产精品字幕久久久| 亚洲成va人在线观看| 欧美另类z0zxhd电影| 亚洲h动漫在线| 欧美另类久久久品| 全国精品久久少妇| 欧美成人性战久久| 久久99久久精品欧美| 精品精品国产高清一毛片一天堂| 美女视频黄久久| 精品国产91乱码一区二区三区 | 成人美女视频在线看| 欧美激情一区三区| 国产98色在线|日韩| 国产精品久久久久久久久图文区 | 亚洲图片自拍偷拍| 制服丝袜在线91| 毛片av一区二区三区| 久久久久久免费网| 不卡视频免费播放| 亚洲不卡一区二区三区| 日韩欧美的一区| 国产成人三级在线观看| 亚洲色图视频网| 欧美日韩精品一区二区三区蜜桃| 蜜桃av噜噜一区| 久久久久9999亚洲精品| 色综合久久久久综合体| 日韩高清在线电影| 久久精品视频网| 色哟哟一区二区在线观看| 奇米亚洲午夜久久精品| 国产精品久线在线观看| 欧美日韩一级大片网址| 国内精品伊人久久久久av影院|