
1. 引言 在 STM32 MCU 中,ADC 有多种启动触发方式,本文对各种触发源的原理进行介绍,方便大家以后如何选择合适的触发源。 2. ADC 的架构与触发源 |' g3 I/ ]8 M. |# H ] 以 STM32G474 为例,ADC 模块的架构框图如下,基于逐次逼近原理(SAR)完成模拟量到数字量的转换。前端通过多通道选择开关(input selection)来对转换通道进行切换,从而实现对多个输入通道的信号进行采样。* i1 V. |3 q! r- o0 f* h S4 j ADC 模块的信道可以工作在规则模式或是注入模式下,对应的触发源分别为规则触发源与注入触发源。所有规则通道共享一个 ADC 结果寄存器,一个通道转换完成后需要及时读取转换结果,否则转换结果可能会被覆盖,具体取决于 overrun 的相关设置。 . D# H& H; N, w ![]() 2.1. 各类触发源工作方式' K/ d0 {8 ~" L0 b8 G+ @ ADC 的触发源整体上可以分为两类:软件触发与硬件触发。如下面两个表所示,EXTEN[1 :0]与 JEXTEN[1 :0]分别用于设定规则信道和注入信道的触发方式,当其值为 0 时,触发方式为软件触发,否则为硬件触发。 4 D F: z/ b6 f4 O5 J, G ![]() 0 F! B1 q, @$ m 如果选择软件触发,那么当 ADSTART 或 JADSTART 被置位时,ADC 会立即启动转换。如果选择硬件触发,那么当 ADSTART 或 JADSTART 被置位后,要等待指定的外部事件发生时,ADC 才会启动转换。8 q' ^# i; [" M 对于硬件触发即外部事件触发来说,有多达 32 种外部事件可以选择,这些触发源大致可以分为以下四类,具体可以参考 RM 中关于 adc_ext_trgx 和 adc_jext_trgx 的描述。 ) h3 ?" @1 y6 N% r • 定时器的比较/捕获事件- {, A6 P6 \" I9 ^7 o. g6 F; ] • 定时器的触发输出 TRGO/TRGO22 M/ E$ t# p/ _* s, ?1 L/ p • 高精度定时器的 ADC 触发 • 外部输入管脚: l; s5 U$ T2 G, Q* Y' E9 @' ` 一个 ADC 单元可以选择多个硬件触发源,多个硬件触发源之间为“OR”的关系,即任何一个被选定的外部事件发生都可以触发 ADC 启动转换。: U- Q# W2 C5 ?9 Q/ E1 c/ i 下面对几类触发源的工作方式进行介绍。 $ i$ S" A$ \; n3 r& J0 o 完整版请查看:附件/ L O2 L+ S2 c- @( g1 t , u+ l* Z) _2 g+ O( O4 J6 c/ W |
LAT1027_ADC_触发源介绍_v1.0.pdf
下载485.6 KB, 下载次数: 20
OpenBLT移植到STM32F405开发板
为什么要先开启STM32外设时钟?
【STM32MP157】从ST官方例程中分析RPMsg-TTY/SDB核间通信的使用方法
【经验分享】STM32实例-RTC实时时钟实验④-获取RTC时间函数与中断服务函数
STM32 以太网 MAC Loopback 的实现
STM32功能安全设计包,助力产品功能安全认证
基于STM32启动过程startup_xxxx.s文件经验分享
HRTIM 指南
ST 微控制器电磁兼容性 (EMC) 设计指南
适用于STM32微控制器的ΣΔ数字接口入门