AN2658
应用笔记
如何使用STM8S微控制器中的
模数转换器
导言
该应用笔记的目的在于说明如何使用STM8S微控制器的模数转换器。它说明了如何配置ADC寄
存器和微控制器资源,以及如何使用ADC的不同工作模式。
该应用笔记描述了固件函数库中的例程(包含源代码),固件函数库可从ST的网站下载:
www.st。
本文的英文原文下载地址:
www.st/stonline/products/literature/anp/14152.pdf
目录AN2658 目录
1ADC的硬件描述 (3)
1.1通用特性 (3)
1.2ADC操作模式 (4)
2特性总结 (5)
2.1分辨率 (5)
2.2时钟选择 (5)
2.3转换触发 (5)
2.4ADC速度/采样时间 (5)
2.5参考电压 (5)
2.6输入模拟通道的选择 (5)
2.7数据存储 (6)
3配置ADC寄存器 (7)
3.1选择操作模式 (7)
3.1.1单次转换模式 (7)
3.1.2连续转换模式 (7)
3.1.3外部触发转换 (7)
3.2转换速度的选择 (7)
3.3模拟输入的选择 (7)
3.4转换结果的存放 (7)
3.5ADC中断管理 (8)
4实际应用 (9)
4.1应用领域 (9)
4.2硬件连接示例 (9)
4.3提高精度的方法 (11)
5设计建议 (12)
6使用LED显示ADC的转换结果 (13)中文翻译英文转换器
6.1概述 (13)
6.2硬件描述 (13)
6.3固件描述 (13)
7定时器TIM1的ADC转换触发 (14)
7.1概述 (14)
7.2硬件描述 (14)
7.3固件描述 (14)
8版本回顾 (15)
1 ADC的硬件描述
1.1 通用特性
STM8系列微控制器包含一个最多16通道的模数转换器。模数转换器的分辨率为10位。外部模拟输入的通道数取决于所选的STM8产品的封装。
ADC是一个逐次逼近的模数转换器。支持单次或连续转换模式。转换结果存放在寄存器中。由于ADC的分辨率为10位,而ADC的数据寄存器是8位的,因此ADC的转换结果被存放在两个8位寄存器中,数据可向左或向右对齐(可选)。
启动转换的事件可由软件或STM8的内部定时器1产生(任何一个定时器事件均可)。A/D转换的启动也可由一个外部引脚触发。
ADC的参考电压取决于封装。它可以来自于外部,在这种情况下参考电压必须连接到两个外部引脚;或者是在内部与模拟供电引脚相连接。参考电压的范围为2.75V至V DDA。测量电压的范围为V REF+至V REF-。可通过模拟缩放的功能来提高分辨率,即使用与测量电压范围相当的较小参考电压。
如果需要,转换结束后可产生中断。
ADC由MCU的主时钟经分频后的时钟驱动,分频因子可编程。这使得用户可根据自己的应用需求来选择ADC的时钟速度。
图1ADC模块结构框图
1.2 ADC操作模式
图2和图3描述了ADC的单次和连续转换模式。
图2单次转换模式
图3连续转换模式
2 特性总结
表1列出了STM8 ADC的主要特性。
表1STM8 ADC特性
特性STM8 ADC 分辨率 10位
时钟频率f ADC = 1或2或4MHz (参见数据手册)
触发源软件,定时器或外部引脚触发
操作模式单次或连续转换模式
转换速度f ADC = 4MHz时,最小3.5μs
参考电压外部引脚:2.75V至V DDA,支持模拟缩放功能(在某些封装上具有V DDA)
输入通道数最多16通道
数据格式可选的左对齐或右对齐
2.1 分辨率
STM8的ADC转换器有10位的分辨率。STM8的特殊之处在于,如果用户可接受较低的分辨率,则读转换结果的速度会加快;用户可通过选择相应的寄存器对齐方式,只读10位中的8位。
配置左对齐或右对齐的寄存器为ADC_CR2。
2.2 时钟选择
A/D转换速度取决于ADC的时钟信号。时钟频率必须在1MHz或2MHz或4MHz(参见数据手册)之间。ADC的时钟频率由主时钟分频而来。
用于选择时钟频率的寄存器为ADC_CR1。
2.3 转换触发
ADC的转换可由定时器1的TRGO(触发输出)事件或外部引脚ADC_ETR的上升沿触发。也可通过设置ADON位来软件触发。
用于选择触发源的寄存器为ADC_CR2。
2.4 ADC速度/采样时间
ADC的速度(也称之为采样时间)影响测量精度,并且必须根据所测量电压源的输出阻抗及所需要的转换精度来选择。采样时间不能够独立于ADC时钟频率来设置。
ADC时钟速度可选择为f MASTER/2至f MASTER/18,其中f MASTER为微控制器的内部时钟。STM8 ADC 的最大转换速度为3.5微秒。
用于选择时钟分频系数的寄存器为ADC_CR1。
2.5 参考电压
ADC的参考电压必须连接至外部引脚,或某些封装上在内部与模拟供电相连接。参考电压必须在模拟供电电压范围内,且参考电压的最小值为2.75V。
2.6 输入模拟通道的选择
STM8 ADC最多有16个模拟输入连接在GPIO输入引脚上。在某些产品上模拟输入较少(取决于产品封装)。必须将ADC引脚配置为浮空输入,并且关闭该引脚上的输入施密特触发器(这将会降低功耗)。
用于选择输入模拟通道的寄存器为ADC_CSR。
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论