做一个终端发送和协调器接收实验
在终端的应用层任务挂上一个11号端点,接收(协调器)模块的应用层任务挂上7号端点和8号端点,其中7号端点上有两个簇0x0001和0x0002,8号端点上只有一个簇0x0001;
发送终端上有key3和key4,key5;接收器模块有led1,led2和led3,以及一个数码管。
按键3按下使接收模块的7号端点下面的簇0x0001接收消息,使LED1取反且让数码管显示3;按键4按下使led2取反,且使数码管显示4,同理,对于按键5对应8号端点的簇0x0001使led3取反,且数码管显示5.
在前面的接收字符串和发送字符串的代码上面来修改:
先看看发送模块:
首先,把该模块设置为终端,定义11号端点,并且与应用层挂钩!进入SDApp_Init这个初始化函数里面,修改如下:SDApp_DstAddr.endPoint = 11;那么就挂钩上了。
找到按钮3被按下的位置,按下后,会发送一个数字3出去;
SDApp_DstAddr.addrMode = (afAddrMode_t)Addr16Bit;
SDApp_DstAddr.addr.shortAddr = 0x0000;//协调器地址
SDApp_DstAddr.endPoint = 7;//目标端点
然后调用一个发送的函数:
那么按钮3就完成了,按钮4和按钮5类似
这是我们发送函数!
协调器接收模块:
首先,选择协调器方式;然后,定义两个断点7和8,且使之与应用层挂钩,
现在已经挂钩上了,下面做处理
一旦来数据都会进入应用层事件处理函数,
然后判断,是外部来数据的消息,
然后把无线数据包传递进该函数来处理:
该数据包的数据结构
修改该函数如下:
11号信道
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 地球OL攻略 —— 某应届生求职总结
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· 提示词工程——AI应用必不可少的技术
· .NET周刊【3月第1期 2025-03-02】