我用的ZStack-CC2530-2.3.0-1.4.0 ,想电源低功耗管理,但给终端加POWER_SAVING 预编译,DB18B20采集发送就乱字符(串口和协调器接收), 不加POWER_SAVING 预编译DB18B20采集发送正常,这到底怎么回事?
Susan Yang:
终端节点低功耗模式时,串口是无法接收数据的,它是周期性唤醒的。协调器和路由器使用串口不会存在这样的问题。
redora chang:
回复 Susan Yang:
Susan Yang 非常感谢您的回复,之前我没有表述清楚,终端我没有调用串口,我只是用了协调器的串口输出和LCD显示,折腾了两天 ,发现这样的问题,就是在测温子程序中不能出现16位的运算,或者在sampleapp.c文件中LCD显示也不能复杂(需要多次调用pkt->cmd.Data[ ]),否则就会乱字符。是不是睡眠模式下运算量不能太大,还是怎么回事? 而且最奇怪的是,我用手触摸DS18B20时,lcd又能正常显示,串口也接收正常,但当手离开后温度恢复至环温,这时就又是乱字符。真是让人头痛,还望您能赐教!
bo fu:
回复 Susan Yang:
不是说外部中断可以唤醒休眠嘛,串口中断能唤醒休眠吧。怎么做到呢 ,
bo fu:
回复 Susan Yang:
官网不是说可以外部中断来唤醒休眠嘛,串口中断可以么,还有如果串口不用DMA模式,而用中断模式怎么做呢?是不是要预编译什么命令呢?