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

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

?? seriallink.c

?? 2500-SPI通用程序
?? C
字號:
/*******************************************************************************************************
 *                                                                                                     *
 *        **********                                                                                   *
 *       ************                                                                                  *
 *      ***        ***                                                                                 *
 *      ***   +++   ***                                                                                *
 *      ***   + +   ***     This program lets the user test a simple rf link using serial synchronous  *
 *      ***   +             mode.                                                                      *
 *      ***   + +   ***                                                                                *
 *      ***   +++   ***     SerialLink.c                                                               *
 *      ***        ***                                                                                 *
 *       ************                                                                                  *
 *        **********                                                                                   *
 *                                                                                                     *
 *******************************************************************************************************
 * Compiler:                Keil C51 V7.50                                                             *
 * Target platform:         Chipcon CCxxx0 (Silabs F320)                                               *
 * Author:                  SNA                                                                        *
 *******************************************************************************************************
 * Revision history:        See end of file                                                            *
 ******************************************************************************************************/
#include <Chipcon\srf04\regssrf04.h>
#include <Chipcon\srf04\halsrf04.h>
#include <Chipcon\srf04\ebsrf04.h>
#include <Chipcon\srf04\culsrf04.h>
#include <SerialLink.h>
#include <stdio.h>
#include <ctype.h>





//-------------------------------------------------------------------------------------------------------
// DESCRIPTION:
//
//      By moving the joystick right and left, the user can set up one unit for TX (left) or RX (right).
//      After setting the correct mode, the user must press the joystick button to start the link tester.
//      The transmitter will send one packet every time the S1 button is pushed.
//      Number of packets that have been transmitted is showed on the LCD display. The RX unit will display
//      number of packets received with CRC OK. 
//      The program uses halRfSendPacketSerial() and halRfReceivePacketSerial()
//
//      |---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
//      | S | e | n | t | : |   |   |   |   |   |   |   |   |   |   |   |
//      |---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
//      | 2 | 5 | 8 |   |   |   |   |   |   |   |   |   |   |   |   |   |
//      |---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
//
//-------------------------------------------------------------------------------------------------------




//-------------------------------------------------------------------------------------------------------
//  Global Variables


UINT16 xdata checksum;
UINT8 xdata receivedCRC[2];

// Remember to make room for CRC in the packet if CRC check is enabled 
BYTE xdata txBuffer[] = {0x55,  0x55,   0x55,   0x55,   // Preamble
                         SYNC3, SYNC2,  SYNC1,  SYNC0,  // Sync word
                         3,     'A',    'B',    'C',    // Payload
                         CRC1, CRC0};                   // CRC (optional)


BYTE xdata rxBuffer[20];
UINT8 xdata mode = MODE_NOT_SET;

BYTE xdata asciiString[11];
//-------------------------------------------------------------------------------------------------------




//-------------------------------------------------------------------------------------------------------
//  void main(void)
//
//  DESCRIPTION:
//      This program shows how how to set up a link between two units.      
//-------------------------------------------------------------------------------------------------------
void main (void) {

    UINT8 xdata joystickPosition = JOYSTICK_CENTER;
    UINT8 xdata prevJoystickPosition = JOYSTICK_CENTER;
    UINT32 xdata packetsReceived = 0;
    UINT32 xdata packetsSent = 0;
    UINT8 data i = 0;
	UINT8 data j = 0;
    UINT8 data dataByte = 0;

    #ifdef STAND_ALONE
    
		// Select the Internal Oscillator as Multiplier input source and disable the watchdog timer
    	// SYSCLK = 4X Clock Multiplier / 2     
     	CLOCK_INIT();
    #endif

	// Set up the crossbar and I/O ports to communicate with the SmartRF04EB peripherals
    IO_PORT_INIT();

    // Initialize the LCD display. The SMBus uses timer 0 to generate SCL
    ebLcdInit();

    ebLcdUpdate("Select Mode", "Using Joystick");

    // Initialize the ADC converter
    ebAdcInit(ADC_JOY);

    SPI_INIT(SCLK_6_MHZ);

    POWER_UP_RESET_CCxxx0();

    // 8-bit Uart with variable baudrate, logic level of stop bit is ignored. User must poll the 
    // RI_0 and TI_0 flag to determine when a byte arrives or when the TX buffer is empty. 
    // Timer1 is used as a baudrate generator
    halUartSetup(UART_BAUDRATE_115200, DEFAULT_MODE);

    halRfWriteRfSettings(&rfSettings);
    halSpiWriteReg(CCxxx0_IOCFG1, 0x0B);    // Serial clock
    
    halSpiWriteReg(CCxxx0_PATABLE, paTable);
	
    // Select Tx or Rx mode by moving the joystick right or left
    do {
        
        halWait(250);
        
        // Get current position of joystick
        joystickPosition = ebGetJoystickPosition();

        if (prevJoystickPosition != joystickPosition)
            parseMenu(joystickPosition);

        prevJoystickPosition = joystickPosition;
               
    } while (!ebJoyPushed());
    
    // Infinite loop    
    while (TRUE) {
        switch (mode) {

            case RX:
        
                // Infinite loop    
                while (TRUE) {
                    if (halRfReceivePacketSerial(rxBuffer, SYNC3, SYNC2, SYNC1, SYNC0, VARIABLE_LENGTH, CRC_ENABLE)) {
                        intToAscii(++packetsReceived);
                        ebLcdUpdate("Received:", asciiString);
                    }
                }
                break;
    
            case TX:

                P0MDOUT |= GDO0_;   // In TX, GDO0 is serial data input, and must be configured as a push/pull output
                                    // on the MCU
                while (TRUE) {

                    while (!ebButtonPushed());
                
                    halRfSendPacketSerial(txBuffer, sizeof(txBuffer), START_OF_PAYLOAD, CRC_ENABLE);

                    intToAscii(++packetsSent);
                    ebLcdUpdate("Sent:", asciiString);
                }
                break;         
        }
    }   
}




//-------------------------------------------------------------------------------------------------------
//  void intToAscii(UINT32 value)
//
//  DESCRIPTION:
//		Takes a 32 bits interger as input and converts it to ascii. Puts the result in the global
//      variable asciiString[]
//
//	ARGUMENTS:
//		UINT32 value
//			The value to be converted
//-------------------------------------------------------------------------------------------------------
void intToAscii(UINT32 value) {
    UINT8 i;
    UINT8 j = 0;
    UINT8 digit_start = 0;
    UINT16 digit = 0;
    UINT32 denom = 1000000000;

    if (value == 0) {
        asciiString[0] = '0';
        asciiString[1] = NULL;
    } else {
        for(i = 10; i > 0; i--) {
            digit = value / denom;
            if((digit_start == 1) || (digit != 0)) {
                digit_start = 1;
                value %= denom;
                asciiString[j++] = (digit + '0');
            }
            denom /= 10;
        }
        asciiString[j++] = NULL;
    }
}// intToAscii




//-------------------------------------------------------------------------------------------------------
//  void parseMenu(UINT8 joystickPosition) 
//
//  DESCRIPTION: 
//    
//-------------------------------------------------------------------------------------------------------
void parseMenu(UINT8 joystickPosition) {
	
	switch (joystickPosition) {

		case JOYSTICK_LEFT:
			if (mode == RX || mode == MODE_NOT_SET) {
                mode = TX;
                ebLcdUpdate("Mode: Tx", NULL);
            }
			break;

		case JOYSTICK_RIGHT:
			if (mode == TX || mode == MODE_NOT_SET) {
                mode = RX;
                ebLcdUpdate("Mode: Rx", NULL);
            }
			break;

		default:
			break;
	}
}// parseMenu




/******************************************************************************************************
 * Revision history:                                                                                  *
 *
 * $Log: SerialLink.c,v $
 * Revision 1.5  2006/04/25 14:59:07  a0190596
 * added POWER_UP_RESET_CCxxx0()
 *
 * Revision 1.4  2006/03/31 13:27:29  a0190596
 * POWER_UP_RESET_CCxxx0() removed
 *
 * Revision 1.3  2006/03/17 10:24:58  a0190596
 * New file structure might have caused variables, defines, and functions to move.
 *
 * Revision 1.2  2005/12/02 12:05:53  sna
 * Changed Port 0 configuration on the MCU
 * to have the code running at SmartRF04EB 1.9
 *
 * Revision 1.1  2005/11/09 09:59:15  sna
 * Initial version in CVS.
 *
 *
 *
 ******************************************************************************************************/









?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
三级一区在线视频先锋| 久久色.com| 69堂成人精品免费视频| 亚洲精品成人少妇| 日本丶国产丶欧美色综合| 国产精品久久久久天堂| 一本久久a久久免费精品不卡| 亚洲日本一区二区| 欧美性一级生活| 日av在线不卡| 久久久久久日产精品| 国产精品一区二区无线| 综合色中文字幕| 欧美日韩国产精品成人| 免费在线视频一区| 中文字幕不卡在线观看| 欧美性大战久久| 久久精品国产精品亚洲精品| 国产片一区二区| 欧洲视频一区二区| 精品亚洲国产成人av制服丝袜| 欧美国产乱子伦| 欧美日韩一区二区三区高清| 国产在线日韩欧美| 亚洲欧美另类久久久精品| 欧美片网站yy| 不卡一区二区三区四区| 日韩电影在线观看电影| 国产三级精品视频| 7777精品伊人久久久大香线蕉完整版 | 亚洲亚洲人成综合网络| 欧美videossexotv100| 91一区一区三区| 久久激情综合网| 亚洲尤物在线视频观看| 337p日本欧洲亚洲大胆色噜噜| 91麻豆自制传媒国产之光| 久久精品国产99国产| 亚洲免费观看高清完整版在线观看熊| 69堂国产成人免费视频| 99精品国产视频| 精东粉嫩av免费一区二区三区| 亚洲黄色尤物视频| 久久婷婷久久一区二区三区| 欧美日韩一区久久| 处破女av一区二区| 日本欧美一区二区三区乱码| 亚洲欧美日韩国产综合| 久久这里只有精品6| 欧美性猛交一区二区三区精品| 国产毛片精品国产一区二区三区| 天天影视网天天综合色在线播放 | 国产精品美女久久久久久久久| 欧美一区二区三区四区高清| 欧美日韩国产片| 91视视频在线观看入口直接观看www | 91精品国产综合久久福利| 91蝌蚪国产九色| 国产精品69毛片高清亚洲| 日韩制服丝袜av| 亚洲超碰精品一区二区| 亚洲乱码国产乱码精品精可以看| 日韩精品影音先锋| 69久久99精品久久久久婷婷| 欧美午夜精品免费| 色婷婷激情一区二区三区| 成人午夜碰碰视频| 国产精品18久久久久久久网站| 久久99热这里只有精品| 奇米色777欧美一区二区| 日韩中文字幕91| 香蕉成人伊视频在线观看| 亚洲一二三四在线观看| 亚洲男同性恋视频| 一区二区三区四区亚洲| 亚洲欧洲国产专区| 亚洲柠檬福利资源导航| 亚洲精品久久嫩草网站秘色| 中文子幕无线码一区tr| 中文字幕国产一区| 中文字幕一区二区三区在线不卡 | 91小视频免费看| 丁香婷婷综合激情五月色| 国产成人精品影院| 99精品偷自拍| 欧美午夜宅男影院| 欧美日韩高清一区二区三区| 6080日韩午夜伦伦午夜伦| 日韩一级片网址| 久久九九久久九九| 国产精品第四页| 亚洲主播在线观看| 日韩在线观看一区二区| 另类小说图片综合网| 国产高清在线精品| 91久久线看在观草草青青| 欧美日韩一区小说| 亚洲精品一区二区三区99| 国产精品嫩草影院com| 亚洲一级在线观看| 精品一区二区国语对白| 白白色 亚洲乱淫| 欧美日高清视频| 精品国产一区a| 91精品国产色综合久久不卡电影| 成人av免费在线观看| 在线观看网站黄不卡| 在线不卡免费av| 欧美一区二区三区白人| 精品乱人伦小说| 中文字幕第一区二区| 亚洲天天做日日做天天谢日日欢 | 国产一区二区三区在线观看免费 | 另类的小说在线视频另类成人小视频在线| 免费成人av资源网| 久久国产福利国产秒拍| 老司机午夜精品| 91麻豆国产自产在线观看| 精品视频一区三区九区| 宅男在线国产精品| 国产校园另类小说区| 伊人一区二区三区| 色94色欧美sute亚洲线路一久| 91久久精品国产91性色tv| 欧美日韩高清一区二区三区| 久久嫩草精品久久久精品一| 中文字幕一区二区三区蜜月| 日韩影院在线观看| 91丨九色丨国产丨porny| 欧美一区二区三区四区久久| 国产精品美女久久久久av爽李琼 | 亚洲综合无码一区二区| 美女在线视频一区| 成人精品一区二区三区四区| 3d成人h动漫网站入口| 国产精品精品国产色婷婷| 日日摸夜夜添夜夜添精品视频| 国产麻豆成人精品| 欧洲一区二区av| 精品精品国产高清a毛片牛牛| 亚洲自拍偷拍图区| 丁香婷婷综合激情五月色| 欧美日韩国产综合一区二区| 国产亚洲欧美一级| 亚洲国产wwwccc36天堂| 精品亚洲国产成人av制服丝袜| 欧美日韩成人综合在线一区二区| 久久久国产午夜精品| 午夜激情综合网| 91在线国产福利| 久久久久久久综合日本| 性做久久久久久久免费看| 国产91精品欧美| 欧美一区二区视频网站| 一区二区三区在线观看欧美| 国产精品1024久久| 欧美性xxxxxxxx| 亚洲永久免费视频| 9久草视频在线视频精品| 日韩欧美国产精品一区| 偷拍日韩校园综合在线| 国产成人精品免费| 国产婷婷色一区二区三区四区| 日韩中文字幕91| 欧美日韩国产精品自在自线| 亚洲人成小说网站色在线| 国产成人精品www牛牛影视| 欧美不卡一区二区| 奇米精品一区二区三区在线观看| 日本精品一区二区三区高清 | 图片区日韩欧美亚洲| 91捆绑美女网站| 亚洲视频 欧洲视频| 国产99精品视频| 亚洲天堂福利av| 不卡欧美aaaaa| 国产精品国产三级国产普通话蜜臀 | 欧美激情一区三区| 成人黄动漫网站免费app| 欧美国产日韩亚洲一区| 国产精品亚洲一区二区三区妖精 | 精品国产91九色蝌蚪| 日韩中文字幕不卡| 欧美精品一区二区不卡| 精品一区精品二区高清| 精品久久一二三区| 国产一区二区视频在线| 日韩精品影音先锋| 成人在线视频一区| 国产精品久久久久久久久免费丝袜| 国产精品综合一区二区三区| 国产日韩精品一区二区浪潮av| 国产黄色91视频| 国产精品毛片久久久久久| 97se亚洲国产综合自在线观| 一区二区三区四区亚洲| 欧美老女人第四色| 美女网站一区二区| 国产精品毛片无遮挡高清| 91丝袜呻吟高潮美腿白嫩在线观看|