打印
[信息]

【实战经验】STM32 ADC模拟看门狗及其应用

[复制链接]
3842|2
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
本帖最后由 香水城 于 2017-8-11 14:35 编辑

STM32 ADC模拟看门狗及其应用

前言
模拟看门狗特性允许应用程序检测输入电压是否超出用户定义的高低阈值,用户可以预先设定个模拟看门狗的上下限电压值,一旦采集到的电压超出该上下限,将会触发模拟看门狗中断。模拟看门狗一般用于检测单个的常规或注入转换通道,或同时检测所有的常规和注入通道。


模块框图

模拟看门狗可以预先设置ADC转换的高低阈值,ADC_HTR寄存器来配置ADC转换的上限阈值,ADC_LTR寄存器用来配置ADC转换的下限阈值。


应用示例
ADC配置代码



如上图所示,AnalogWDGConfig结构体中分别使能了模拟看门狗及中断,设置了电压的上下阈值HighThreshold和LowThreshold。模拟参考电压为3.3V,以上代码设置的下限电压阈值为3.3*1/8=0.41V,上限电压阈值为3.3*5/8=2.06V。

模拟看门狗中断服务程序

当模拟看门狗检测到电压高于上限或者低于下限时将会产生看门狗中断,中断服务程序触发后,可以做出一些应对措施。这里置了ubAnalogWatchdogStatus标志,然后由主程序去根据标志的值去执行相应处理程序。



启动ADC转换代码

使用循环模式DMA启动ADC转换,DMA可以降低CPU负载。

结论
控制系统中,需要测量严格电压、压力、温度等范围的信号,使用模拟看门狗能够快速地检测到异常状况,并做出相应的应对措施,以确保设备安全。


对应的PDF:STM32 ADC模拟看门狗及其应用
更多实战经验请看:【ST MCU实战经验汇总贴】

沙发
yiyigirl2014| | 2017-4-7 19:53 | 只看该作者
这个一直检测会不会增加系统功耗?

使用特权

评论回复
板凳
mmuuss586| | 2017-4-7 19:59 | 只看该作者
学习了

使用特权

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

本版积分规则

认证:意法半导体(中国)投资有限公司
简介:STM32技术专家

596

主题

17097

帖子

287

粉丝