📄 rf_test.c
字号:
/******************************************************************************
* *
* **** ****** ****
* **** ******** ****
* **** **** **** ****
* **** **** **** **** wxl
* ******* *******
* ***** ***** 成都无线龙通讯科技有限公司
* *
*******************************************************************************
Filename: uart.c 文 件 名: uart.c
Target: cc1110 使用芯片: cc1110
Author: WXL 程 序 员: 无线龙
data: 1/12-2007 日 期: 1/12-2007
******************************************************************************/
/**********************************头文件**************************************/
#include "app_ex.h"
#include "cul.h"
#include "menu.h"
#include "string.h"
#ifdef CC2510_NOD_RX
#include "mydefine.h"
#endif
/******************************************************************************/
#define ADDRESS_0 0x01
#define ADDRESS_1 0x02
#define RECEIVE_TIMEOUT 1200
#define PER_RECEIVE_TIMEOUT 10000
void rf_test_main(void);
void receiveMode(void);
void contionuousMode(void);
UINT8 myAddr;
UINT8 remoteAddr;
BOOL myAddressSet = FALSE;
UINT32 frequency;
void NOD_TO_NOD(char sell)
{
if(sell == 0)
{
myAddr = ADDRESS_0; //设置自己地址
remoteAddr = ADDRESS_1; //设置接收地址
radioInit(frequency, myAddr); //RF初始化
INT_GLOBAL_ENABLE(INT_ON); //中断使能
contionuousMode(); //连续发送模式
}
else if(sell == 1)
{
myAddr = ADDRESS_1; //设置自己地址
remoteAddr = ADDRESS_0; //设置接收地址
radioInit(frequency, myAddr); //RF初始化
INT_GLOBAL_ENABLE(INT_ON); //中断使能
receiveMode(); //接收模式
}
}
/******************************************************************************
* @fn contionuousMode
*
* @brief
* Function for transferring packets until stopped by user.
*
* Parameters:
*
* @param void
*
* @return void
*
******************************************************************************/
void contionuousMode(void)
{
BOOL res;
int i = 0;
BYTE sendBuffer1[] = "hello world"; //发送的数据设置
BYTE sendBuffer2[] = "hello CDWXL";
P1DIR |= 0x02;
while(1){
if(i==0)
{
res = radioSend(sendBuffer1, sizeof(sendBuffer1), remoteAddr, DO_ACK); //发送数据
i++;
}
else
{
res = radioSend(sendBuffer2, sizeof(sendBuffer2), remoteAddr, DO_ACK); //发送数据
i = 0;
}
if(res == TRUE) //发送成功
{
YLED = !YLED;
}
else
{
YLED = 1;
}
halWait(200);
halWait(200);
}
}
/******************************************************************************
* @fn receiveMode
*
* @brief
* Function for receiving data.
*
* Parameters:
*
* @param void
*
* @return void
*
******************************************************************************/
void receiveMode(void)
{
BYTE* receiveBuffer;
BYTE length;
BYTE res;
BYTE sender;
#ifdef CC2510_NOD_RX
unsigned char temp2[5] = {0x68,0xaa,'U','Y','J'};
#endif
P1DIR |= 0x02;
while( !stopApplication() )
{
res = radioReceive(&receiveBuffer, &length, RECEIVE_TIMEOUT, &sender);//接收数据
if(res == TRUE) //接收成功
{
YLED = !YLED;
#ifdef CC2510_NOD_RX
Print_word(receiveBuffer,4,0,length-1);
UartSendWord(temp2,5);
UartSendWord((void*)di_yz,sizeof(di_yz));
#endif
}
else
{
YLED = 1;
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -