- 易迪拓培训,专注于微波、射频、天线设计工程师的培养
CC2500 如何成功发送6个数字?
录入:edatop.com 点击:
CC2500 如何成功发送6个数字?
用cc2500无线模块做一个遥控器,发送数据给cc2500的接收端。因为在批量生产的时候,不可能在程序中去一个个的改变发送的数据,所以需要一个协议来使得发射端和接收端自动对码。
我现在的思路是这样: 发射端,也就是遥控器这端,第一次上电的时候,按下发射按键会发送一组随机数字,这一组随机数字是6位数,也就是说按下按键之后,会随机的发送1,2,3,4,5,6这样的随机数字,然后将发送的这一组数字保存到单片机的flash中。然后接收端接收到这些数字之后,会将接收到的这组数字也保存到单片机的flash中。这样当遥控器再次按下发射按键的时候,就会发送上一次保存在flash里面的数字,然后接收端再次接收到数据的时候,就会将数据跟之前保存在自己单片机中flash里的数据对比,若相同,则表示遥控器和接收端是一对,进而就可以进行相关的控制,若不相同则不会产生控制操作,通过这种方法来实现遥控器和接收端自动对码,这样在量产的时候就是一样的了。
那么我现在的问题是,发射端发送6个随机数给接收端,程序应该怎么写,发送一个数字我可以正常发送和接收。数据长度.数据地址.数据都知道怎么写,但是若改为发送6个数字我就搞不定了。所以求大神们帮帮我。一方面看看我的思路是否可行,有没有更好更简单的办法,另一方面,帮我解决成功发送6个数字的问题。就是按下按键之后,发送一串数字,这串数字包含6个随机数,这段的程序改怎么写。头都大了,谢谢了!
用一个4字节的唯一ID作为地址就行,然后用扫二维码的方式把接收机的码输入到遥控器上