STM32之ADC原理

本文详细介绍了STM32F103RBT6微控制器的ADC特性,包括ADC的位数、转换时间和精度。讲解了ADC的两个控制器、通道配置、采样时间设置、规则通道与注入通道的区别、单次转换与连续转换模式、中断处理、时钟配置以及相关寄存器的使用。此外,还提到了ADC的对齐方式、采样时间寄存器以及通道序列和数据寄存器的配置。内容深入且实用,适合STM32开发者参考。
摘要由CSDN通过智能技术生成


ADC的位数决定了ADC的精度,有8位的,12位的,16位的等。

还有一个很重要的参数就是转换时间。

STM32f103RBT6有2个ADC控制器。128KFlash,20KRAM

每一个ADC控制器都有多个通道,例如ADC1的外部通道有16个,可以理解为有一个开关分别连接各个通道。

每个通道的采样间隔和采样时间都可以设置。

三。ADC各通道与IO管脚对应表

一般负参考电压接地,正参考电压接3.3V

模拟输入电压不能超过3.3V,否则输入引脚可能被烧毁。

ADC框图

Vref+连接到VDDA,Vref-连接到VSSA。

最多4个通道连接到注入通道,最多16个通道连接到规则通道。

什么是规则通道:相当于正常运行的程序,最多16个通道,规则通道和它的转换顺序在ADC_SQRx中选择,规则组转换的总数应写入ADC_SQR1寄存器的L[3:0]中。

规则通道转换的结果保存在规则通道中。

什么是注入通道:相当于中断,最多4个注入通道。注入组和它的转换顺序在ADC_JSQR寄存器中选择,注入组里转换的总数应写入ADC_JSQR寄存器的L[1:0]中。

注入通道转换的结果保存在注入通道的数据寄存器中。

规则通道VS注入通道

四。单次转换VS连续转换

单次转换完成后不会自动转到另外一个通道的转换,需要手动设置才能启动,连续转换是ADC转换结束后马上就自动启动另一次转换。

扫描模式

只在最后一个通道转换完毕后才会产生EOC或JEOC中断。一般通过DMA读取数据。

五。ADC中断

六。ADC的时钟配置

例如:系统时钟是72M,就要选择6分频或8分频,6分频为12M。

七。ADC_CR1寄存器


这里我们一般选择独立模式。

八。ADC_CR2寄存器

九。对齐方式

因为STM32为12为AD,寄存器为16位,所以需要选择对齐方式。

本次实验中选择的软件转换,也就是19:17位设置为111.

十。ADC_SMPR1寄存器

十一。ADC_SMPR2寄存器

ADC的时钟已经有RCC_CFGR寄存器设置。

ADC_SMPR1和ADC_SMPR2寄存器用来设置通道0到通道17的采样时间。ADC每个通道都可以独立设置采样时间。

?注:应该是最小转换时间为1us

最小的转换时间是1us。

十二。ADC_SQR1,SQR2,SQR3规则序列寄存器

设置规则通道序列的长度,第一个转换对应哪一个通道,第二个转换对应哪个通道等等。

十三。ADC_JSQR注入系列寄存器

十四。ADC_DR 规则通道数据寄存器

我们这里主要用到低16位。

十五。ADC_SR 状态寄存器

十六。ADC常用的库函数

例:

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值