刚学zigbee 的一点建议

2019-07-21 01:19发布

  我这几天都在看书。
光从实验那里的资料有很多地方都不清楚的

主要是对物理层(也可收硬件层)PD,介质层(MAC),网络层(NWK),用户层(APP)等没有了解
 其实,除了用户层,其它层对于大家来说 要珍惜生命 不要理为好
其实说来说去,就是我们直接搞 APP层就行了。
其它层TI搞好了,搞得好好的。不用去理的

 我们要做的东西全部都在APP层
如协调器的组网指令 是通过 原语 下达给网络层的。
 丢给网络层后 什么都不理,等网络层通过confirm 原语 返回信息。你就知道 组网成功与否了。你直接读返回的 NLME_NETWORK_FORMATIOM.confim 的 Status 这个参数就知道是否组网成功了

 好了,组网成功了,可以通过原语 ==》LME_PERMIT_JOINING.request 下达让其它节点接入自己建 好的网络。说白点就是下令招 收小弟了
LME_PERMIT_JOINING.request 只有一个参数  ermitDuration   是个8位的数。 0x00代表 不收小弟
0xff 代表无限招收小弟

0x01到0xfe 代表在 这个时间内招收小弟,比如 0x01代表 1秒内 表内人招人指令下达后,1秒内有小弟进来,就是成功招进来的小弟。
招到小弟后要向其传输 数据,则通过 NEDE_DATA.request 下边的一干参数下达指令。
小弟刚通过 NLME_SYNC.request 下边的一个参数 Track 来指示 信标是否同步 
 然收凡是网络层收到的数据包 是同小弟的地址是一样的都住 小弟的APP层上供。
不是和小弟地址一样的,全部丢掉

说是说 小弟用NLME_SYNC.request 来初始化设备并打开接收机 就无时无刻都收听来自本网的所有数据,只有和小弟的地址一样的数据小弟的小弟网络层才上供给他的老大=》小弟


一路看下来,对各层不了解 那么对着人家写好的栈 真的是一头烟呀,建议玩这个先 看栈的原理。
这本书不错   《ZIGBEE 无线网络技术 入门与实战》
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
23条回答
gaupen1186
1楼-- · 2019-07-22 16:51
 精彩回答 2  元偷偷看……
我帮你打水
2楼-- · 2019-07-22 17:55
要有前途你得自己写个栈,原来的栈学软件的人比较容易读。
chinafox
3楼-- · 2019-07-22 19:03
 精彩回答 2  元偷偷看……
chinafox
4楼-- · 2019-07-22 19:38
尊敬的楼主,请问可以分享一下你自己修改的程序吗?
我有个问题:要修改哪些程序才能使ZIGBEE组网之后通过串口读取信息?比如:一个协调器,一个温湿度传感器,一个气体传感器,一个蜂鸣器传感器,他们四个组好网后怎样使协调器通过串口显示
qi le rong rong
5楼-- · 2019-07-22 22:15
回复【17楼】qi le rong rong:
---------------------------------
你得在子机开机的时候发一个包给协调器,改一下协调器的任务,将子机的地址和功能能记起来,所有的子机也一样去找主机登记,然后叫协调器返回你要找的子机地址。协调器跟据你要找的功能子机发送地址包给用户。

ZIGBEE只有一个用户程式任务可以插进去,不要在里边墨机太久。最好用另外一个单片机做,做完了再将数据送给CC2530.

我觉得ZIGBEE寿命不会太长,TI搞过后一直没理它。自己搞其实就是一个51加NRF24+.这是我个人觉得。那个通用栈只是个例程而已。不是软件专业的人,建议从基础功能能学起,自己写一个适合自己使用的。那个通用栈很大,不要命的就看吧~~~~~~~~~~~~~~~~~~~~~~~~~~~
chinafox
6楼-- · 2019-07-23 03:28
 精彩回答 2  元偷偷看……

一周热门 更多>