24g各信道信号强度测试实验_嵌入式系统开发技术课程设计(编辑修改稿)内容摘要:

设置模块为发送功能( Switch) SW4 发送模块发送命令按键 当发送模块按下 SW4 时,将发射一个控制命令,接收模块在接收到该命令后,将控制 LDE1 的亮或者灭。 其中 LED6 为工作指示灯,当工作不正常时, LED5 将为亮状态。 设计步骤 给智能主板供电( USB 外接电源或 2 节干电池)。 将两个无线节点模块分别插入到两个带 LCD 的智能主板的相应位置。 将 的天线安装在无线节点模块上。 将 CC2530 仿真器的一端通过 USB 线( A 型转 B 型)连接到 PC 机,另一端通过 10Pin 下载线连接到智能主板的 CC2530 JTAG 口( J203)。 将智能主板上电源开关拨至开位置。 按下仿真器上的按钮,仿真器上的指示 灯为绿 色时,表示连接成功。 6 、使用 打开“„ \OURS_CC2530LIB\lib11(simple_RF)\ IAR_files ”下的 文件,下载程序。 关掉智能主板上电源,拔下仿真器,按 5 步骤对另一个模块下载程序。 打开两个模块的电源,当 LED1 处于亮时,按下 SW1 进入模块功能选择。 然后一个模块按下 SW2 设置为接收功能( Light),此时 LED3 将被点亮;另一个模块按下 SW3 设置为发 送功能( Switch) ,此时 LED4 将被点亮。 按下发送模块的 SW4 按键,接收模块的 LED6 将被点亮,再次按下 SW4 按键, 9 LED6 将被熄灭。 注:如果需要重新设置模块的收发功能,按复位按键。 10 程序流程图 11 代码清单 : include include include include include include define RF_CHANNEL 25 // GHz RF 使用信道 25 define PAN_ID 0x2020 //通信 PANID define SWITCH_ADDR 0x2530 //开关模块地址 define LIGHT_ADDR 0xBEEF //灯模块地址 define APP_PAYLOAD_LENGTH 1 //命令长度 define LIGHT_TOGGLE_CMD 0 //命令数据 // 应用状态 define IDLE 0 define SEND_CMD 1 //应用角色 define NONE 0 define SWITCH 1 define LIGHT 2 define APP_MODES 2 //按键 define HAL_BUTTON_1 1 define HAL_BUTTON_2 2 define HAL_BUTTON_3 3 define HAL_BUTTON_4 4 define HAL_BUTTON_5 5 define HAL_BUTTON_6 6 static uint8 pTxData[APP_PAYLOAD_LENGTH]。 //发送数据数组 164 static uint8 pRxData[APP_PAYLOAD_LENGTH]。 //接收数据数组 static basicRfCfg_t basicRfConfig。 //RF 初始化结构体 extern void halboardinit(void)。 //硬件初始化函数 12 extern void ctrPCA9554FLASHLED(uint8 led)。 //IIC 灯控制函数 extern void ctrPCA9554LED(uint8 led,uint8 operation)。 extern uint8 halkeycmd(void)。 //获取按键值函数 ifdef SECURITY_CCM //安全密钥 static uint8 key[]= { 0xc0, 0xc1, 0xc2, 0xc3, 0xc4, 0xc5, 0xc6, 0xc7, 0xc8, 0xc9, 0xca, 0xcb, 0xcc, 0xcd, 0xce, 0xcf, }。 endif static void appLight()。 //灯应用处理函数 static void appSwitch()。 //开关应用处理函数 static uint8 appSelectMode(void)。 //选择应用功能函数 /************************************* / 函数名称: appLight * 功能描述:接收模式应用函数,初始化 RF 一些参数,接收另一个模块发送的控制命令,然后控制相应的 LED 灯 * 参 数:无 * 返 回 值:无 /***************************************************/ static void appLight() { = LIGHT_ADDR。 //设置接收模块的地址 if(basicRfInit(amp。 basicRfConfig)==FAILED) //RF 初始化 { ctrPCA9554FLASHLED(5)。 //RF 初始化不成功,则所有的 LED5 闪烁 } basicRfReceiveOn()。 //打开接收功能 // Main loop while (TRUE) { while(!basicRfPacketIsReady())。 //准备接收数据 13 if(basicRfReceive(pRxData, APP_PAYLOAD_LENGTH, N。
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。 用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。