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

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

?? os_cpu_c.c

?? C51下uc/osii的一個完整的LCD項目源碼
?? C
字號:
/*
*********************************************************************************************************
*                                               uC/OS-II
*                                               實時內核
*
*                        (c) Copyright 1992-1998, Jean J. Labrosse, Plantation, FL
*                                               版權所有
*
*                                            MCU-51 專用代碼
*                                           KEIL C51大模式編譯
*
* 文件名 : OS_CPU_C.C
* 作者   : Jean J. Labrosse
* 改編   : 楊屹 gdtyy@ri.gdt.com.cn 巨龍公司系統集成開發部 2002.09.27
*********************************************************************************************************
*/

#define  OS_CPU_GLOBALS
#include "includes.h"
/*
*********************************************************************************************************
*                                        初始化任務堆棧
*
* 描述       : 這個函數被OSTaskCreate()或OSTaskCreateExt()調用,以便初始化新創建任務的堆棧結構。本函數
*              與處理器高度相關。
*
* 參數       : task          指向任務代碼的指針
*
*              pdata         當任務第一次執行時將要傳入任務的用戶數據結構指針
*
*              ptos          棧頂指針。ptos指針被默認為用戶堆棧入口指針。如果OS_STK_GROWTH被置1,那么,
*                            ptos指向用戶堆棧的最高有效地址。同樣地,如果OS_STK_GROWTH清0,ptos將指向
*                            用戶堆棧的最低有效地址。
*
*              opt           指定可以改變OSTaskStkInit()行為的選項。(見uCOS_II.H for OS_TASK_OPT_???)。
*
* 返回值     : 我修改了原來的程序,使函數總是返回用戶堆棧空間的最低有效地址。這樣修改提高了TCB換入換出
*              的效率。
*
* 注意       : 任務堆棧結構:
*
*                                    ---------- -
*                 用戶棧最高地址---->|        | |
*                                    ---------- |
*                                    |   ...  | 仿真堆棧空間
*----------                          ---------- | 每任務一個
*|OSTCBCur|               ?C_XBP---->|        | | KEIL自動處理
*----------                          ---------- -
*    |                               |空閑間隔|
*    |     -----------------------   ----------                           ----------
*    \---->|OSTCBCur->OSTCBStkPtr|   |?C_XBP低|                    SP---->|        |
*          -----------------------   ----------                           ----------
*                     |              |?C_XBP高|                           |        |
*                     |              ---------- -                         ----------
*                     |              |        | |                         |   .    |
*                     |              ---------- |                         |   .    |
*                     |              |        | |                         |   .    |
*                     |              ---------- |                         ----------
*                     |              |   .    |長度                       |        | +1
*                     |              |   .    | |                         ----------
*                     |              |   .    | |             OSStack---->|        | 0
*                     |              ---------- |                         ----------
*                     |              |        | |          OSStkStart---->| 不關心 | -1  低地址
*                     |              ---------- -                         ----------
*                     \------------->|  長度  | 低地址                   系統硬件堆棧
*                                    ----------
*                                     用戶堆棧                       長度=SP-OSStkStart
*********************************************************************************************************
*/

void *OSTaskStkInit (void (*task)(void *pd), void *ppdata, void *ptos, INT16U opt) reentrant
{    
    OS_STK *stk;

    ppdata = ppdata;
    opt    = opt;                               //opt沒被用到,保留此語句防止告警產生    
    stk    = (OS_STK *)ptos;                    //用戶堆棧最低有效地址
    *stk++ = 15;                                //用戶堆棧長度
    *stk++ = (INT16U)task & 0xFF;               //任務地址低8位
    *stk++ = (INT16U)task >> 8;                 //任務地址高8位    
    *stk++ = 0x00;                              //PSW
    *stk++ = 0x0A;                              //ACC
    *stk++ = 0x0B;                              //B
    *stk++ = 0x00;                              //DPL
    *stk++ = 0x00;                              //DPH
    *stk++ = 0x00;                              //R0
    *stk++ = 0x01;                              //R1
    *stk++ = 0x02;                              //R2
    *stk++ = 0x03;                              //R3
    *stk++ = 0x04;                              //R4
    *stk++ = 0x05;                              //R5
    *stk++ = 0x06;                              //R6
    *stk++ = 0x07;                              //R7
                                                //不用保存SP,任務切換時根據用戶堆棧長度計算得出。    
    *stk++ = (INT16U) (ptos+MaxStkSize) >> 8;   //?C_XBP 仿真堆棧指針高8位
    *stk++ = (INT16U) (ptos+MaxStkSize) & 0xFF; //?C_XBP 仿真堆棧指針低8位
        
    return ((void *)ptos);
}

#if OS_CPU_HOOKS_EN
/*
*********************************************************************************************************
*                                          任務創建鉤掛函數
*
* 描述       : 任務創建時調用
*
* 參數       : ptcb是指向將被創建任務的任務控制塊的指針。
*
* 注意       : 1) 調用期間中斷被禁止
*********************************************************************************************************
*/
void OSTaskCreateHook (OS_TCB *ptcb) reentrant
{
    ptcb = ptcb;                       /* Prevent compiler warning                                     */
}


/*
*********************************************************************************************************
*                                          任務刪除鉤掛函數
*
* 描述       : 任務刪除時調用
*
* 參數       : ptcb是指向將被刪除任務的任務控制塊的指針。
*
* 注意       : 1) 調用期間中斷被禁止
*********************************************************************************************************
*/
void OSTaskDelHook (OS_TCB *ptcb) reentrant
{
    ptcb = ptcb;                       /* Prevent compiler warning                                     */
}

/*
*********************************************************************************************************
*                                          任務切換鉤掛函數
*
* 描述       : 執行任務切換時調用。這允許你在上下文切換期間執行其它操作。
*
* 參數       : 無
*
* 注意       : 1) 調用期間中斷被禁止
*              2) 假定全局指針'OSTCBHighRdy'已經指向了將要被換入的任務控制塊(即:最高優先級任務),并且
*                 'OSTCBCur'指向了將被換出的任務(即:當前任務)。
*********************************************************************************************************
*/
void OSTaskSwHook (void) reentrant
{
}

/*
*********************************************************************************************************
*                                          統計任務鉤掛函數
*
* 描述       : 這個函數每秒鐘被uC/OS-II統計任務調用。這么做使你的應用程序可以增加統計任務的功能。
*
* 注意       : 無
*********************************************************************************************************
*/
#if			OS_TASK_STAT_EN
void OSTaskStatHook (void) reentrant
{

}
#endif

/*
*********************************************************************************************************
*                                          定時鉤掛函數
*
* 描述       : 本函數每一滴答被調用一次。
*
* 參數       : 無
*
* 注意       : 1) 在本調用期間中斷可以或不可以使能。
*********************************************************************************************************
*/
void OSTimeTickHook (void) reentrant
{
}
#endif

//初始化定時器1
/*void InitTimer1(void) reentrant
{
    TMOD=TMOD&0x0F0;
    TMOD=TMOD|0x10;		//模式1(16位定時器),僅受TR0控制
    TH1=0xB8;			//定義Tick=20次/秒(即0.05秒/次)
    TL1=0x36;			//OS_CPU_A.ASM  和  OS_TICKS_PER_SEC
	ET1=1;				//允許T1中斷
    TR1=1;   
}*/

/*void InitTimer2(void) reentrant//Tick=20
{
    T2CON  = 0X00;
	T2MOD  = 0X00;
	RCAP2H = 0X4B;					
	RCAP2L = 0XFD;					
	TR2    = 1;
	ET2    = 1;
}*/

void InitTimer2(void) reentrant//Tick=20
{
    T2CON  = 0X00;
	T2MOD  = 0X00;
	RCAP2H = 0XDB;				
	RCAP2L = 0XFF;				
	TR2    = 1;
	ET2    = 1;
}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
亚洲午夜国产一区99re久久| 成人性生交大片免费看在线播放 | 国产午夜精品久久久久久免费视 | 不卡一区二区中文字幕| 亚洲永久免费av| 欧美不卡一区二区三区四区| 99re66热这里只有精品3直播| 丝袜国产日韩另类美女| 国产精品天美传媒| 777欧美精品| 在线精品视频免费观看| 国产精品国产精品国产专区不片 | 日本不卡中文字幕| 一区免费观看视频| 久久久精品免费网站| 欧美挠脚心视频网站| 色先锋久久av资源部| 懂色av一区二区三区蜜臀| 久久国产精品免费| 国产馆精品极品| 精品电影一区二区| 在线免费观看一区| 国产suv精品一区二区三区| 美国av一区二区| 日韩和欧美一区二区| 一区二区三区四区激情| 中文字幕综合网| 欧美国产精品中文字幕| 2020国产成人综合网| 日韩一级免费一区| 日韩一区二区视频| 91麻豆精品91久久久久久清纯| 日本福利一区二区| 在线亚洲人成电影网站色www| 99久久国产综合精品麻豆| 国产精品一二三区| 国产黑丝在线一区二区三区| 国产成人午夜视频| 国产高清亚洲一区| 成人小视频免费观看| 国产乱妇无码大片在线观看| 国产综合色精品一区二区三区| 日本在线不卡视频| 蜜臀av一区二区在线观看 | 国产黄色91视频| 国产成人综合网站| 一区二区三区四区亚洲| 久久久久久久久久久电影| 2024国产精品视频| 久久这里只有精品首页| 国产日产欧产精品推荐色| 国产校园另类小说区| 欧美国产一区二区| 综合自拍亚洲综合图不卡区| 亚洲精品伦理在线| 亚洲综合区在线| 亚洲成av人片在线观看无码| 日本韩国欧美国产| 国产综合色在线| 国产成人精品亚洲777人妖| 国产成人午夜精品影院观看视频| 成人一道本在线| 91老师国产黑色丝袜在线| 在线精品亚洲一区二区不卡| 欧美日韩成人综合| 精品久久国产老人久久综合| 久久久无码精品亚洲日韩按摩| 国产精品妹子av| 一区二区三区不卡视频在线观看| 亚洲成人免费影院| 国精产品一区一区三区mba视频| 成人午夜视频在线观看| 91黄色免费版| 精品人伦一区二区色婷婷| 国产香蕉久久精品综合网| 亚洲精品视频观看| 日韩精品一卡二卡三卡四卡无卡| 麻豆成人久久精品二区三区红 | 激情成人综合网| av电影在线观看完整版一区二区| 欧美午夜片在线看| 2023国产一二三区日本精品2022| 亚洲欧洲精品一区二区三区不卡| 午夜不卡av免费| 福利91精品一区二区三区| 色老头久久综合| 精品处破学生在线二十三| 亚洲欧美自拍偷拍色图| 性做久久久久久久久| 国产成人8x视频一区二区| 欧美系列在线观看| 国产丝袜欧美中文另类| 亚洲成人在线观看视频| 国产91精品欧美| 91精品国产一区二区| 中文字幕欧美一区| 久久疯狂做爰流白浆xx| 激情国产一区二区| 亚洲免费观看视频| 国产真实精品久久二三区| 色av综合在线| 国产女人18毛片水真多成人如厕| 亚洲午夜成aⅴ人片| 成人视屏免费看| 日韩精品一区二区三区swag| 亚洲精品综合在线| 丁香婷婷综合色啪| 精品国产91乱码一区二区三区| 一区二区三区日韩欧美| 粉嫩一区二区三区在线看| 制服丝袜成人动漫| 亚洲精品国久久99热| 国产乱码精品1区2区3区| 51精品秘密在线观看| 一区二区三区四区精品在线视频| 成人高清视频免费观看| 久久综合精品国产一区二区三区| 午夜精品一区二区三区免费视频| 91视频观看视频| 国产精品美女视频| 国产精品资源网站| 2019国产精品| 韩国av一区二区| 日韩免费观看高清完整版 | 久久精品999| 538prom精品视频线放| 亚洲一区精品在线| 99视频国产精品| 中文字幕免费一区| 国产成人精品亚洲777人妖| 久久久国产一区二区三区四区小说| 蜜桃在线一区二区三区| 91麻豆精品91久久久久久清纯| 午夜精品久久久久久久久| 91国产丝袜在线播放| 亚洲人成网站精品片在线观看 | 成人午夜av在线| 国产日产欧美一区| 成人美女视频在线观看18| 欧美国产综合一区二区| 亚洲一二三四久久| 亚洲欧美激情视频在线观看一区二区三区 | 秋霞成人午夜伦在线观看| 欧美三级欧美一级| 亚洲成人资源在线| 91精品婷婷国产综合久久竹菊| 偷拍亚洲欧洲综合| 日韩一区二区不卡| 精品一区二区三区免费毛片爱| 欧美电视剧免费全集观看| 精品制服美女久久| 久久精品亚洲精品国产欧美| 处破女av一区二区| 中文字幕亚洲电影| 欧美日韩一本到| 亚洲成人激情av| 3d动漫精品啪啪1区2区免费 | 国产精品国产三级国产aⅴ入口| heyzo一本久久综合| 亚洲美女在线国产| 欧美日韩亚洲综合一区二区三区| 午夜电影久久久| 久久久亚洲国产美女国产盗摄| 成熟亚洲日本毛茸茸凸凹| 一区二区欧美视频| 日韩午夜精品视频| 粉嫩嫩av羞羞动漫久久久 | 丝袜亚洲精品中文字幕一区| 欧美一级理论片| 国产成人免费av在线| 亚洲男同性视频| 91精品国产入口| 丁香婷婷综合色啪| 丝袜诱惑制服诱惑色一区在线观看 | 国内精品免费**视频| 国产人成亚洲第一网站在线播放| 日本韩国欧美在线| 亚洲成人免费电影| 久久久亚洲精品石原莉奈| 91黄色免费观看| 美国欧美日韩国产在线播放| 久久精品亚洲精品国产欧美| 在线观看一区二区精品视频| 久久精品国产亚洲一区二区三区| 国产精品久线在线观看| 欧美电影一区二区三区| 丁香婷婷深情五月亚洲| 男人的j进女人的j一区| 国产精品毛片久久久久久| 在线播放视频一区| 99在线热播精品免费| 精品亚洲国产成人av制服丝袜| 亚洲免费观看高清在线观看| 欧美不卡激情三级在线观看| 91亚洲国产成人精品一区二区三| 美腿丝袜在线亚洲一区| 亚洲男帅同性gay1069| 久久色.com| 欧美男女性生活在线直播观看| 成人av免费在线观看|