易思开发工作室 ES Technology
http://es-tech.taobao.com
文件名:一对一无线数据传输
注意:
1. 需要两个无线模块。
2. 文件包含发送程序和接收程序两个文件,工程文件在 ide 文件夹里
易思开发工作室 ES Technology
http://es-tech.taobao.com
实验目的:
初步学习简单的 ZigBee 无线数据传输。
实验现象:
1. 无线模块每发送一个数据,红 LED 显示状态改变一次;
2. 无线模块没接收到一次数据,蓝色 LED 显示状态改变一次。
实验步骤:
1. 分别把两个程序下载到两个模块中,运行两个模块
2. 观察 LED 灯的显示状态。
具体实验:(发送部分)
模块上电每隔一段时间向地址为 RECEIVE_ADDR = 0x1515 的模块,发送数据
pTxData[APP_PAYLOAD_LENGTH],数据长度通过修改 APP_PAYLOAD_LENGTH 值来
改变,数据值通过修改 pTxData 数组里的数据实现,发送时间间隔通过改变延
时时间来实现。
模块每发送一个数据,黄色 LED 显示状态改变一次。
主函数:
void main(void)
{
// Config basicRF
basicRfConfig.panId = PAN_ID;
basicRfConfig.channel = RF_CHANNEL;
basicRfConfig.ackRequest = TRUE;
basicRfConfig.myAddr = SEND_ADDR; // 设定本机地址
pTxData[0] = 24; // 装载第 1 个数据
pTxData[1] = 35; // 装载第 2 个数据
pTxData[2] = 4; // 装载第 3 个数据
pTxData[3] = 125; // 装载第 4 个数据
pTxData[4] = 78; // 装载第 5 个数据
halBoardInit(); //初始化单片机
IO_initial(); //初始化 IO
if(halRfInit()==FAILED) {
HAL_ASSERT(FALSE);
}