CC2530遇到的低功耗问题

程序又出现BUG,终端采集到的温度值始终是第一次。调试发现是低功耗模式那里有问题。进入函数屏蔽掉低功耗函数问题依旧。这是为什么呢? 又去看了相关文档关于低功耗部分的文档。最后看看程序,发现BUG居然又是寄存器设置的问题,老板程序有一部分让我迷惑,屏蔽掉了果然就好了。 //设置为输入上拉,防止浮空引脚,减少电流消耗及不确定状态 P0SEL = 0x00; P0DIR = 0x00; P
摘要由CSDN通过智能技术生成
程序又出现BUG,终端采集到的温度值始终是第一次。调试发现是低功耗模式那里有问题。进入函数屏蔽掉低功耗函数问题依旧。这是为什么呢? 又去看了相关文档关于低功耗部分的文档。最后看看程序,发现BUG居然又是寄存器设置的问题,老板程序有一部分让我迷惑,屏蔽掉了果然就好了。
    //设置为输入上拉,防止浮空引脚,减少电流消耗及不确定状态
    P0SEL = 0x00; P0DIR = 0x00; P0INP &= ~0xFF;
    P1SEL = 0x00; P1DIR = 0x00; P1INP &= ~0xFF;
  


上面看了文档后知道是什么意思了。但是下面紧接着一段代码类似上面部分代码,就是此段出了问题。

    P2SEL &= ~0x07; 
    P2DIR &= ~0x1F; 
    P2INP &= ~0x1F; 
    P2INP |= 0xE0;


屏蔽掉上段代码,问题解决。但是我还是不知道为什么这段代码会造成温度采集的值始终不变。委屈

 

下面是完整后进入低功耗模式的设置代码。

void halMcuSetLowPowerMode(uint8 mode)
{
    //设置为输入上拉,防止浮空引脚,减少电流消耗及不确定状态
    P0SEL = 0x00; P0DIR = 0x00; P0INP &= ~0xFF;
  • 4
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值