- 1、本文档共22页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
零死角玩转stm32-中级篇2、ADC(DMA模式)
0、友情提示
《零死角玩转STM32》系列教程由初级篇、中级篇、高级篇、系统篇、
四个部分组成,根据野火STM32 开发板旧版教程升级而来,且经过重新深入编
写,重新排版,更适合初学者,步步为营,从入门到精通,从裸奔到系统,让
您零死角玩转STM32。M3 的世界,与野火同行,乐意惬无边。
另外,野火团队历时一年精心打造的 《STM32 库开发实战指南》将于今
年10 月份由机械工业出版社出版,该书的排版更适于纸质书本阅读以及更有利
于查阅资料。内容上会给你带来更多的惊喜。是一本学习STM32 必备的工具
书。敬请期待!
-第 2 页-
2、ADC (DMA 模式)
2.1 ADC 简介
ADC (Analog to Digital Converter) ,模/数转换器。在模拟信号需要以数字
形式处理、存储或传输时,模/数转换器几乎必不可少。
STM32 在片上集成的ADC 外设非常强大。在STM32F103xC、
STM32F103xD 和STM32F103xE 增强型产品,内嵌3 个12 位 的ADC ,每个
ADC 共用多达21 个外部通道,可以实现单次或多次扫描转换。如野火STM32
开发板用的是STM32F103VET6,属于增强型的CPU,它有18 个通道,可测量
16 个外部和2 个内部信号源。各通道的A/D 转换可以单次、连续、扫描或间断
模式执行。ADC 的结果可以左对齐或右对齐方式存储在16 位数据寄存器中。
模拟看门狗特性允许应用程序检测输入电压是否超出用户定义的高/低阀值。
2.2 STM32 的ADC 主要技术指标
对于ADC 来说,我们最关注的就是它的分辨率、转换速度、ADC 类型、参
考电压范围。
分辨率
12 位分辨率。不能直接测量负电压,所以没有符号位,即其最小量化单位
12
LSB = Vref+ / 2 。
转换时间
转换时间是可编程的。采样一次至少要用14 个ADC 时钟周期,而ADC 的
时钟频率最高为14MHz,也就是说,它的采样时间最短为1us。足以胜任
中、低频数字示波器的采样工作。
ADC 类型
ADC 的类型决定了它性能的极限,STM32 的是逐次比较型ADC 。
参考电压范围
-第 3 页-
STM32 的ADC 参考电压输入见图2-1。
图2-1 参考电压
从图中可知,它的参考电压负极是要接地的,即Vref- = 0V。而参考电压
正极的范围为2.4V ≦Vref+ ≦3.6V,所以STM32 的ADC 是不能直接测量负电压
的,而且其输入的电压信号的范围为:VREF- ≦VIN ≦VREF+ 。当需要测量负电压
或测量的电压信号超出范围时,要先经过运算电路进行平移或利用电阻分压。
-第 4 页-
2.3 ADC 工作过程分析
图2-2 ADC 架构图
我们以ADC 的规则通道转换来进行过程分析。所有的器件都是围绕中间的
模拟至数字转换器部分 (下面简称ADC 部件)展开的。它的左端为VREF+、
VREF-等ADC 参考电压,ADCx_IN0~ADCx_IN15 为ADC 的输入信号通道,即某
些GPIO 引脚。输入信号经过这些通道被送到ADC 部件,ADC 部件需要受到触
-第 5 页-
发信号才开始进行转换,如EXTI 外部触发、定时器触发,也可以使用软件触
发。ADC 部件接收到触发信号之后,在ADCCLK 时钟的驱动下对输入通道的信
号进行采样,并进行模数转换,其中ADCCLK 是来自ADC 预分频器的。
ADC 部件转换后的数值被保存到一个16 位的规则通道数据寄存器(或注入
通道数据寄存器)之中,我们可以通过CPU 指令或DMA 把它读取到内存(变
量)。模数转
文档评论(0)