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

? 歡迎來(lái)到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? serial.c

?? Small rtos在51單片機(jī)中的移植與一些例程
?? C
字號(hào):
/*********************************************************************************************************
**				                               Small RTOS(51)
**                                   The Real-Time Kernel(For Keil c51)
**
**                                  (c) Copyright 2002-2002, chenmingji
**                                           All Rights Reserved
**
**                                                  V1.20.0
**
**
**--------------文件信息--------------------------------------------------------------------------------
**文   件   名: serial.c
**創(chuàng)   建   人: 陳明計(jì)
**最后修改日期: 2003年8月31日
**描        述: 在DP-51上實(shí)現(xiàn)鬧鐘的例子的串行口驅(qū)動(dòng)程序
**
**--------------歷史版本信息----------------------------------------------------------------------------
** 創(chuàng)建人: 陳明計(jì)
** 版  本: V1.00
** 日 期: 2003年3月25日
** 描 述: 原始版本
**
**------------------------------------------------------------------------------------------------------
** 修改人: 陳明計(jì)
** 版  本: V1.20.0
** 日 期: 2003年8月31日
** 描 述: 根據(jù)新版本要求修改
**
**--------------當(dāng)前版本修訂------------------------------------------------------------------------------
** 修改人: 
** 日 期:
** 描 述:
**
**------------------------------------------------------------------------------------------------------
********************************************************************************************************/
#define IN_SERIAL

#include "config.h"
                                            /* 聲明使用的外部變量           */
extern uint8 OS_Q_MEM_SEL CommandData[];
extern uint8 OS_Q_MEM_SEL SerialInData[];
extern uint8 OS_Q_MEM_SEL SerialOutData[];
extern uint8 OS_Q_MEM_SEL Alarm[];

void PutChar(uint8 Data);

bit SerialCanSend = 1;                      /* 正在發(fā)送標(biāo)志,0:正在發(fā)送    */

/*********************************************************************************************************
** 函數(shù)名稱: SerialInit
** 功能描述: 初始化串行口
** 輸 入: 無(wú)
** 輸 出: 無(wú)
** 全局變量: 無(wú)
** 調(diào)用模塊: 無(wú)
**
** 作 者: 陳明計(jì)
** 日 期: 2003年3月25日
**-------------------------------------------------------------------------------------------------------
** 修改人:
** 日 期:
**------------------------------------------------------------------------------------------------------
********************************************************************************************************/
        void SerialInit(void)
{
	SCON = 0x50;
	PCON = 0x80;
	TMOD = TMOD & 0x0f;
	TMOD = TMOD | 0x20;
	TH1 = 0xf4;                   //com is 4800 b/s
	TL1 = 0xf4;
	TR1 = 1;
	ES = 1;
}

/*********************************************************************************************************
** 函數(shù)名稱: Send
** 功能描述: 發(fā)送一個(gè)數(shù)據(jù)包
** 輸 入: Data:指向要發(fā)送的數(shù)據(jù)指針
** 輸 出: 無(wú)
** 全局變量: 無(wú)
** 調(diào)用模塊: 無(wú)
**
** 作 者: 陳明計(jì)
** 日 期: 2003年3月25日
**-------------------------------------------------------------------------------------------------------
** 修改人:
** 日 期:
**------------------------------------------------------------------------------------------------------
********************************************************************************************************/
        void Send(uint8 OS_Q_MEM_SEL *Data)
{
    uint8 Sem;
    
    PutChar(STARTBYTE1);
    PutChar(STARTBYTE2);
    Sem = STARTBYTE1 + STARTBYTE2;
    
    PutChar(*Data);
    Sem += *Data++;
    PutChar(*Data);
    Sem += *Data++;
    PutChar(*Data);
    Sem += *Data++;
    PutChar(*Data);
    Sem += *Data++;
    PutChar(*Data);
    Sem += *Data++;
    
    PutChar(-Sem);
}

/*********************************************************************************************************
** 函數(shù)名稱: PutChar
** 功能描述: 發(fā)送一個(gè)字節(jié)
** 輸 入: Data:發(fā)送的數(shù)據(jù)
** 輸 出: 無(wú)
** 全局變量: 無(wú)
** 調(diào)用模塊: 無(wú)
**
** 作 者: 陳明計(jì)
** 日 期: 2003年3月25日
**-------------------------------------------------------------------------------------------------------
** 修改人:
** 日 期:
**------------------------------------------------------------------------------------------------------
********************************************************************************************************/
    void PutChar(uint8 Data)
{
    OS_ENTER_CRITICAL();
    if (SerialCanSend == 1)                         
    {
        SerialCanSend = 0;
        SBUF = Data;                                /* 串口空閑,直接發(fā)送   */
    }
    else
    {
        OSQIntPost(SerialOutData,Data);             /* 數(shù)據(jù)入隊(duì)             */
    }
    OS_EXIT_CRITICAL();
}  

/*********************************************************************************************************
** 函數(shù)名稱: Recuve
** 功能描述: 串口接收處理任務(wù)
** 輸 入: 無(wú)
** 輸 出: 無(wú)
** 全局變量: 無(wú)
** 調(diào)用模塊: 無(wú)
**
** 作 者: 陳明計(jì)
** 日 期: 2003年3月25日
**-------------------------------------------------------------------------------------------------------
** 修改人:
** 日 期:
**------------------------------------------------------------------------------------------------------
********************************************************************************************************/
    void Recuve(void)
{
    uint8 data temp,temp1;
    uint8 Sum,i;
                                                /* 建立所需要的消息隊(duì)列 */
    OSQCreate(CommandData, 16);
    OSQCreate(SerialInData, 16);
    OSQCreate(SerialOutData, 32);
    SerialInit();                               /* 初始化串行口         */
    
    while (1)
    {
        OSQPend(&temp,SerialInData,0);          /* 接收一個(gè)字節(jié)         */
        while (1)
        {
            OSQPend(&temp1,SerialInData,0);     /* 接收一個(gè)字節(jié)         */
            if ((temp == STARTBYTE1) && (temp1 == STARTBYTE2))
            {
                break;                          /* 接收到起始字符       */
            }
            temp = temp1;
        }
        Sum = STARTBYTE1 + STARTBYTE2;
        
        for (i = 0; i < 5; i++)                 /* 接收數(shù)據(jù)包           */
        {
            OSQPend(&temp1, SerialInData, 0);
            Alarm[i] = temp1;
            Sum += temp1;
        }

        OSQPend(&temp1, SerialInData, 0);       /* 接收校驗(yàn)和           */
        Sum += temp1;
        if (Sum == 0)                           /* 檢驗(yàn)接收到的數(shù)據(jù)包   */
        {                                       /* 發(fā)送消息給主任務(wù)     */
            OSQIntPost(CommandData, Alarm[0]);
        }
    }
}

/*********************************************************************************************************
** 函數(shù)名稱: comm
** 功能描述: 串口中斷處理程序
** 輸 入: 無(wú)
** 輸 出: 無(wú)
** 全局變量: 無(wú)
** 調(diào)用模塊: 無(wú)
**
** 作 者: 陳明計(jì)
** 日 期: 2003年3月25日
**-------------------------------------------------------------------------------------------------------
** 修改人: 陳明計(jì)
** 日 期: 2003年8月31日
**------------------------------------------------------------------------------------------------------
********************************************************************************************************/
#pragma disable                                        /* 除非最高優(yōu)先級(jí)中斷,否則,必須加上這一句                 */
		void comm(void) interrupt 4
{
    uint8 data temp;
	if (RI == 1)
	{
        OS_INT_ENTER();
		RI = 0;
        OSQIntPost(SerialInData,SBUF);
        OSIntExit();
		return;
	}
	if (TI == 1)
	{
		TI = 0;
		if (OSQAccept(&temp,SerialOutData) == OS_Q_OK)
		{
		    SBUF = temp;
		}
		else
		{
		    SerialCanSend = 1;
		}
	}
}

/**********************end****************************************/

?? 快捷鍵說(shuō)明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
精品黑人一区二区三区久久| 色综合久久久久网| 日韩午夜激情电影| 蜜桃视频在线观看一区二区| 日韩欧美视频一区| 国产精品一二三| 国产精品不卡视频| 在线亚洲免费视频| 日本色综合中文字幕| 久久综合成人精品亚洲另类欧美| 国产高清亚洲一区| 亚洲黄网站在线观看| 欧美精品久久一区| 国产精品中文欧美| 亚洲九九爱视频| 91精品国产色综合久久不卡电影 | 欧美一级理论性理论a| 久久av老司机精品网站导航| 国产欧美精品一区aⅴ影院| 99re8在线精品视频免费播放| 亚洲永久免费视频| 久久久久久久性| 在线观看日韩精品| 精品在线观看视频| 亚洲另类色综合网站| 91精品国产aⅴ一区二区| 国产成人免费在线| 亚洲电影一级黄| 久久精品一区二区三区av| 91国偷自产一区二区三区观看| 奇米亚洲午夜久久精品| 成人欧美一区二区三区| 性做久久久久久免费观看| 精品剧情v国产在线观看在线| 91浏览器在线视频| 精品一区二区三区在线观看 | 欧美亚洲国产一区在线观看网站| 日本成人在线网站| 亚洲视频一区二区在线观看| 精品少妇一区二区三区在线视频| 一本大道久久a久久综合| 精久久久久久久久久久| 一区二区三区波多野结衣在线观看| 精品免费视频.| 欧美日韩一区二区三区四区五区 | 在线不卡免费欧美| 成人福利视频在线看| 久久国产精品露脸对白| 亚洲综合999| 国产精品久久久久影视| 久久中文娱乐网| 欧美日韩大陆在线| 国产真实乱子伦精品视频| 欧美区一区二区三区| 成人av在线观| 国产乱码精品一区二区三区av| 日本视频在线一区| 亚洲男女一区二区三区| 国精产品一区一区三区mba桃花| 日韩欧美在线网站| 欧美性高清videossexo| 91精品啪在线观看国产60岁| 精品国产成人系列| 亚洲欧洲另类国产综合| 亚洲一区二区欧美激情| 老司机免费视频一区二区三区| 国产精品99久久久| 在线免费一区三区| 欧美电影免费观看完整版| 国产欧美一区二区精品仙草咪| 综合色中文字幕| 日韩高清不卡一区二区三区| 国产成人综合网| 色婷婷综合久久久久中文一区二区| 欧美群妇大交群的观看方式| 久久综合九色综合欧美亚洲| 综合激情网...| 蜜臀va亚洲va欧美va天堂| 成人国产免费视频| 7777精品伊人久久久大香线蕉的| 久久精品人人爽人人爽| 一区二区三区中文在线| 激情av综合网| 欧美亚洲禁片免费| 久久久久久夜精品精品免费| 一区二区欧美在线观看| 韩国av一区二区三区| 91久久精品一区二区| 精品国产乱码久久| 亚洲成人午夜影院| 成人av小说网| 欧美xingq一区二区| 一区二区三区精品视频| 国产成人丝袜美腿| 欧美一级在线免费| 亚洲精品国产精华液| 国产精品亚洲一区二区三区妖精| 欧美在线制服丝袜| 国产女人aaa级久久久级| 蜜芽一区二区三区| 91精品办公室少妇高潮对白| 久久久综合九色合综国产精品| 亚洲电影视频在线| 91在线免费看| 欧美经典三级视频一区二区三区| 日韩电影网1区2区| 色妞www精品视频| 国产精品国产馆在线真实露脸| 久久精品久久精品| 91精品免费在线| 亚洲国产精品人人做人人爽| 91网站视频在线观看| 国产清纯在线一区二区www| 精品一区二区三区日韩| 69堂亚洲精品首页| 亚洲国产综合人成综合网站| 成人h精品动漫一区二区三区| 久久影音资源网| 精品一区免费av| 欧美成人a在线| 蜜桃视频一区二区三区在线观看| 精品视频免费看| 亚洲综合999| 欧美日韩一区视频| 一区二区三区日韩精品| 色综合久久88色综合天天6| 亚洲国产成人在线| 成人动漫一区二区| 欧美国产日产图区| 99久久亚洲一区二区三区青草| 国产情人综合久久777777| 国产乱子伦一区二区三区国色天香 | 亚洲一卡二卡三卡四卡| 91免费国产在线| 亚洲精品午夜久久久| 91视频国产观看| 一区二区三区四区五区视频在线观看| 成人av电影免费观看| 中文字幕一区二区在线观看| 不卡一二三区首页| 亚洲女与黑人做爰| 欧美亚洲国产bt| 香蕉成人啪国产精品视频综合网| 欧美性欧美巨大黑白大战| 亚洲成人动漫精品| 欧美精选午夜久久久乱码6080| 亚洲国产精品久久艾草纯爱| 911国产精品| 免费观看成人鲁鲁鲁鲁鲁视频| 欧美巨大另类极品videosbest| 青青草97国产精品免费观看无弹窗版 | 91精品国产一区二区人妖| 日本女优在线视频一区二区| 欧美大胆人体bbbb| 成人综合婷婷国产精品久久蜜臀| 国产精品九色蝌蚪自拍| 在线这里只有精品| 日韩av中文在线观看| 亚洲精品一区二区在线观看| 懂色av噜噜一区二区三区av| 亚洲美女偷拍久久| 7777精品伊人久久久大香线蕉经典版下载 | 欧美一级黄色录像| 国产精品白丝jk白祙喷水网站| 国产精品传媒视频| 欧美三级在线视频| 狠狠久久亚洲欧美| 中文一区二区在线观看| 欧美在线观看你懂的| 久久99最新地址| 亚洲色图第一区| 日韩精品中文字幕在线不卡尤物| 国产成人在线电影| 亚洲国产日韩a在线播放性色| 日韩欧美精品三级| 91在线观看一区二区| 视频在线观看一区| 欧美激情一区三区| 欧美日韩电影在线| 成人免费va视频| 日韩精品久久久久久| 日本一区二区动态图| 欧美美女视频在线观看| 国产成人亚洲综合a∨猫咪| 亚洲国产视频一区二区| 国产日产欧美一区| 91精品国产日韩91久久久久久| www.日韩av| 激情综合网激情| 亚洲电影中文字幕在线观看| 久久久久久毛片| 91精品啪在线观看国产60岁| 成人app下载| 久久99精品一区二区三区三区| 亚洲欧美另类久久久精品2019| 日韩美女在线视频| 欧美天堂亚洲电影院在线播放| 丰满放荡岳乱妇91ww| 日本免费新一区视频 | 久久www免费人成看片高清|