我们原用CC1000做无线收发的产品,现由于CC1000的技术落后,有一些不能满足现在需求,现对其升级为CC1100,针对升级的CC1100,其驱动和操作程序完全不一样,所以有几个问题想问一下:<br />1、原CC1000进入低功耗模式,只需要向寄存器写入一个值就行了,唤醒也一样要修改寄存器<br /> void cc1k_PwrDown(void)<br />{<br /> cc1k_write( 0x3f, MAIN_ADDR ); // close all<br /> cc1k_write( 0x0, PAPOW_ADDR ); // close power<br />}<br />void cc1k_Wakeup2Rx(void)<br />{<br /> cc1k_write( 0x3b, MAIN_ADDR ); // set to Rx<br /> cc1k_write( 0x40, CURRENT_ADDR );// set Rx current <br /> delay_ms(2000);//等待5MS<br /> cc1k_write( 0x39, MAIN_ADDR ); // open CORE, BIAS<br /> delay_ms(200);<br /> cc1k_write( 0x11, MAIN_ADDR ); // open FS, CORE, BIAS, Rx<br /><br />}<br />而CC1100,并没有讲怎么让其进入低功能状态,怎么操作让其唤醒?<br /><br />2、RSSI信号强度指示,CC1000是需要通过ADC采集其电压来判断是否有数据,而CC1100是直接数字化放在一个寄存器里,但没有说明这个寄存器值是多少才能表示有数据过来?并讲此值是基于RX链中的当前增益设定和信道中的测得信号等级。但当前增益设定是由什么寄存器来完成的?<br /><br />理解:是不是CC1100平时在睡眠状态,只能有数据满足其同步词汇、前导字条等,就会被唤醒?<br /> 其RSSI信号强度,由一个寄存器设置好,比较两值,如果低于的话,则表示有数据过来?<br /><br />因为从其一些参考代码,根本就没有这些信息?<br /><br />请做过CC1100或CC2500的高手帮解答,谢谢!<br /> |
|