的用法,你知道几种腾讯云开发者社区

AD采样在电路中是一种比较常见的功能,可以用于电池电压检测、传感器值读取、信号采集等。STM32的ADC,由于引入了DMA,以及多种触发源,功能自然强大,用法也多种多样。这里简单说下单通道情况下,AD采样的几种用法。

1、AD单次转换+软件启动

最基本的用法,通过程序启动AD,AD采集一次,我们就去读一次。这种情况,建议开启AD转换完成中断,在中断中读出AD值并做处理。

这种方式的优点是配置简单,缺点么,太T么简单~

初始化的时候,启动一次。然后在主循环里,每隔一秒启动一次。

电脑输出如下:

2、连续转换+软件启动

在方法1的基础上做调整,从单次转换,变成连续转换。也就是说,只需要开启一次,它就能一直转换,直到程序让它停止。

优点么,省去了频繁开启中断的麻烦。缺点么,需要频繁进入中断去读AD值。配置如下:

初始化的时候开启AD即可,后面无需再频繁开启。

在中断中进行处理,当AD转换次数达到1000次的时候,停止转换。

注意事项:函数HAL_ADC_Stop_IT(&hadc1) 需要在中断内调用,中断外调用不起作用。

3、连续转换+DMA+手动启动

在方法2的基础上,引入DMA这个东西。不得不说,DMA真的是很方便,省去了很多手动操作的麻烦。可以直接把指定数量的AD转换值存入数组里,可以单次存入,也可以循环覆盖。

在方法2里面,每次转换完成,需要我们手动去读一下AD值;启动DMA之后,完全省掉了这个过程,只需要等待1000个值全部转换完成之后触发一个中断即可。

初始化阶段,开启DMA传输:

传输完成之后产生一个中断:

这时候看数组里面的值:

4、连续转换+DMA+定时器+手动启动

通常的做法是,使用定时器做一个定时中断,在定时中断里,调用函数:

HAL_ADC_Start_DMA(&hadc1,(uint32_t *)ad_value,1000); //启动,同时开启中断

方法和原理都比较简单,就不细说了。

5、连续转换+DMA+定时器触发

方法5是对方法4里面的需求的实现过程进行了优化。STM32的定时器可以自动触发AD转换,省去了手动启动的麻烦。例如STM32的TIM1,TIM2,TIM3和TIM4,以及外部中断,都可以做为启动AD转换的触发源。

以TIM3做为触发源为例,如下:

DMA这里要开启循环模式:

TIM3的配置如下,这里实现了一个1ms的定时,也就是说每隔1ms自动触发一次AD转换:

THE END
0.STM32Microcontrollers(MCUs)STM32Cube tools further STM32系列32位微控制器基于Arm® Cortex®-M处理器,旨在为MCU用户提供更高的开发自由度。该系列产品结合了高性能、实时功能、数字信号处理、低功耗/低电压操作和出色的连接性,同时保持高度集成和易于开发的特点。 STM32系列微控制器种类丰富,基于行业标准内核,提供了丰富的工具和软件https://www.st.com/zh/microcontrollers-microprocessors/stm32-32-bit-arm-cortex-mcus.html
1.STM32|产品|STM32|MCU单片机|意法半导体STM|STMCU中文STM32 32位ARM Cortex MCUSTM32系列32位微控制器基于Arm® Cortex®-M处理器,旨在为MCU用户提供新的开发自由度。它包括一系列产品,集高性能、实时功能、数字信号处理、低功耗/低电压操作、连接性等特性于一身,同时还保持了集成度高和易于开发的特点。STM32系列微控制器品种齐全,基于行业标准内核,提供了大量https://www.stmcu.com.cn/Product/pro_detail/PRODUCTSTM32/product
2.专为USBTypeC及功率传输而设的STM32解决方案现有500多款STM32 MCU已内置USB功率传输控制器外设 (UCPD),能够在不使用外部功率传输控制器的情况下实现受电、供电或双角色端口。 STM32 UCPD MCU符合最新的USB PD r3.1规范,并支持: SPR消息(标准功率范围可达100 W) EPR消息(扩展功率范围可达240 W) PPS(可编程电源) AM(备用模式) STM32MCU WIKI USB功率传https://www.st.com/content/st_com/zh/ecosystems/stm32-usb-c.html
3.STM32数字电源生态系统STM32数字电源生态系统 STM32数字电源生态系统概述 产品 进化的生态系统 资源 与Biricha展开合作 STM32数字电源生态系统 (D-Power) 可帮助开发人员加快数字SMPS、照明、焊接、太阳能系统逆变器和无线充电器等数字电源应用的开发进程。该生态系统可提供硬件、软件工具、嵌入式软件、培训资源以及相关文档。 以数字电源为https://www.st.com/content/st_com/zh/ecosystems/stm32-digital-power.html
4.STM32单片机的工作原理和调试方法控制/MCU四、STM32单片机的应用前景 1.物联网:随着物联网技术的普及,STM32系列单片机在智能家居、智能穿戴设备等领域有着广泛的应用前景。它们的高性能、低功耗和丰富的接口使其成为物联网解决方案的理想选择。 2.工业自动化:STM32系列单片机在工业自动化领域也具有广泛应用前景。它们的高性能、实时时钟和丰富的外设使得在工https://www.elecfans.com/emb/danpianji/202309132244678.html
5.STM32单片机和51单片机有何区别?51和STM32的区别 51单片机是对所有兼容Intel8031指令系统的单片机的统称,这一系列的单片机的始祖是Intel的8031单片机,后来随着flash ROM技术的发展,8031单片机取得了长足的进展成为了应用最广泛的8bit单片机之一,它的代表型号就是ATMEL公司的AT89系列。 STM32单片机则是ST(意法半导体)公司使用ARM公司的cortex-M3为核心生https://picture.iczhiku.com/weixin/message1614561564027.html