-
你好,这两天我认真看了一下手册,决定从寄存器入手。首先,配置好cc2500的寄存器后,我想要读某个寄存器的值,可是发现函数值返回不了,调到函数里面去看,发现想要返回的那个值(value)一直跳来跳去而且不是我配置的值。
INT8U halSpiReadReg(INT8U addr)
{
INT8U temp, value;
temp = addr|READ_SINGLE;//读寄存器命令
CSN_0;
while (P1IN & 0x02);
SpiTxRxByte(temp);
value = SpiTxRxByte(0);
CSN_1;
return value;
}
然后,想读TXBYTES里面的数据个数也遇到这样的问题,读代码如下
INT8U halSpiReadStatus(INT8U addr)
{
INT8U value,temp;
temp = addr | READ_BURST; //写入要读的状态寄存器的地址同时写入读命令
CSN_0;
while (P1IN & 0x02);
SpiTxRxByte(temp);
value = SpiTxRxByte(0);
CSN_1;
return value;
}
最后,我定义两个变量就j,k。 令 k=halSpiReadStatus(CCxxx0_TXBYTES);
j=halSpiReadReg(CCxxx0_ADDR); iar编译器一直警告就j,k被定义了但没有用。这些问题可不可以麻烦你解答一下
-
看过TI的例程,它给的是cc1101的例程,虽然加了一些程序端口有所改动,但整体还是和例程差不多,cc2500也是用的模块,然后,可不可以给个解决问题的思路,查看了好多资料还是不知所措。
-
嗯,谢谢,我找到问题了
-
找到答案了
-
另外,DCO和ACLK不是同一类型的名词,launchpad 里面ACLK根本不能由DCO产生
-
launchpad 上电后,MCLK,SMCLK 是DCOCLK产生的,而ACLK是由12K的VLOCLK产生的,你进入低功耗3模式,辅助系统时钟都不工作了,还怎么产生PWM 波
-
留名盖楼
-
又是要回复
-
正要找这种资料看,不管用不用的着,谢谢分享
-
还是简单的顶一下吧,的节约点用
-
谢谢楼主分享,拿过来看看先
-
kankan
-
看看先
-
4546546546546546545646546