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

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

?? probe_rs232.c

?? ucos2.86版本結合STM板極支持包
?? C
?? 第 1 頁 / 共 3 頁
字號:


        case PROBE_RS232_TX_STATE_LEN1:                             /* Transmit first  length byte                          */
             tx_data             = ProbeRS232_TxLen & 0xFF;
             ProbeRS232_Tx1(tx_data);
             ProbeRS232_TxCtr++;                                    /*  ... Increment Tx counter                            */
             ProbeRS232_TxState  = PROBE_RS232_TX_STATE_LEN2;
             ProbeRS232_TxChkSum = tx_data;
             break;

        case PROBE_RS232_TX_STATE_LEN2:                             /* Transmit second length byte                          */
             tx_data              = ProbeRS232_TxLen >> 8;
             ProbeRS232_Tx1(tx_data);
             ProbeRS232_TxCtr++;                                    /*  ... Increment Tx counter                            */
             ProbeRS232_TxState   = PROBE_RS232_TX_STATE_PAD1;
             ProbeRS232_TxChkSum += tx_data;
             break;


        case PROBE_RS232_TX_STATE_PAD1:                             /* Transmit first  padding byte                         */
             ProbeRS232_Tx1(0);
             ProbeRS232_TxCtr++;                                    /*  ... Increment Tx counter                            */
             ProbeRS232_TxState = PROBE_RS232_TX_STATE_PAD2;
             break;

        case PROBE_RS232_TX_STATE_PAD2:                             /* Transmit second padding byte                         */
             ProbeRS232_Tx1(0);
             ProbeRS232_TxCtr++;                                    /*  ... Increment Tx counter                            */
             ProbeRS232_TxState = PROBE_RS232_TX_STATE_DATA;
             break;


        case PROBE_RS232_TX_STATE_DATA:                             /* Transmit data                                        */
             tx_data = ProbeRS232_TxBuf[ProbeRS232_TxBufRdIx];
             ProbeRS232_Tx1(tx_data);
             ProbeRS232_TxCtr++;                                    /*  ... Increment Tx counter                            */
             ProbeRS232_TxChkSum += tx_data;
             ProbeRS232_TxBufRdIx++;
             if (ProbeRS232_TxBufRdIx >= ProbeRS232_TxLen) {        /* ... If all data has been sent                        */
                 ProbeRS232_TxState = PROBE_RS232_TX_STATE_CHKSUM;
                 ProbeRS232_TxLen   = 0;
             }
             break;


        case PROBE_RS232_TX_STATE_CHKSUM:                           /* Transmit checksum                                    */
             ProbeRS232_Tx1(ProbeRS232_TxChkSum);
             ProbeRS232_TxCtr++;                                    /*  ... Increment Tx counter                            */
             ProbeRS232_TxState = PROBE_RS232_TX_STATE_ED;
             break;


        case PROBE_RS232_TX_STATE_ED:                               /* Transmit end delimiter                               */
             ProbeRS232_Tx1(PROBE_RS232_PROTOCOL_TX_ED);
             ProbeRS232_TxCtr++;
             ProbeRS232_TxState    = PROBE_RS232_TX_STATE_SD0;
             ProbeRS232_TxBufInUse = DEF_FALSE;
             ProbeRS232_TxPktCtr++;
             break;


        default:
             ProbeRS232_TxState      = PROBE_RS232_TX_STATE_SD0;
             ProbeRS232_TxActiveFlag = DEF_FALSE;
             ProbeRS232_TxIntDis();                                 /* No more data to send, disable Tx interrupts          */
             break;
    }
}


/*
*********************************************************************************************************
*********************************************************************************************************
**                                  Static Packet-Handling Functions
*********************************************************************************************************
*********************************************************************************************************
*/

/*
*********************************************************************************************************
*                                         Parse Receive Packet
*
* Description: This routine is called after a complete packet has been received.
*
* Argument(s): None.
*
* Returns    : The number of bytes in the data segment of the packet to transmit in response.
*********************************************************************************************************
*/

static  CPU_INT16U  ProbeRS232_ParseRxPkt (void)
{
    CPU_INT16U  temp;


    if (ProbeRS232_TxBufInUse == DEF_TRUE) {                        /* Do cmds only if Tx buffer is free                    */
        return (0);
    }

    ProbeRS232_TxBufInUse = DEF_TRUE;
    temp                  = ProbeCom_ParseRxPkt((void *)ProbeRS232_RxBuf,
                                                (void *)ProbeRS232_TxBuf,
                                                        ProbeRS232_RxLen,
                                                        PROBE_RS232_TX_BUF_SIZE);

    return (temp);
}


/*
*********************************************************************************************************
*********************************************************************************************************
**                                         Static Rx Functions
*********************************************************************************************************
*********************************************************************************************************
*/

/*
*********************************************************************************************************
*                                        PROCESS RECEIVED PACKET
*
* Description: This function is called when a packet has been received and needs to be processed.
*
* Argument(s): None.
*
* Returns    : None.
*********************************************************************************************************
*/

static  void  ProbeRS232_RxPkt (void)
{
#if (PROBE_RS232_PARSE_TASK > 0)
    ProbeRS232_OS_Post();                                           /* We have a whole packet, signal task to parse it      */



#else



#if (CPU_CFG_CRITICAL_METHOD == CPU_CRITICAL_METHOD_STATUS_LOCAL)
    CPU_SR      cpu_sr = 0;
#endif
    CPU_INT16U  len;


    len = ProbeRS232_ParseRxPkt();                                  /* We have a whole packet, parse it                     */
    if (len > 0) {
        CPU_CRITICAL_ENTER();
        ProbeRS232_TxLen = len;
        ProbeRS232_TxStart();
        CPU_CRITICAL_EXIT();
    }
#endif
}


/*
*********************************************************************************************************
*                                   STORE DATA IN Rx DATA SEGMENT BUFFER
*
* Description: This routine is called whenever a valid byte of a packet's data segment has been received.
*
* Argument(s): rx_data  is a byte of data to store in the buffer.
*
* Returns    : None.
*********************************************************************************************************
*/

static  void  ProbeRS232_RxStoINT8U (CPU_INT08U rx_data)
{
    if (ProbeRS232_RxBufWrIx < PROBE_RS232_RX_BUF_SIZE) {
        ProbeRS232_RxBuf[ProbeRS232_RxBufWrIx++] = rx_data;
    }
}


/*
*********************************************************************************************************
*                                           CLEAR Rx BUFFER
*
* Description: This routine clears the data segment buffer write index.
*
* Argument(s): None.
*
* Returns    : None.
*********************************************************************************************************
*/

static  void  ProbeRS232_RxBufClr (void)
{
    ProbeRS232_RxBufWrIx = 0;
}


/*
*********************************************************************************************************
*********************************************************************************************************
**                                       Static Tx Functions
*********************************************************************************************************
*********************************************************************************************************
*/

/*
*********************************************************************************************************
*                                        START TRANSMISSION
*
* Description: This routine causes transmission to begin.
*
* Argument(s): None.
*
* Returns    : None.
*********************************************************************************************************
*/

static  void  ProbeRS232_TxStart (void)
{
    if (ProbeRS232_TxActiveFlag == DEF_FALSE) {                     /* If no other transmission is in progress              */
        ProbeRS232_TxHandler();                                     /*  ... Handle transmit                                 */
        ProbeRS232_TxIntEn();                                       /*  ... Enable transmit interrupts                      */
    }
}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
99在线视频精品| 日韩一区二区三区四区五区六区| 欧美亚洲综合色| 国产欧美日韩久久| 日本不卡高清视频| 91尤物视频在线观看| 26uuu成人网一区二区三区| 亚洲一区自拍偷拍| av电影一区二区| 精品国产乱码久久久久久浪潮| 一区二区三区视频在线看| 成人妖精视频yjsp地址| 精品久久久久久久久久久久包黑料| 亚洲精品老司机| 94色蜜桃网一区二区三区| 久久精品综合网| 国内精品视频666| 日韩欧美中文一区二区| 日韩在线观看一区二区| 欧美自拍偷拍一区| 亚洲另类色综合网站| av不卡一区二区三区| 亚洲国产精品传媒在线观看| 久久99精品视频| 91精品国产91久久久久久最新毛片| 亚洲精品高清视频在线观看| 97久久超碰国产精品| 国产精品福利一区二区| 懂色av一区二区夜夜嗨| 欧美国产精品久久| 国产大片一区二区| 蜜桃在线一区二区三区| 精品视频在线免费看| 亚洲一区二区三区自拍| 欧美日韩中字一区| 日韩精品每日更新| 日韩欧美一级二级| 国内精品在线播放| 中文字幕第一区综合| 波多野结衣一区二区三区 | 日韩精品在线一区二区| 秋霞国产午夜精品免费视频| 日韩一区二区三区精品视频| 男女性色大片免费观看一区二区| 日韩三级中文字幕| 国产一区二区三区在线看麻豆| 久久久久青草大香线综合精品| 国产精品1区2区| 国产精品三级av在线播放| 91亚洲男人天堂| 婷婷丁香激情综合| 日韩欧美区一区二| 成人激情动漫在线观看| 亚洲免费伊人电影| 日韩一级二级三级精品视频| 国产一区二区久久| 亚洲免费在线观看| 91精品国产入口| 粉嫩av一区二区三区在线播放| 亚洲视频在线观看一区| 欧美午夜精品久久久| 久久激情综合网| 中文字幕在线一区| 69久久夜色精品国产69蝌蚪网| 黄色小说综合网站| 1区2区3区欧美| 欧美一区二区三区性视频| 国产成人综合精品三级| 亚洲国产精品自拍| 国产婷婷一区二区| 欧美人与禽zozo性伦| 国产一区二区三区最好精华液| 亚洲女同女同女同女同女同69| 日韩欧美美女一区二区三区| 99久久精品国产精品久久 | 亚洲成人综合在线| 国产人久久人人人人爽| 欧美日本精品一区二区三区| 国产精选一区二区三区| 亚洲不卡一区二区三区| 国产精品乱码久久久久久 | 欧美三片在线视频观看 | 日韩美女久久久| 亚洲成人av中文| 国产精品区一区二区三区| 宅男在线国产精品| 91麻豆成人久久精品二区三区| 国产在线观看一区二区| 亚洲午夜精品在线| 国产精品成人免费精品自在线观看| 91精品国产免费久久综合| 97se亚洲国产综合自在线观| 国产精品中文欧美| 美洲天堂一区二卡三卡四卡视频 | 在线观看一区二区视频| 风间由美一区二区av101 | 成av人片一区二区| 国产一区在线视频| 精品在线视频一区| 看片网站欧美日韩| 日韩精品免费视频人成| 午夜视频在线观看一区二区三区| 亚洲日本电影在线| 国产精品久久久久久妇女6080| 欧美精品一区在线观看| 欧美一区二区免费观在线| 欧美系列亚洲系列| 在线观看日韩电影| 精品视频一区二区不卡| 在线观看一区日韩| 91久久精品午夜一区二区| 91视视频在线观看入口直接观看www| 粉嫩久久99精品久久久久久夜 | 日韩精品电影在线| 亚洲国产成人91porn| 亚洲第一狼人社区| 午夜不卡av免费| 奇米综合一区二区三区精品视频| 亚洲精品视频在线| 亚洲国产成人高清精品| 日日摸夜夜添夜夜添精品视频| 午夜精品国产更新| 日本va欧美va精品| 韩国三级在线一区| 福利电影一区二区| 色香色香欲天天天影视综合网| 欧美一a一片一级一片| 欧美日韩亚洲丝袜制服| 555www色欧美视频| 亚洲精品在线电影| 国产精品视频观看| 亚洲黄色小说网站| 五月天中文字幕一区二区| 奇米精品一区二区三区在线观看 | 久久久影院官网| 国产精品乱人伦| 亚洲一区二区四区蜜桃| 久久精品国产秦先生| 春色校园综合激情亚洲| 91成人国产精品| 日韩精品一区二区三区老鸭窝| 久久久精品国产99久久精品芒果 | 国产亚洲综合色| 自拍偷拍国产精品| 日韩中文字幕区一区有砖一区 | 91精品国产综合久久蜜臀| 日韩欧美国产1| 欧美国产日韩一二三区| 亚洲国产综合色| 国产激情一区二区三区| 色屁屁一区二区| 久久亚洲精品小早川怜子| 亚洲综合一区二区精品导航| 蜜桃免费网站一区二区三区| hitomi一区二区三区精品| 欧美精品在线观看播放| 国产免费久久精品| 日韩在线播放一区二区| www.亚洲国产| 精品日韩99亚洲| 亚洲制服丝袜一区| 国产成人综合亚洲网站| 欧美区一区二区三区| 国产精品日日摸夜夜摸av| 天天综合色天天综合| av电影在线观看完整版一区二区 | 正在播放亚洲一区| 亚洲同性gay激情无套| 狠狠色狠狠色综合日日91app| 在线亚洲+欧美+日本专区| 久久久噜噜噜久久中文字幕色伊伊| 性久久久久久久| 91农村精品一区二区在线| 久久久久久久久久久久久久久99| 亚洲一区二区欧美| av不卡在线观看| 久久精品人人做| 精品一区二区三区在线观看国产| 91看片淫黄大片一级在线观看| 久久久精品免费免费| 久久国产日韩欧美精品| 欧美放荡的少妇| 亚洲国产欧美在线人成| 色综合婷婷久久| 国产精品的网站| 丁香婷婷综合激情五月色| 久久嫩草精品久久久精品| 久久精品99国产国产精| 欧美一区二区久久| 亚洲成人av免费| 欧美专区日韩专区| 亚洲午夜免费电影| 色综合天天在线| 亚洲人成亚洲人成在线观看图片 | 一级特黄大欧美久久久| 91色婷婷久久久久合中文| 国产精品国模大尺度视频| av在线不卡免费看| 亚洲三级在线观看| 一本色道亚洲精品aⅴ|