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

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

?? probe_com.c

?? 飛思卡爾HCS12的OS移植(ucosII),實(shí)現(xiàn)了三個(gè)任務(wù),IDE:CODEWARRIOR
?? C
?? 第 1 頁 / 共 5 頁
字號(hào):
static  CPU_INT16U   ProbeCom_CmdMultipleRd  (CPU_INT08U   *prx_buf,
                                              CPU_INT08U   *ptx_buf,
                                              CPU_INT16U    rx_pkt_size,
                                              CPU_INT16U    tx_buf_size);

#if (PROBE_COM_SUPPORT_WR == DEF_TRUE)
static  CPU_INT16U   ProbeCom_CmdSimpleWr    (CPU_INT08U   *prx_buf,
                                              CPU_INT08U   *ptx_buf,
                                              CPU_INT16U    rx_pkt_size,
                                              CPU_INT16U    tx_buf_size);

static  CPU_INT16U   ProbeCom_CmdMultipleWr  (CPU_INT08U   *prx_buf,
                                              CPU_INT08U   *ptx_buf,
                                              CPU_INT16U    rx_pkt_size,
                                              CPU_INT16U    tx_buf_size);
#endif

#if (PROBE_COM_SUPPORT_STR == DEF_TRUE)
static  CPU_INT16U   ProbeCom_CmdStrRd       (CPU_INT08U   *prx_buf,
                                              CPU_INT08U   *ptx_buf,
                                              CPU_INT16U    rx_pkt_size,
                                              CPU_INT16U    tx_buf_size);

static  CPU_INT16U   ProbeCom_CmdStrWr       (CPU_INT08U   *prx_buf,
                                              CPU_INT08U   *ptx_buf,
                                              CPU_INT16U    rx_pkt_size,
                                              CPU_INT16U    tx_buf_size);
#endif

#if (PROBE_COM_SUPPORT_TELEMETRY == DEF_TRUE)
static  CPU_INT16U   ProbeCom_CmdTelemetryGet(CPU_INT08U   *prx_buf,
                                              CPU_INT08U   *ptx_buf,
                                              CPU_INT16U    rx_pkt_size,
                                              CPU_INT16U    tx_buf_size);
#endif


                                                                /* ------------------- RD FROM RX PKT ----------------- */
static  CPU_INT08U   ProbeCom_GetINT8U       (CPU_INT08U  **pbuf);

static  CPU_INT16U   ProbeCom_GetINT16U      (CPU_INT08U  **pbuf);

static  CPU_INT32U   ProbeCom_GetINT32U      (CPU_INT08U  **pbuf);

                                                                /* -------------------- WR TO TX BUF ----------------- */
static  void         ProbeCom_StoINT8U       (CPU_INT08U  **pbuf,
                                              CPU_INT08U    data);

static  void         ProbeCom_StoINT16U      (CPU_INT08U  **pbuf,
                                              CPU_INT16U    data);

#if (PROBE_COM_SUPPORT_TELEMETRY == DEF_TRUE)
static  void         ProbeCom_StoINT32U      (CPU_INT08U  **pbuf,
                                              CPU_INT32U    data);
#endif

                                                                /* -------------- DETERMINE PKT MODIFIER -------------- */
#if (PROBE_COM_SUPPORT_STR == DEF_TRUE)
static  CPU_BOOLEAN  ProbeCom_StrRdy         (void);
#endif

#if (PROBE_COM_SUPPORT_TELEMETRY == DEF_TRUE)
static  CPU_BOOLEAN  ProbeCom_TelemetryRdy   (void);
static  void         ProbeCom_TelemetryInit  (void);
#endif


/*
*********************************************************************************************************
*                                     LOCAL CONFIGURATION ERRORS
*********************************************************************************************************
*/


/*
*********************************************************************************************************
*********************************************************************************************************
**                                          GLOBAL FUNCTIONS
*********************************************************************************************************
*********************************************************************************************************
*/

/*
*********************************************************************************************************
*                                           ProbeCom_Init()
*
* Description : Initialize the module.
*
* Argument(s) : none.
*
* Return(s)   : none.
*
* Caller(s)   : Application.
*
* Note(s)     : none.
*********************************************************************************************************
*/

void  ProbeCom_Init (void)
{
#if (PROBE_COM_SUPPORT_STR == DEF_TRUE)
    ProbeCom_StrBufWrIx = 0;
    ProbeCom_StrBufRdIx = 0;

    ProbeCom_OS_Init();
#endif

#if (PROBE_COM_SUPPORT_TELEMETRY == DEF_TRUE)
    ProbeCom_TelemetryInit();
#endif

#if (PROBE_COM_STAT_EN == DEF_ENABLED)
    ProbeCom_RxPktCtr     = 0;
    ProbeCom_TxPktCtr     = 0;
    ProbeCom_TxSymCtr     = 0;
    ProbeCom_TxSymByteCtr = 0;
    ProbeCom_ErrPktCtr    = 0;

#if (PROBE_COM_SUPPORT_STR == DEF_TRUE)
    ProbeCom_TxStrCtr     = 0;
#endif

#if (PROBE_COM_SUPPORT_WR == DEF_TRUE)
    ProbeCom_RxSymCtr     = 0;
    ProbeCom_RxSymByteCtr = 0;
#endif
#endif

    ProbeCom_EndiannessTest = 0x12345678L;

    ProbeCom_InfoHndlr      = (PROBE_COM_INFO_HDNLR_FNCT)0;
#if (PROBE_COM_SUPPORT_STR == DEF_TRUE)
    ProbeCom_StrHndlr       = (PROBE_COM_STR_HDNLR_FNCT )0;
#endif
}


/*
*********************************************************************************************************
*                                         ProbeCom_ParseRxPkt()
*
* Description : Parse a packet & formulate a response.
*
* Argument(s) : prx_pkt         Pointer to the receive  packet buffer
*
*               ptx_pkt         Pointer to the transmit packet buffer
*
*               rx_pkt_size     Size of the received packet
*
*               tx_pkt_size     Size of the transmit packet buffer
*
* Return(s)   : The number of bytes in the data segment of the packet to transmit in response.
*
* Caller(s)   : Tasks/receive handlers in communications-specific drivers, e.g., probe_rs232,
*               probe_usb, probe_tcpip, etc.).
*
* Note(s)     : none.
*********************************************************************************************************
*/

CPU_INT16U  ProbeCom_ParseRxPkt (void        *prx_pkt,
                                 void        *ptx_pkt,
                                 CPU_INT16U   rx_pkt_size,
                                 CPU_INT16U   tx_buf_size)
{
    CPU_INT16U   tx_buf_wr;
    CPU_INT16U   format;
    CPU_INT08U  *prx_pkt_08;
    CPU_INT08U  *ptx_pkt_08;


    if (rx_pkt_size < 2) {
        return (0);
    }

    prx_pkt_08  = (CPU_INT08U *)prx_pkt;
    ptx_pkt_08  = (CPU_INT08U *)ptx_pkt;
    format      = (prx_pkt_08[1] << 8) + prx_pkt_08[0];
    prx_pkt_08 += 2;

#if (PROBE_COM_STAT_EN == DEF_ENABLED)
    ProbeCom_RxPktCtr++;
    ProbeCom_TxPktCtr++;
#endif

    switch (format) {
        case PROBE_COM_FMT_RX_QUERY:
             tx_buf_wr = ProbeCom_CmdQuery(       prx_pkt_08, ptx_pkt_08, rx_pkt_size, tx_buf_size);
             break;

        case PROBE_COM_FMT_RX_INFO:
             tx_buf_wr = ProbeCom_CmdInfo(        prx_pkt_08, ptx_pkt_08, rx_pkt_size, tx_buf_size);
             break;

        case PROBE_COM_FMT_RX_SIMPLE_RD:
             tx_buf_wr = ProbeCom_CmdSimpleRd(    prx_pkt_08, ptx_pkt_08, rx_pkt_size, tx_buf_size);
             break;

        case PROBE_COM_FMT_RX_MULTIPLE_RD:
             tx_buf_wr = ProbeCom_CmdMultipleRd(  prx_pkt_08, ptx_pkt_08,  rx_pkt_size, tx_buf_size);
             break;

#if (PROBE_COM_SUPPORT_WR == DEF_TRUE)
        case PROBE_COM_FMT_RX_SIMPLE_WR:
             tx_buf_wr = ProbeCom_CmdSimpleWr(    prx_pkt_08, ptx_pkt_08, rx_pkt_size, tx_buf_size);
             break;

        case PROBE_COM_FMT_RX_MULTIPLE_WR:
             tx_buf_wr = ProbeCom_CmdMultipleWr(  prx_pkt_08, ptx_pkt_08, rx_pkt_size, tx_buf_size);
             break;
#endif

#if (PROBE_COM_SUPPORT_STR == DEF_TRUE)
        case PROBE_COM_FMT_RX_STR_RD:
             tx_buf_wr = ProbeCom_CmdStrRd(       prx_pkt_08, ptx_pkt_08,  rx_pkt_size, tx_buf_size);
             break;

        case PROBE_COM_FMT_RX_STR_WR:
             tx_buf_wr = ProbeCom_CmdStrWr(       prx_pkt_08, ptx_pkt_08,  rx_pkt_size, tx_buf_size);
             break;
#endif

#if (PROBE_COM_SUPPORT_TELEMETRY == DEF_TRUE)
        case PROBE_COM_FMT_RX_TELEMETRY_GET:
             tx_buf_wr = ProbeCom_CmdTelemetryGet(prx_pkt_08, ptx_pkt_08,  rx_pkt_size, tx_buf_size);
             break;
#endif

        default:
             tx_buf_wr = ProbeCom_CmdErr  (                   ptx_pkt_08,  PROBE_COM_STATUS_UNKNOWN_REQUEST);
             break;
    }

    return (tx_buf_wr);
}


/*
*********************************************************************************************************
*                                         ProbeCom_InfoHndlrSet()
*
* Description : Set the handler that will be invoked when an info packet is received.
*
* Argument(s) : hndlr           The handler that will be invoked.
*
* Return(s)   : none.
*
* Caller(s)   : Application or communications-specific driver.
*
* Note(s)     : none.
*********************************************************************************************************
*/

void  ProbeCom_InfoHndlrSet (PROBE_COM_INFO_HDNLR_FNCT  hndlr)
{
#if (CPU_CFG_CRITICAL_METHOD == CPU_CRITICAL_METHOD_STATUS_LOCAL)
    CPU_SR  cpu_sr;
#endif


    CPU_CRITICAL_ENTER();
    ProbeCom_InfoHndlr = hndlr;
    CPU_CRITICAL_EXIT();
}


/*
*********************************************************************************************************
*                                         ProbeCom_StrHndlrSet()
*
* Description : Set the handler that will be invoked when an string write packet is received.
*
* Argument(s) : hndlr           The handler that will be invoked.
*
* Return(s)   : none.
*
* Caller(s)   : Application or communications-specific driver.
*
* Note(s)     : none.
*********************************************************************************************************
*/

#if (PROBE_COM_SUPPORT_STR == DEF_TRUE)
void  ProbeCom_StrHndlrSet (PROBE_COM_STR_HDNLR_FNCT  hndlr)
{
#if (CPU_CFG_CRITICAL_METHOD == CPU_CRITICAL_METHOD_STATUS_LOCAL)
    CPU_SR  cpu_sr;
#endif


    CPU_CRITICAL_ENTER();
    ProbeCom_StrHndlr = hndlr;
    CPU_CRITICAL_EXIT();
}
#endif

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
2014亚洲片线观看视频免费| 一片黄亚洲嫩模| 成人免费小视频| 香蕉加勒比综合久久| 国产成人精品免费在线| 欧美人成免费网站| 亚洲乱码国产乱码精品精的特点 | 亚洲色图欧洲色图婷婷| 视频一区在线播放| 成+人+亚洲+综合天堂| 久久一日本道色综合| 日韩一区精品字幕| 欧美在线一二三四区| 国产免费成人在线视频| 美国av一区二区| 欧美精品色综合| 一区二区三区91| 色综合av在线| 国产精品理论片在线观看| 久久av中文字幕片| 日韩视频在线你懂得| 五月婷婷色综合| 欧美日韩在线播| 一区二区三区日韩精品视频| 99视频精品在线| 国产精品毛片大码女人| 国产精品一区二区黑丝| 精品国产污网站| 韩国欧美国产一区| 久久美女高清视频| 国模套图日韩精品一区二区| 精品福利一区二区三区 | 国产精品日韩成人| 国产精品中文欧美| 久久久久高清精品| 福利视频网站一区二区三区| 国产午夜精品理论片a级大结局| 国内成人自拍视频| 中文一区二区完整视频在线观看| 国产精品亚洲第一区在线暖暖韩国| 精品成人私密视频| 国产馆精品极品| 欧美国产日韩亚洲一区| 国产.欧美.日韩| 国产精品国产三级国产普通话蜜臀| 成人中文字幕在线| 成人欧美一区二区三区小说 | 久久综合给合久久狠狠狠97色69| 韩国成人福利片在线播放| 欧美一区二区视频在线观看2022 | 欧美一区二区三区在线观看| 青草av.久久免费一区| 欧美精品一区二区三区很污很色的 | av日韩在线网站| 一区二区在线观看视频| 欧美日韩成人一区| 激情六月婷婷久久| 亚洲色图制服诱惑 | 国产精品国模大尺度视频| av动漫一区二区| 亚洲一区二区三区四区不卡| 8v天堂国产在线一区二区| 激情五月激情综合网| 国产精品久久毛片a| 欧美图片一区二区三区| 精品一区二区三区视频在线观看| 欧美激情一区不卡| 欧美日韩精品一区二区天天拍小说 | 国产人久久人人人人爽| 日本丶国产丶欧美色综合| 日本女人一区二区三区| 国产精品天天看| 欧美一区二区网站| 波多野结衣在线aⅴ中文字幕不卡 波多野结衣在线一区 | 国产日本亚洲高清| 欧美欧美欧美欧美首页| 高清成人免费视频| 亚洲国产一区二区在线播放| 26uuu久久天堂性欧美| 99综合影院在线| 精品在线亚洲视频| 午夜在线电影亚洲一区| 国产日韩欧美a| 日韩一二三区视频| 91论坛在线播放| 国产激情91久久精品导航| 亚洲国产一区二区视频| 国产精品国产自产拍高清av| 欧美一区二区不卡视频| 在线国产亚洲欧美| 91网站在线播放| 老司机精品视频导航| 污片在线观看一区二区| 1区2区3区欧美| 久久精品人人做| 欧美不卡视频一区| 色88888久久久久久影院按摩| 精品一区二区免费看| 亚洲精品v日韩精品| 国产欧美一区二区在线| 欧美精品一区二区在线播放 | 不卡大黄网站免费看| 精品一区二区精品| 日韩精品免费专区| 亚洲成av人片观看| 亚洲综合丝袜美腿| 亚洲激情图片qvod| 日韩理论片一区二区| 国产女人18毛片水真多成人如厕| 2014亚洲片线观看视频免费| 日韩欧美亚洲一区二区| 欧美一卡二卡三卡| 4438亚洲最大| 日韩欧美综合一区| 日韩欧美专区在线| 精品奇米国产一区二区三区| 日韩一区国产二区欧美三区| 欧美色视频在线| 91精品国产丝袜白色高跟鞋| 7777女厕盗摄久久久| 欧美一区二区精美| 欧美精品一区视频| 国产欧美日韩三级| 国产精品成人午夜| 亚洲乱码国产乱码精品精可以看 | 国产日韩精品一区二区三区 | 欧美日韩在线直播| 在线播放日韩导航| 欧美一级精品大片| 久久综合久久综合久久| 国产精品你懂的在线| 亚洲麻豆国产自偷在线| 午夜精品久久久久久久| 日韩黄色小视频| 韩国一区二区三区| 不卡一区二区三区四区| 色婷婷亚洲精品| 欧美一区二区成人6969| 国产日韩精品一区| 亚洲一二三专区| 精品一区二区久久久| 成人一区在线看| 91电影在线观看| 精品美女在线播放| 亚洲欧美另类在线| 卡一卡二国产精品 | 国产精品成人一区二区艾草 | 国产精品久久久久久久久久久免费看| 国产精品久久久久aaaa| 午夜不卡在线视频| 成人h动漫精品| 在线观看91精品国产麻豆| 国产欧美日韩麻豆91| 一区二区三区高清不卡| 韩国成人在线视频| 欧美日韩精品欧美日韩精品一| 精品美女一区二区三区| 亚洲女子a中天字幕| 日韩高清一区二区| 99国产精品久| 26uuu亚洲婷婷狠狠天堂| 亚洲精品免费一二三区| 国产精品自产自拍| 69堂成人精品免费视频| 国产精品二三区| 激情av综合网| 欧美日韩国产另类不卡| 中文字幕一区二区三区四区不卡| 亚洲国产综合91精品麻豆| 国产成人免费视频 | 欧美色综合影院| 国产精品蜜臀av| 老色鬼精品视频在线观看播放| 欧美午夜精品久久久久久超碰| 久久精品亚洲一区二区三区浴池| 日韩不卡一区二区三区| 色88888久久久久久影院按摩 | 久久精品久久精品| 欧美日韩高清一区二区不卡 | 337p日本欧洲亚洲大胆精品| 婷婷丁香久久五月婷婷| 色婷婷一区二区三区四区| 国产精品网站在线| 国产精品一卡二卡在线观看| 欧美一级日韩一级| 午夜激情综合网| 欧美吻胸吃奶大尺度电影| 亚洲色大成网站www久久九九| 国内精品免费在线观看| 69av一区二区三区| 首页欧美精品中文字幕| 欧美日韩在线不卡| 性久久久久久久久| 欧美日韩aaa| 天堂蜜桃一区二区三区| 欧美日韩五月天| 亚洲成人手机在线| 在线不卡一区二区| 日本成人在线看| 日韩免费福利电影在线观看|