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

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

?? os_cpu_c.c

?? uC_OS-II在C51下的一個完整的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一区二区三区免费野_久草精品视频
成人国产精品免费观看动漫| 在线中文字幕一区二区| 欧美蜜桃一区二区三区| 午夜一区二区三区视频| 色又黄又爽网站www久久| 日欧美一区二区| 国产亚洲精久久久久久| 精品视频在线看| 美女精品自拍一二三四| 亚洲女人的天堂| 久久久久久久久久久久久久久99| 99精品视频在线观看| 秋霞午夜鲁丝一区二区老狼| 亚洲欧美在线观看| 精品国免费一区二区三区| 欧洲人成人精品| 国产精品一区二区果冻传媒| 亚洲成人午夜电影| 视频一区二区三区入口| 日本不卡一区二区| 国产精品美女久久久久久久久久久| 欧美午夜宅男影院| 加勒比av一区二区| 石原莉奈在线亚洲二区| 国产在线播精品第三| 国产精品久久久久影院色老大| 91精品一区二区三区在线观看| 99精品黄色片免费大全| 欧美日韩国产综合一区二区| 精品国精品自拍自在线| 1区2区3区国产精品| 日韩精品三区四区| 国产成人福利片| 国产自产高清不卡| 国产麻豆成人精品| 91麻豆国产精品久久| 91亚洲男人天堂| 日韩欧美黄色影院| 日韩精品影音先锋| 中文字幕一区二区三区色视频| 亚洲成人你懂的| 春色校园综合激情亚洲| 国产91富婆露脸刺激对白| 国产精品影视在线| 欧美日韩精品一区二区三区| 久久精品一级爱片| 五月天婷婷综合| 99精品一区二区三区| 欧美tickling网站挠脚心| 久久久久久9999| 亚洲第一福利一区| 99久久国产综合精品女不卡| 欧美xingq一区二区| 亚洲一区二区在线视频| 亚洲18女电影在线观看| a在线欧美一区| 欧美午夜精品电影| 亚洲国产成人在线| 一区二区三区在线视频播放| 午夜精品久久久久久久蜜桃app| 国产乱码一区二区三区| 欧美一区二区不卡视频| 久久久蜜桃精品| 美女视频黄久久| 欧美日韩精品是欧美日韩精品| 亚洲三级小视频| 日韩黄色免费电影| 欧美体内she精高潮| 色综合久久精品| 综合久久综合久久| 日韩精品一区二区三区三区免费| 高清不卡在线观看| 日韩高清国产一区在线| 国产精品丝袜黑色高跟| 欧美日本国产一区| 成人av网址在线观看| 天堂av在线一区| 国产精品久久毛片a| 555夜色666亚洲国产免| 成人av网在线| 精品亚洲国内自在自线福利| 亚洲综合清纯丝袜自拍| 久久午夜免费电影| 国产不卡一区视频| 日本中文在线一区| 日韩毛片高清在线播放| 精品国产伦一区二区三区观看体验 | 国产精品99久久久久久久女警| 亚洲三级在线观看| 久久久久久久综合色一本| 欧美天天综合网| 97久久精品人人爽人人爽蜜臀| 老司机一区二区| 久久精品在线观看| 日韩一区二区高清| 成人妖精视频yjsp地址| 免费观看在线综合| 亚洲不卡在线观看| 亚洲欧美另类小说视频| 国产日韩欧美a| 色婷婷久久综合| 国产丶欧美丶日本不卡视频| 亚洲成av人片在线| 亚洲一区日韩精品中文字幕| ...xxx性欧美| 国产精品久久久99| 国产精品嫩草99a| 国产午夜精品一区二区| 精品成人在线观看| 精品日韩在线一区| 精品国产亚洲在线| 精品嫩草影院久久| 精品国产免费久久| ww亚洲ww在线观看国产| 欧美tk—视频vk| 久久婷婷久久一区二区三区| 欧美电视剧在线观看完整版| 日韩精品一区二区在线| 欧美成人精品二区三区99精品| 日韩欧美在线观看一区二区三区| 欧美精品视频www在线观看| 国产99精品国产| 成人综合在线观看| 日韩欧美亚洲国产另类| 成人欧美一区二区三区在线播放| 久久久久久电影| 国产丝袜欧美中文另类| 国产欧美日产一区| 国产欧美一区二区三区在线看蜜臀 | 日韩精品一二三| 日本sm残虐另类| 久久精品国产亚洲一区二区三区| 久久成人免费网| 国产成人免费网站| 91麻豆swag| 欧美精品视频www在线观看| 日韩免费一区二区三区在线播放| 精品日韩欧美在线| 国产精品女上位| 亚洲国产欧美另类丝袜| 欧美xfplay| 国产精品免费av| 亚洲国产中文字幕| 奇米影视在线99精品| 国产成人精品免费在线| 一本色道久久综合亚洲精品按摩| 欧美日韩电影在线播放| 精品国产一区二区国模嫣然| 亚洲欧美自拍偷拍| 天天综合色天天综合色h| 国产麻豆一精品一av一免费| 99久久精品国产一区二区三区 | 国产精品乱人伦| 亚洲国产va精品久久久不卡综合| 免费成人性网站| 99热在这里有精品免费| 777久久久精品| 国产精品免费视频网站| 亚洲电影一级黄| 成人精品国产福利| 91精品国产91久久久久久最新毛片| 国产亚洲欧美一级| 天堂久久一区二区三区| 国产综合色视频| 中文字幕成人在线观看| 一个色妞综合视频在线观看| 老司机一区二区| 欧美图区在线视频| 国产精品免费久久久久| 日韩成人免费电影| 91黄色在线观看| 国产日韩欧美一区二区三区乱码 | 日韩免费福利电影在线观看| 国产精品护士白丝一区av| 日本欧美在线看| 在线免费av一区| 国产精品传媒视频| 韩国三级电影一区二区| 欧美精品 日韩| 一区二区三区国产豹纹内裤在线| 国产超碰在线一区| 精品国产免费一区二区三区四区| 性做久久久久久免费观看| 色香色香欲天天天影视综合网| 久久久久久久久久美女| 热久久一区二区| 91精品一区二区三区在线观看| 亚洲精品老司机| 亚洲成人午夜影院| 色综合天天综合给合国产| 91精品国产欧美日韩| 老司机午夜精品| 99热99精品| 日本一区二区免费在线观看视频| 麻豆精品一二三| 日韩欧美一卡二卡| 免费看欧美美女黄的网站| 8x8x8国产精品| 免费不卡在线观看| 欧美一区二区美女|