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常用的库函数

例:

STM32之ADC原理相关推荐

  1. STM-32:ADC模数转换器—ADC单通道转换/ADC多通道转换

    目录 一.ADC 模数转换器 1.1ADC简介 1.2 逐次逼近型ADC工作原理 1.3STM32中的ADC基本结构 1.4STM32中ADC的输入通道 1.5STM32中的ADC的四种转换模式 1. ...

  2. STM32光敏传感器原理

    发现很多人都使用光敏电阻,但只是用了AD读取了电压值,或者算出了电阻值,就发送给上位机或者服务器,美其名曰获取了光照度,但其原理并...... 图中的 LS1 就是光敏传感器,其实就是一个光敏二极管, ...

  3. STM32理论 —— ADC、存储、定时器、时钟、中断

    文章目录 1. ADC 1.1 ADC相关寄存器 1.1.1 ADC 控制寄存器1(ADC_CR1) 1.1.2 ADC 控制寄存器2(ADC_CR2) 1.1.3 ADC 采样时间寄存器(ADC_S ...

  4. STM32模数转换器(ADC)

    1.ADC的简要 我们首先说一下ADC的转换过程,然后说一下原理,当然如果嫌啰嗦可以直接跳过. ADC是英文Analog-to-Digital Converter缩写,翻译过来就是模数转换器,是指将连 ...

  5. STM32使用ADC+电位器测电压

    一.WDD35D-4导电塑料电位器 1. 电位器 电位器是具有三个引出端.阻值可按某种变化规律调节的电阻元件.电位器通常由电阻体和可移动的电刷组成.当电刷沿电阻体移动时,在输出端即获得与位移量成一定关 ...

  6. 使用HAL库开发STM32:ADC基础使用

    文章目录 目的 基础说明 基础使用 配置选项说明 轮询 单通道 单次 轮询 单通道 连续 轮询 多通道 扫描 中断 单通道 中断 多通道 扫描 DMA 单通道 单轮 DMA 单通道 连续 DMA 多通 ...

  7. STM32之ADC实例(基于DMA方式)

    出处:https://blog.csdn.net/zouleideboke/article/details/75112224?locationNum=9&fps=1 ADC简介: ADC(An ...

  8. 双极型adc与stm32_关于STM32 双ADC同步规则转换两路数据的问题?

    因系统要求需升级ADC的采样方式(以前方式:扫描方式,TIMER2触发ADC软启动,2通道规则序列,DMA传完中断),为了进一步实现两路信号的同步性能,采样STM32 双ADC同步规则转换.(time ...

  9. STM32 FSMC/FMC原理保姆级讲解(二)

    上一话我们说了FSMC的基本原理及控制逻辑,这一讲我们来说下FSMC如何通过HAL库来进行配置,及具体参数 STM32 FSMC/FMC原理保姆级讲解(一) FSMC的初始化 在使用SRAM之前,我们 ...

最新文章

  1. Python 的一万种用法:制作 Web 可视化页面
  2. net::ERR_INCOMPLETE_CHUNKED_ENCODING
  3. 汤家凤高等数学2020年强化笔记-第三模块-积分学
  4. java json对象 输出_拼json字符串输出java对象
  5. ServletConfig的详解
  6. Microsoft VBScript 编译器错误 错误原因 代码大全
  7. 如何一行代码搞定SSD模型推理与结果解析
  8. [No000011A]Office Excel设置显示日期与星期
  9. easyBCD多系统引导软件
  10. MongoDB安装配置(Windows)
  11. MacOS系统下matplotlib中SimHei中文字体缺失报错的解决办法
  12. 安装mosek并配置到matlab
  13. C语言中的运算符(超全超详细)
  14. python词云图实例
  15. 自家主机建云服务器_是用云主机还是自己建服务器好?
  16. 计量经济学计算机第1章习题,计量经济学第1章习题.pdf
  17. 计算机网络安全讲座心得,学习信息安全心得体会
  18. JAVA关于Calendar类的使用
  19. 造成503 service unavailable常见的原因以及解决方法
  20. 163 VIP邮箱如何群发邮件?注册电子邮箱哪家发信效果好?

热门文章

  1. 浙江大学计算机科学与技术学院分数线,浙江大学录取分数线一般在多少 高考最低多少分能上浙大...
  2. 10无法更新系统_华为EMUI系统或停留安卓11,无法更新
  3. 一个特殊的内码转换处理对于XML格式的UTF-8
  4. (软件工程复习核心重点)第八章面向对象方法学-第三节:面向对象建模之对象模型
  5. python引入导入自定义模块和外部文件
  6. DHAT:动态堆分析工具
  7. Java Collections工具类
  8. LeetCode 221 最大正方形
  9. ‘ascii‘ codec can‘t encode characters in position
  10. shell 字符串删除特定字符