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

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

?? rfreceivepacketserial.c

?? ccxx00系列RF模塊用8051控制的源代碼
?? C
字號:
/*******************************************************************************************************
 *                                                                                                     *
 *        **********                                                                                   *
 *       ************                                                                                  *
 *      ***        ***                                                                                 *
 *      ***   +++   ***                                                                                *
 *      ***   + +   ***     This function receives a packet using synchronous serial mode.             *
 *      ***   +                                                                                        *
 *      ***   + +   ***                                                                                *
 *      ***   +++   ***     RfReceivePacketSerial.c                                                    *
 *      ***        ***                                                                                 *
 *       ************                                                                                  *
 *        **********                                                                                   *
 *                                                                                                     *
 *******************************************************************************************************
 * Compiler:                Keil C51 V7.50                                                             *
 * Target platform:         Chipcon CCxxx0 (Silabs F320)                                               *
 * Author:                  SNA                                                                        *
 *******************************************************************************************************
 * Revision history:        See end of file                                                            *
 ******************************************************************************************************/
#include <Chipcon\srf04\halsrf04.h>
#include <Chipcon\srf04\regssrf04.h>
#include <Chipcon\srf04\culsrf04.h>




//-------------------------------------------------------------------------------------------------------
// Defines
#define GDO1_PIN        P0_1
#define SERIAL_CLK      GDO1_PIN

#define GDO0_PIN        P0_6
#define SERIAL_DATA     GDO0_PIN
//-------------------------------------------------------------------------------------------------------




//-------------------------------------------------------------------------------------------------------
//  BOOL halRfReceivePacketSerial
//  (BYTE *rxBuffer, UINT8 sync3, UINT8 sync2, UINT8 sync1, UINT8 sync0, UINT8 fixedLength, BOOL crcEnable)
//
//  DESCRIPTION:
//      This function receives a packet using synchronous serial mode. The radio must be configured to 
//      use GIO1 as the serial clock (IOCFG1 = 0x0B) and GDO0 as serial synchronous data output
//      (IOCFG0 = 0x0C).
//      The packets received by this function should have the following format:
//      
//      ----------------------------------------------------------------------------------
//      | preamble | sync3 | sync2 | sync1 | sync0 | length byte | payload | crc1 | crc0 |
//      ----------------------------------------------------------------------------------
//
//      The length byte and the crc is optional.
//      Be aware that modifications to this function might be necessary if it is ported to other
//      MCUs or if the data rate is increased, due to timing issues.
//      The function is only meant to give an indication on how to use the serial synchronous mode
//      of the CCxx00.    
//
//  ARGUMENTS:
//      BYTE *rxBuffer
//          Pointer to array where the received packet is being stored
//
//      UINT8 sync3, UINT8 sync2 UINT8 sync1, UINT8 sync0
//          Sync word to search for. If one wants to send a sync word of a different length it is 
//          necessary to modify the culSyncSearch function, found in the cul folder 
//          (cul = Chipcon Utility Library).
//
//      UINT8 fixedLength
//          Length of data to be received after sync word is found. If fixedLength = 0, this means that
//          the length byte is given as the first byte received after sync word is found.
//
//      BOOL crcEnable
//          If crcEnable is TRUE, two bytes are received after the payload. This is crc1 and crc0.
//          A crc check will be performed on the received data and compared to crc1 and crc0.
// 
//  RETURN VALUE:
//      BOOL
//          crcEnable == TRUE =>    TRUE:   CRC OK
//                                  FALSE:  CRC NOT OK
//          crcEnable == FALSE =>   Return TRUE when a packet is received            
//-------------------------------------------------------------------------------------------------------
BOOL halRfReceivePacketSerial
(BYTE *rxBuffer, UINT8 sync3, UINT8 sync2, UINT8 sync1, UINT8 sync0, UINT8 fixedLength, BOOL crcEnable) {

    UINT8 data i, j;
    UINT16 xdata checksum;
    UINT8 data dataByte = 0;
    UINT8 data lengthByte;
    UINT8 data bufferIndex;
    UINT8 data crcBytes;

    if (crcEnable)
        crcBytes = 2;
    else
        crcBytes = 0;

    halSpiStrobe(CCxxx0_SRX);

    // Wait until sync word is received
    culSyncSearch(sync3, sync2, sync1, sync0);

    if (fixedLength) {
        lengthByte = fixedLength;
        bufferIndex = 0;

        for (j = 0; j < (lengthByte + crcBytes); j++) {
        
            for (i = 0; i < 8; i++) {
                            
                while (!SERIAL_CLK);

                dataByte = dataByte << 1;

                if(SERIAL_DATA == 0)
                    dataByte &= 0xFE;
                else
                    dataByte |= 0x01;

                while (SERIAL_CLK);
            }
            rxBuffer[bufferIndex++] = dataByte;
        }
    } else {

        bufferIndex = 1;
    
        // Read length byte
        for (i = 0; i < 8; i++) {
                        
            while (!SERIAL_CLK);

            lengthByte = lengthByte << 1;

            if(SERIAL_DATA == 0)
                lengthByte &= 0xFE;
            else
                lengthByte |= 0x01;

            while (SERIAL_CLK);
        }
            
        // Read the rest of the payload + optionally the 2 CRC bytes




        for (j = 0; j < (lengthByte + crcBytes); j++) {
        
            for (i = 0; i < 8; i++) {
                
                while (!SERIAL_CLK);

                dataByte = dataByte << 1;

                if(SERIAL_DATA == 0)
                    dataByte &= 0xFE;
                else
                    dataByte |= 0x01;

                while (SERIAL_CLK); 
            }
            rxBuffer[bufferIndex++] = dataByte;
        }
        rxBuffer[0] = lengthByte;
    }
    
    // Exit RX mode
    halSpiStrobe(CCxxx0_SIDLE);

    if (crcEnable) {
    
        //Calculate CRC
        checksum = CRC_INIT;

        for(i = 0; i < bufferIndex; i++)
            checksum = culCalcCRC(rxBuffer[i], checksum);
    
        if(checksum == 0)
            return(TRUE);
        else
            return(FALSE);
    } else
        return TRUE;

}// halRfReceivePacketSerial




/******************************************************************************************************
 * Revision history:                                                                                  *
 *
 * $Log: RfReceivePacketSerial.c,v $
 * Revision 1.1  2005/11/09 09:40:17  sna
 * Initial version in CVS.
 *
 *
 *
 ******************************************************************************************************/

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
久久五月婷婷丁香社区| 精品欧美一区二区在线观看| 久久精品国产在热久久| 午夜伦理一区二区| 日韩一区精品视频| 日本女优在线视频一区二区| 美女视频黄频大全不卡视频在线播放| 性做久久久久久免费观看| 丝袜诱惑制服诱惑色一区在线观看 | 国产在线一区二区综合免费视频| 日本亚洲欧美天堂免费| 激情都市一区二区| 国产mv日韩mv欧美| 91一区一区三区| 欧美三级电影在线看| 日韩视频在线观看一区二区| xfplay精品久久| 亚洲精品中文在线观看| 亚洲国产另类av| 激情欧美一区二区| 91麻豆产精品久久久久久| 欧美日韩在线一区二区| 精品国产百合女同互慰| 国产精品美女久久久久aⅴ国产馆| 亚洲日本在线视频观看| 亚洲va国产va欧美va观看| 精品在线一区二区三区| 成人免费视频一区二区| 欧美三级日韩三级国产三级| 精品成人一区二区| 亚洲精品视频免费观看| 久久国产精品72免费观看| 成人动漫一区二区在线| 91麻豆精品国产无毒不卡在线观看| 亚洲精品在线三区| 亚洲国产毛片aaaaa无费看| 黑人巨大精品欧美黑白配亚洲| 91一区二区在线| 久久精品水蜜桃av综合天堂| 亚洲一区二区精品3399| 福利电影一区二区| 在线不卡一区二区| 国产精品久久久久影院| 九色porny丨国产精品| 在线亚洲欧美专区二区| 国产日产欧美一区二区视频| 日韩和欧美一区二区| 91亚洲资源网| 欧美国产激情二区三区| 久久国产剧场电影| 欧美精品在线观看一区二区| 亚洲三级小视频| 国产激情精品久久久第一区二区| 欧美肥妇bbw| 亚洲成a天堂v人片| 91福利视频在线| 中文av一区二区| 国产91色综合久久免费分享| 精品国产青草久久久久福利| 亚洲高清在线精品| 91黄色小视频| 亚洲欧美另类图片小说| 成人精品视频.| 国产日韩欧美精品电影三级在线| 精品一区二区成人精品| 91精品国产综合久久福利软件| 一二三四区精品视频| 97se亚洲国产综合自在线| 亚洲国产成人在线| 国产成人免费视频网站高清观看视频| 欧美大白屁股肥臀xxxxxx| 日本美女视频一区二区| 在线综合亚洲欧美在线视频| 午夜欧美在线一二页| 欧美精品一二三四| 日韩av电影天堂| 日韩欧美一二区| 精品在线你懂的| 国产日本亚洲高清| 91婷婷韩国欧美一区二区| 亚洲码国产岛国毛片在线| 色婷婷av一区二区三区之一色屋| 亚洲精品欧美激情| 欧美手机在线视频| 日韩二区三区四区| 精品国产乱码久久久久久夜甘婷婷| 久久99精品国产91久久来源| 久久精品男人天堂av| www.在线成人| 亚洲成人动漫在线免费观看| 91精品欧美福利在线观看| 久久精品国产在热久久| 国产亚洲一区二区三区在线观看 | 欧美精品一区二区三区四区 | 亚洲欧美乱综合| 欧美亚洲尤物久久| 美女网站色91| 欧美激情一区二区在线| 日本丶国产丶欧美色综合| 午夜精品爽啪视频| 26uuu精品一区二区在线观看| 不卡视频在线观看| 日本视频一区二区| 国产精品美女久久久久高潮| 欧美日韩国产在线观看| 国产成人精品影院| 亚洲成a人片在线不卡一二三区 | 555www色欧美视频| 国产v综合v亚洲欧| 亚洲成av人片一区二区三区| 精品电影一区二区| 欧美亚洲综合网| 国产成人av在线影院| 日本三级韩国三级欧美三级| 国产精品久久久久久久久动漫 | 国产精品视频一二三| 欧美日韩不卡在线| 成人黄色在线网站| 麻豆成人av在线| 亚洲综合无码一区二区| 国产日产欧美一区| 91麻豆精品国产无毒不卡在线观看| 成人网男人的天堂| 久久se精品一区精品二区| 亚洲一区二区三区在线| 国产精品青草久久| 久久综合色婷婷| 91精品国产综合久久久久| 99久久精品情趣| 国产福利不卡视频| 日本aⅴ免费视频一区二区三区| 亚洲男人天堂av网| 国产欧美一区二区三区在线看蜜臀| 91精品视频网| 欧美日韩国产综合视频在线观看 | 欧美亚洲高清一区二区三区不卡| 国产电影一区在线| 精品在线一区二区三区| 午夜欧美一区二区三区在线播放| 亚洲视频在线一区二区| 国产精品色哟哟网站| 国产日产欧美一区二区视频| 日韩欧美中文字幕一区| 日韩一区二区三区视频在线| 91精品国产高清一区二区三区蜜臀| 日本二三区不卡| 在线观看免费视频综合| 91麻豆国产在线观看| 色拍拍在线精品视频8848| heyzo一本久久综合| 99精品欧美一区二区蜜桃免费| 国产99精品在线观看| 成人性生交大片| 99久久亚洲一区二区三区青草| 成人免费视频免费观看| jizz一区二区| 色综合久久88色综合天天免费| 91丝袜美腿高跟国产极品老师 | 天堂资源在线中文精品| 亚洲成国产人片在线观看| 香蕉av福利精品导航| 日日欢夜夜爽一区| 久久99久久久久久久久久久| 国内精品视频666| 国产成人精品www牛牛影视| 成人午夜激情视频| 91无套直看片红桃| 欧美情侣在线播放| 日韩欧美一区二区久久婷婷| 26uuu久久综合| **欧美大码日韩| 亚洲va韩国va欧美va| 久草在线在线精品观看| 成人动漫一区二区| 欧美三级日韩在线| 精品成人一区二区三区四区| 国产精品免费久久| 亚洲一区在线观看网站| 老司机免费视频一区二区| 成人免费观看男女羞羞视频| 色狠狠色噜噜噜综合网| 欧美电影免费观看高清完整版在线观看| 久久久99精品免费观看不卡| 亚洲视频免费看| 精品一区二区影视| 91麻豆蜜桃一区二区三区| 日韩一区二区三区电影 | 日韩精品一区二区三区四区视频| 国产目拍亚洲精品99久久精品| 亚洲一区二区三区小说| 国产美女精品在线| 欧美性极品少妇| 国产偷国产偷亚洲高清人白洁 | 一区二区在线观看av| 蜜臀av性久久久久蜜臀aⅴ四虎| eeuss鲁片一区二区三区| 欧美精品99久久久**| 亚洲女性喷水在线观看一区| 久久超碰97人人做人人爱| 欧美视频一区二区在线观看|