打印
[MM32硬件]

低功耗产品软硬件设计

[复制链接]
973|0
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
tpgf|  楼主 | 2024-4-10 17:18 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
前言
物联网系统中低功耗设备不可或缺,低功耗传感器形态各异,有的设备是电池供电,有的设备是感应取电。我前后就职的两家单位都涉及到了低功耗硬件产品的开发,自身也是长时间参与该产品的开发,由于工作变动很难接触到开发工作,正好这段时间受一朋友委托开发一个低功耗压力传感器的开发,核心期间全部采用国产化,要显示,Zigbee数据传输,因此我把整个过程记录一下。

低功耗产品的低功耗性能由硬件和软件共同决定,好的低功耗硬件得不到好的软件管理也很难实现较好的低功耗性能,同样好的功耗管理软件没有一个有效的低功耗硬件支撑,也是没有任何价值的。这边文章记录一下以下自己低功耗产品的设计过程,期待与大家一起探讨。

一、架构设计
1.结合产品需求分析硬件架构
这里我的总结是,先要明白产品的功能需求和非功能需求,产品的功能需求我认为是比较好弄清楚的,第一步把所有需要的功能罗列出来,整理一下那些是需要外部硬件支撑的,那些完全依赖于软件,方便后面的硬件设计。但是对于非功能需求就不是很容易搞清楚了,很多需求潜在的影响着或者受其他因素的影响;比如无线模组发射电流不单单是LDO能否提供足够的电流,还要看电源最大允许电流是否满足,还需要关注最大电流对电池寿命的影响,这又会影响电池寿命的问题。这个问题的解决需要比较丰富的经验积累。

功能需求:采集IIC压力传感器、通过Zigbee无线传输、要有显示、通过显示屏和按键进行参数设定、支持无线升级;
其他需求:电池寿命2年以上(有一些其他约定参数)、作为EndDevice加入网络、网络故障恢复、一定的防错机制;

以上需求后续会继续完善;

2.设计硬件框图
硬件架构设计重要的是按照功能、其次按照电源需求进行模块化分割,把那些需要控制电源的电路合理的集合在一起,比如:无线模块发送数据前需要读取传感器的数据,如果传感器功耗较高,就需要把他们的电源单独控制;如果传感器和一些存储芯片同时工作,存储芯片的功耗较低,那么在确保存储芯片不会影响到传感器电源质量的时候就可以把他们电源合并。



MCU和外部看门狗公用一个3.3V电源
外部Flash芯片也是用的MCU的电源,但是有一个EN引脚,只在特定时间打开外部FLASH,FLASH用来存储无线升级的固件
IIC传感器,耗电大户,电源通过EN管理起来
Zigbee,耗电大户,电源通过EN管理起来
显示屏背光,耗电大户,电源通过EN管理起来
3.硬件选型
1.LDO选型:
评估一下整机的峰峰值电流,关注LDO的静态电流,不是Shutdown电流



工作时的电流代表的是LDO在正常工作状态下自身消耗的电流;休眠时电流你需要考虑这个LDO能否休眠,如果他作为主电源芯片,那么这个LDO基本上不会存在休眠的可能性

Zigbee和LCD的电源用TPS62125,国外品牌,因为有库存,朋友说这个不影响,可以非国产
MCU和FLash耗电很小,用一个S-817就差不多了,暂定他因为都是SOT-23-5封装的可选的很多,不担心Pin-Pin兼容问题

2.MCU选型
目前大多数低功耗MCU的低功耗性能都比较优异,MCU选择的时候有两个矛盾的地方,执行速度和执行时间;执行速度反应在主频上面,主频越高,同一个任务的执行时间就越短,但是电流就越大;主频越低,同一个任务执行时间就长,但是期间电流比较小;因此这个需要结合处理器在这段时间内执行操作的类型,如果是和外部设备通过无线模组交互,那么主频没有必要那么高,如果是负载运算,运算结果存储到存储器中,那么就可以考虑升高主频;

这里我选择用MM32L362NT,就是因为他是QFN封装的,低功耗参数,串口、SPI、IIC都够用,FLash也够用;-40的低温也非常优秀

3. 其他期间选型
Flash芯片采用W25Q16J,因为便宜,无线升级也不会经常用,需要写的时候,直接全片擦出。
传感器、显示屏都是别人提供的,看了下芯片手册基本没什么问题;
没有什么好说的,已实现功能为基本目标,同时考虑功耗问题

二、硬件设计
1.硬件原理图设计注意事项
低功耗不是说电路上每个器件进入低功耗了,这个产品就一定能进入低功耗;比如传感器休眠了,单片机也休眠了;但是由于单片机和传感器连接IO电平不匹配,就会导致电流从一个器件流向另外一个器件,整个产品的功耗不会很低;
必要的时候给一些耗电大户加一个电容,以此来降低他工作时对外部电源的影响,比如一些自供电的设备,或者是小容量电池供电设备,不能让电源向外频繁输出大电流。

2.PCB Layout注意事项
多接地:电路板中能接地的地方还是多接地,屏蔽一些干扰的同时也能确保有一个优秀的电源回路
去耦电容按需放置,但是给谁去耦就要离谁近一点。

三、软件设计
建议增量式编码,如果自身会焊接、看的懂原理图、遇到功耗搞不定的时候,建议先焊接一部分电路,调试没有问题的话,在焊接其他的,一部分一部分的增加。

四、功耗测试
分享一个计算功耗的表格,后面会写一个专门的软件来进行计算功耗和电池寿命。

总结
先写到这里,后面在完善!
————————————————

                            版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。

原文链接:https://blog.csdn.net/u011863390/article/details/136449457

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

2073

主题

16049

帖子

15

粉丝