历史上的今天
今天是:2025年07月16日(星期三)
2021年07月16日 | msp430单片机开发实录(25)
2021-07-16 来源:eefocus
现象:
产品开发完成,并且经过严苛、详细的测试后,已经开始批量生产了,但是大家提出一个问题:能不能把功耗再降低一些,目前产品的功耗有些高(超过50uA),用干电池供电的话,用不了1年就要换电池。
试验:
因为我们一直以来的产品都是电池供电的,对于产品的功耗一直都做得很低,这也是我们一直使用TI的MSP430系列单片机的原因,因为它的超低功耗做的确实很好。
不过这款产品因为功能太多,并且有一个很好点的地方:每1s都要进行一次串口通信(每次通信几十个字节,波特率9600),在最初方案设计以及产品验证时,所有参与人员都认为目前的功耗已经做到最好了,没有再下降的空间了。并且这款产品的功耗与其他厂家同类产品相比,功耗基本一样。所以就觉得功耗降不下来了。
但是今天忽然考虑到一个问题:msp430单片机数据手册上说,低功耗状态下,单片机检测到中断后,进行中断处理时,自动退出低功耗状态,处理完中断后,退出中断时自动进入低功耗状态,而如果在退出中断时手动添加了退出低功耗状态的语句,那退出中断后,是不会进入低功耗状态的。而我们的程序由于接受完完整的一帧数据后,需要进行及时处理,所以在退出中断时,添加了退出低功耗状态的语句,在主循环中处理完数据后,才会再次进入低功耗状态。
因为串口采用的中断方式,每次中断接受一个字节,所有数据接收完后才会处理,所以,能不能在没有接收完所有数据的时候,串口中断退出时直接进入低功耗状态?
于是对程序进行了优化:只有在接收完一帧数据后才退出低功耗状态,否则不退出低功耗状态。
验证:
根据这个想法,对程序中的串口中断函数退出时根据条件退出或不退出低功耗状态,经过测试,电流减小了20uA左右,效果明显。
备注:
msp430单片机的的超低功耗确实很强大,但是实现起来是需要不断地深入研究,实践,最后总能做到更低功耗。
史海拾趣
|
本帖最后由 freebsder 于 2015-4-17 14:40 编辑 楼主从08年始没在登录过社区,中间也没有任何关于本贴的交流,我锁了,如果楼主回来有异议,可以找版主或管理员。freebsder 我有单片机方面很多的毕业设计论文,都是word版的,由于太大不方便 ...… 查看全部问答> |
|
请教:deamon 的一个串口通信程序为什么不能读出完整的数据? 各位大侠,问题如下: 我先了个串口通信的程序,去访问一个串口设备,先写入一个16进制串,然后读,发现这时有个问题,如果我程序是deamon的,我只能读到部分数据,如果不是,我就能读到所有的数据。 主程序如下: int main(void) { &n ...… 查看全部问答> |
|
wince开发遇到的问题,用CTime::GetCurrentTime()获取时间得到的不对,在2款PDA上都试了下,一款是WINCE5.0,一款是HP的PDA系统是Windows Mobile的,在这两款PDA上得出来的时间大概都是西8区的时间,然后同样的程序,用仿真器运行,得出来的就是正常 ...… 查看全部问答> |
|
十一收拾自己一堆破烂,弃之可惜,束之无地,拿出来一些处理,有买有送。 自己还留了一堆,也是破烂,哎,爱倒腾,改不了,搬一次家扔点,搬一次扔点……。 都是以前玩的时候留下的,喜欢电子制作的初学者不防拿去。 &n ...… 查看全部问答> |
|
大家好! 我有个气体传感器, 供电5V. 线性输出 0.015V ~ 2.5V, 表达0~20000. 这个传感器在实际使用环境温度有高有底, 湿度也一样, 因为自己不会画板, 也不懂电路, 无法分辨好坏. 我在淘宝找了电子秤的板子(都有说ADC芯片). ...… 查看全部问答> |
|
征集 无线通讯、2.4G、wifi模块、蓝牙模块开发创业伙伴 各位专家好,我系一名从事无线通讯方案产品的销售工作者,在无线遥控产品方面有大量的客户资源,本着诚信合作的原则,希望借此平台能够寻求到几位事业上的合作伙伴,年龄不限,单身最佳!(征集 无线通讯、2.4G、wifi模块、蓝牙模块开发创业伙伴) ...… 查看全部问答> |
|
我用的是iar编译环境,P1口是多中断源,进入中断之后中断标志位应该需要软件清零才对,我在刚进中断的地方设置了断点,这时观察P1.4的中断标志位是1,但是我看了一下cpu的中断标志位之后,再来看P1口的中断标志时,P1.4的中断标志位就被清零了,P1 ...… 查看全部问答> |
|
(1)任务设计并制作交流变换为直流的稳定电源。(2)要求1.基本要求(1)稳压电源在输入电压220V、50Hz、电压变化范围+15%~-20%条件下: a.输出电压可调范围为+9V~+12V b.最大输出电流为1.5A c ...… 查看全部问答> |




