大家好!
小弟最近在学习cc1101点对多点通信,遇到了以下几个问题搞了好久还不知如何解决,请各位大牛们给些指点吧,万分感谢!!!
基本结构:三台cc1101收发设备(3台上位机),每台收发设备各自又独立对接10个cc1101收发设备(10个下位机)。为节省功耗,平时下位机处于“mcu休眠cc1101模块醒着”的状态以侦听上位机下发的信号,如果某个下位机收到对应的上位机在呼叫它,cc1101模块就会中断唤醒mcu,从而建立上下位机的通信。
采用CC1101的GDO0或GDO1中断唤醒MCU
问题:
1、怎样配置GDO0或GDO1产生中断呢?有人说可以配置为0x06,通过侦测到同步字唤醒,这样的话又该如何配置同步字呢,是不是每台设备需配置不同的同步字,如此才能实现对应的两台设备独立通信而不干扰其它设备。
2、如何屏蔽其它设备的干扰?当一台上位机向与之对接的10个下位机中的一个发送唤醒指令时,是不是会同时唤醒其它9个下位机甚至会唤醒与之距离不远的其它下位机?
3、cc1101的地址滤波功能的实现与MCU有关吗?在MCU休眠的时候通过cc1101的地址滤波功能是否可以实现单对单通信,比如我的1号上位机要与与之对接的2号下位机通信,在向2号下位机下发唤醒指令时,在mcu休眠的时候可以使用地址滤波识别各个不同的下位机吗?