概述
一、通常的 adc转化简介
ADC 简介
- ADC ( Analog - Digital Converter )模拟﹣数字转换器
- ADC 可以将引脚上连续变化的模拟电压转换为内存中存储的数字变量,建立模拟电路到数字电路的桥梁
- 12位逐次逼近型 ADC ,1us转换时间
- 输入电压范围:0~3.3V,转换结果范围:0 ~ 4095
- 18个输入通道,可测量16个外部和2个内部信号源
- 规则组和注入组两个转换单元
- 模拟看门狗自动监测输入电压范围
- STM32F103C8T6 ADC 资源:ADC1、ADC2,10个外部输入通道
VDDA 接入3.3V ,VSSA接GND,所以ADC的输入电压范围是0 ~3.3V
逼近型 比较 一般采用二分法 8位数据时 比较八次 既可以 找到对应的电压值 12位时 需要比较12次
STM32的adc设置
1.对于 ADC 分频 则 ADCCLK 最大接受为 14MHz 故为 6 分频
2.看门狗:其中有一个阈值高线和阈值低线,倘如启动了模拟看门狗 其就会关注所设置的 看门通道 若超出其的阈值范围 看门狗 会申请一个模拟看门狗的中断
3.两位数据寄存器用于存放转化结果的。
ADC基本结构
stm32 ADC内部结构
左边是GPIO 口的16个通道 进入ad转化器
其中有规则组和注入组 规则组可选择16个通道 注入组可以选择4个通道。
转化结果可放在AD数据寄存器中,其中规则组只有一个数据寄存器,注入组有4个数据寄存器。
触发控制提供开始转化 start信号 触发控制可选择软件控制和硬件控制。
硬件触发主要来自于定时器 也可选择外部中断的引脚
adc逐次比较过程、由右边的RCC时钟控制推动。
在规则组和注入组转化完成后会出现EOC信号 置于一个标志位
在图中可看到adc12_IN0对应的是PA0引脚
IN1 对应 PA1引脚
然后IN2、IN3、IN4、IN5、IN6到IN9 依次对应PA2 到PB1引脚。
注:只有ADC1 有通道16和17 ,ADC2和ADC3是没有的
转换模式
单次转换 非扫描模式:
在此模式下,序列菜单就只有序列1 位置是有效
即同时选中一组的方式 改变为只选中一的方式,
将类似于指定通道二的转换,adc将会对通道二进行在转化
结果放置于数据寄存器中,同时将EOC标志位 置于1。
——
若想换一个通道进行转化则将转换的通道改变再进行转换。
连续转化 非扫描模式:无需手动开始转化,也不用判断是否结束, 要读取AD值的时候,直接从数据寄存器中读取即可。
单次转化 扫描模式:
1.每触发一次扫描后便会停止下来,下次转化需要进行再次触发。
2.可在转换的菜单列表中指定转化的通道,每个位置是通道几,并且也是可重复的。
3.可设置指定通道数目的参数,没有必要使用全部通道数目。
4.为了防止数据覆盖就需要用DMA及时将数据挪走。
5.转换完成后触发EOC信号。
连续转化 扫描模式:即是在转化为完成后直接开启下一次转化。
补充:间断模式 在连续转化的几次中暂停一次 需要再次触发才可以继续。
触发控制
在触发源 EXTI线11 上时 具体是引脚还是定时器要采用AFIO 重映射来确定。
触发信号的选择可通过右边的 EXTSEL 寄存器来选择
数据对齐
- ADC是12位的,即转化结果就是12位的数据,但是数据寄存器位16位。
1.第一种是数据右对齐,高位补0;
2.第二种12位数据向左靠,低位补0;
右对齐的数据直接读取为原数据结果
左对齐读数 数据将会大于原数据 实际上是将数据左移 4次;即将数据乘以16。
转化时间
- 在量化和编码之前需要,设置一个采样开关,可利用小容量电容存储采样其开关,再进行AD转换。
- 采样之前需要闭合采样开关,过一段时间后再断开,就产生一个采样时间。
- ADC周期是从RCC时钟分频过来的ADCCLK,
此处计算:14个ADC周期/14MHz = 1微妙
校准
ADC 有一个内置自校准模式。校准可大幅减小因内部电容器组的变化而造成的准精度误差。校准期间,在每个电容器上都会计算出一个误差修正码(数字值),这个码用于消除在随后的转换中每个电容器上产生的误差。
建议在每次上电后执行一次校准
启动校准前, ADC 必须处于关电状态超过至少两个 ADC 时钟周期。
硬件电路
1.ADC 电阻值应该将为千欧级的电阻,
2.传感器和固定电阻值串联分压,传感器阻值变小时,下拉作用变强,输出端电压下降。相反,传感器阻值变大,下拉作用变弱,输出端受到上拉电阻作用,电压就升高。(固定电阻应该选择和传感器电阻阻值相近的电阻 ,这样输出端即可得到位于中间电压 较好的输出。)
STM32 ADC手册
时序图和adc寄存器
最后
以上就是快乐猫咪为你收集整理的ADC数模转化一、通常的 adc转化简介的全部内容,希望文章能够帮你解决ADC数模转化一、通常的 adc转化简介所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复