nrf24l01组网量产时地址配置的问题
背景:一套设备,里面用到四个nrf24l01组成一个小型网络。要求:在一间房间中可能有不多于30套这样的设备,要求使用时,设备之间绝对不能互相干扰。
思路:容易想到的一个方法是设备之间使用不同的地址
问题:如果量产的话,程序一般都是一个,那么不同的设备用不同的地址就很难实现了。
请教各位网友,有没有什么好的方法实现量产时地址自动分配。 我用的stm8 + CC1101 STM8不是有内部ID么cc1101不是也有内部ID么 还全球唯一呢 某些单片机的烧写软件提供了“自动增量”,就是让程序文件指定地址的数据在烧写一次后自动增加指定的值,比如STC-ISP
如果没有这种软件,那就用VB写一个,用来修改程序文件的某些字节。 lcw_swust 发表于 2013-4-1 13:19 static/image/common/back.gif
某些单片机的烧写软件提供了“自动增量”,就是让程序文件指定地址的数据在烧写一次后自动增加指定的值,比 ...
谢谢你的回复,如果板子上没有显示屏的话,这样下载完程序以后,也不知道这个节点的地址是什么了,那就需要编写一个配对程序了吧?或者在安装设备时一对对的手工配对。 自古真相出二楼。 linyu0395 发表于 2013-4-1 13:18 static/image/common/back.gif
我用的stm8 + CC1101 STM8不是有内部ID么cc1101不是也有内部ID么 还全球唯一呢 ...
谢谢你的回复,因为mcu用的stm32,开始也考虑用id作为地址,但是stm32的id是96bit的,而nrf24l01的地址最多只有5byte,选取96bit的id中的一部分作为地址可能会出现重复的问题。因为每套设备的节点只有四个,因此想通过nrf24l01地址的配置实现硬绑定,这样协议就可以比较简单了,不需要动态的配对和搜索。没试用过cc1101,虽然它里面的id是唯一的,那么在配对上是怎么实现的呢? pirdoll 发表于 2013-4-1 13:42
谢谢你的回复,因为mcu用的stm32,开始也考虑用id作为地址,但是stm32的id是96bit的,而nrf24l01的地址最 ...
跳频做吧。楼主。 遇到同样的问题求真相{:dizzy:} 曾如兵 发表于 2014-6-20 12:19
遇到同样的问题求真相
当时采用的方案是使用一个四位的拨码开关,程序中读取拨码开关作为地址,这样一共可以有16个设备,我们这里够用了。 3楼正解,自动增量 就算地址自动分配,产品组装时怎么查找同一个网络的设备,这样不现实。目前主要是自动对码,或是最终产品测试包装时写入地址 对码分配,easy achieveIEEE 发表于 2014-7-10 14:42
对码分配,easy
对码分配是何意? 最终产品测试包装时写入地址,这个一个可实现的方法,上面说的对码分配,何解? 遇到同样的问题,求解! 我也想知道,目前我也不解,真诚希望明白的回一下 知行合一 发表于 2014-12-26 13:21
遇到同样的问题,求解!
当时采用的方案是使用一个四位的拨码开关,程序中读取拨码开关作为地址,这样一共可以有16个设备,我们这里够用了。
应用层协议中包含一个字段为拨码开关的值即地址,收到的数据帧中地址匹配的才处理,类似于485总线。 _xiao-_-zhu_ 发表于 2015-1-5 15:12
我也想知道,目前我也不解,真诚希望明白的回一下
当时采用的方案是使用一个四位的拨码开关,程序中读取拨码开关作为地址,这样一共可以有16个设备,我们这里够用了。
应用层协议中包含一个字段为拨码开关的值即地址,收到的数据帧中地址匹配的才处理,类似于485总线。 pirdoll 发表于 2015-1-5 15:28
当时采用的方案是使用一个四位的拨码开关,程序中读取拨码开关作为地址,这样一共可以有16个设备,我们这 ...
谢谢楼主!!!
页:
[1]