ZHCA984A December 2019 – August 2021 MSP430FR2000 , MSP430FR2032 , MSP430FR2033 , MSP430FR2100 , MSP430FR2110 , MSP430FR2111 , MSP430FR2153 , MSP430FR2155 , MSP430FR2310 , MSP430FR2311 , MSP430FR2353 , MSP430FR2355 , MSP430FR2422 , MSP430FR2433 , MSP430FR2475 , MSP430FR2476 , MSP430FR2512 , MSP430FR2522 , MSP430FR2532 , MSP430FR2533 , MSP430FR2632 , MSP430FR2633 , MSP430FR2672 , MSP430FR2673 , MSP430FR2675 , MSP430FR2676 , MSP430FR4131 , MSP430FR4132 , MSP430FR4133
MSP430 and EnergyTraceare TMs ofTI corporate name.
Other TMs
MSP430FR4xx 和 MSP430FR2xx 微控制器 (MCU) 的 ADC 模块支持快速 10 位或 12 位模数转换。根据不同的器件(有关详细信息,请参阅器件特定数据表),该模块可实现 10 位或 12 位 SAR 内核以及样本选择控制和窗口比较器。为区分 MSP430FR58xx、MSP430FR59xx 和 MSP430FR6xx 器件中使用的 ADC12_B 模块,此处所述的 ADC IP 被称为 FR2xx/FR4xx ADC。
FR2xx/FR4xx ADC 特性包括:
在 MSP430FR58xx、MSP430FR59xx 和 MSP430FR6xx MCU 中,ADC12_B 模块支持快速 12 位模数转换。该模块采用一个 12 位 SAR 内核、样本选择控制模式和多达 32 个独立的转换和控制缓冲器(ADC12MEM0 至 ADC12MEM31)。转换和控制缓冲器支持转换和存储多达 32 个独立的模数转换器 (ADC) 样本,无需任何 CPU 干预。
ADC12_B 支持 8 个差分或 16 个单端外部输入。ADC12_B 的每个输入通道都具有一个专用的存储器控制寄存器。这允许用户设置独特的属性,例如电压基准输入,并为 ADC 的每个通道提供单独的存储缓冲区。FR59xx 上的 ADC12_B 具有 32 个这样的存储器控制寄存器(ADC12MCTL0 至 ADC12MCTL31)。对一组通道进行采样时,转换结果按顺序存储,并在所有通道完成采样后才能读取。
在 MSP430FR4xx 和 MSP430FR2xx MCU 中,模拟输入多路复用器从 12 个外部模拟信号和 4 个内部模拟信号中选择一个单端外部模拟输入。1.2V VREF 可输出到器件特定的外部通道。片上温度传感器可在内部连接到通道 A12。1.5V VREF 可在内部连接到通道 A13。
在 FR2xx/FR4xx ADC 和 ADC12_B 中,可选择 8 位、10 位或 12 位分辨率。在 FR2xx/FR4xx ADC 模块中,使用 ADCCTL2.ADCRES 位字段,默认设置为 10 位。在 ADC12_B 模块中,使用 ADC12CTL2.ADC12RES 位字段,默认设置为 12 位。
MSP430FR4xx 和 MSP430FR2xx MCU 不支持 DMA。在 MSP430FR58xx、MSP430FR59xx 和 MSP430FR6xx MCU 中,ADC12_B 支持 DMA。
在 MSP430FR4xx 和 MSP430FR2xx MCU 中,中断向量寄存器 ADCIV 具有六个中断标志源,其中三个来自窗口比较器功能。使用 ADC12IV 处理更多的 ADC12_B 中断。
对于 ADC 时钟源和采样率,MODOSC、ACLK、MCLK 和 SMCLK 可设置为 ADC 时钟。转换时间可通过(分辨率位 + 2)× 1/fADCCLK 计算。采样时间可由 ADCSHTx.ADCCTL0 设置为 4、8、16 或最多 1024 个 ADC 时钟周期。采样时间应等于或大于 MSP430FR4xx 或 MSP430FR2xx 器件特定数据表中规定的最小采样时间。该值与等效的内外电阻和电容、分辨率和电压有关。
在 MSP430FR413x 和 MSP430FR203x MCU 中,ADC 引脚选择在 SYSCFG2 寄存器中设置。对于其他 FR4xx MCU,ADC 引脚选择在 PxSEL0 和 PxSEL1 寄存器中设置。由于 FR4xx MCU 只有一对电源引脚(DVCC 和 DVSS),为了获得良好的 ADC 性能,电路板设计应避免系统噪声:
表 2-1 列出了关键的时序和线性参数,用于对比一些带有 FR2xx/FR4xx ADC 和 ADC12_B 的产品。有关详细信息,请参阅器件特定数据表。
参数 | 说明 | 条件 | 器件 | ||
---|---|---|---|---|---|
MSP430FR2355 | MSP430FR2311 | MSP430FR58xx | |||
FR2xx/FR4xx ADC 12 位模式 | FR2xx/FR4xx ADC 10 位配置 | ADC12_B 单端模式 | |||
fADCCLK | ADC 时钟频率 | 4.4MHz(最大值) | 5.5MHz(最大值) | 5.4MHz(最大值) | |
tSample | 采样时间 | 说明 | 0.61µs(最小值)(1) | 2µs(最小值) | 1µs(最小值) |
tCONVERT | 转换时间 | 14 × 1/fADCCLK | 12 × 1/fADCCLK(3) | 14 × 1/fADC12CLK(2) | |
EI | 积分线性误差 | Veref+ 基准 | ±2.5LSB | ±2LSB | ±2.2LSB |
ED | 微分线性误差 | Veref+ 基准 | ±1LSB | ±1LSB | -0.99 + 1LSB |
EO | 偏移误差 | Veref+ 基准 | ±1.5LSB | ±6.5mV | ±1.5mV |
EG | 增益误差 | Veref+ 基准 | ±3LSB | ±2LSB | ±2.5LSB |
ET | 总体未调整误差 | Veref+ 基准 | ±4LSB | ±2LSB | ±3.5LSB |
每个应用都是独一无二的,需要考虑的基准电压因素也各不相同。例如,将传感器连接到 ADC 前端时,需要考虑电压动态范围、传感器稳定时间、以及需要时为能量优化应用打开或关闭传感器。了解这些需要考虑的事项后,可通过配置寄存器为各种应用定制 ADC 基准。以下部分描述了基准电压的考虑范围。
基准电压是一个固定电压,理想情况下不应出现任何温度或电源相关的变化。ADC 需要一个具有负端和正端的基准电压作为 ADC 输入信号的参考点。然后,ADC 根据相对于基准电压的信号将输入信号转换为数字值(ADC 代码)。应用代码根据输入信号电压对 ADC 代码进行解密。图 3-1 所示为基准电压到 ADC 代码的线性转换图。
最大 ADC 代码值由 (2n – 1) 计算得出,其中 n 是 ADC 分辨率位数。基准电压的正端转换为最高的 ADC 代码。如果输入信号高于基准电压,则测量会饱和至最大 ADC 代码值。例如,如果 ADC 为 12 位,则最大 ADC 代码为 (212 – 1) = 4095,将高于器件规格的电压注入 ADC 引脚会导致引脚或器件的永久性损坏。更多信息,请参阅有关模拟输入电压范围的数据表参数。为了测量超出 ADC 输入范围的电压,需要通过外部电路将外部电压调整到合适的 ADC 输入范围(例如,分压器或放大器)。
所有 MSP430™ ADC 都集成了内部基准电压。如果内部基准性能不足或需要备用基准电压,ADC 还支持连接外部基准。
需要在设计早期考虑应用的各种条件来决定内部和外部基准。如果基准电压用于为多个器件或外部传感器供电,应考虑电流负载。MSP430 基准电压输出只能处理数据表中规定的最大负载。
ADC 模块中的 MSP430FR215x、MSP430FR235x、MSP430FR247x、MSP430FR267x 内部共享基准可产生三个可选的 1.5V、2.0V 或 2.5V 基准。其他 FR2xx/FR4xx 器件包括一个固定电压基准。AVCC 也是一个可选基准电压。使用 AVCC 作为基准可实现更低的功耗,但它测量的是模拟电压辐射到潜在的不精确和变化的 AVCC 电压。这可能正是某些应用所需要的(例如,测量也由 AVCC 供电的全桥传感器)。
另一个可能影响基准电压的因素是对温度的依赖性。基准电压温漂在器件特定数据表中提供。如果应用处于温度波动较大的环境中,并且在整个温度范围内都需要保持精度,请评估内部基准温度系数是否足够好。如果不够好,应考虑使用某个具有低温度系数的 TI 外部基准方案,并使用 MSP430 器件上的 VeREF+ 输入进行连接。
内部和外部基准之间需要考虑的另一个因素是模拟基准电压偏移。所有内部基准都有一个需要考虑的电压偏移,TLV 校准数据可用于减少这种偏移。但是,ADC 使用外部基准电压产生的电压偏移相对于使用内部基准来说则更小。也可校准外部基准以获得最接近的目标基准电压。在为应用选择正确的基准电压时保留一些裕量,以便信号在转换期间不会饱和或发生衰减。
数字值是有限的,因此信号分辨率决定了将信号转换为数字值时信号测量的精度。信号分辨率越小,所捕获的信号精度就越高。信号分辨率是根据 ADC 基准电压和 ADC 位数计算得出的。首先,确定输入信号电压的峰-峰值。然后,选择大于要捕获的峰值电压的最小基准电压。这可以在代码计算时提供优良的信号分辨率。信号分辨率可通过Equation1 计算。
假设 VREF+ = 2.5V、VREF- = 0V、n = 12 位,信号分辨率可通过Equation2 计算。
例如,如果传感器输出动态范围在 0V 到 1.8V 之间,并且用户想使用内部基准电压,则可选择 2V 基准电压。这样能够确保输入信号不会使 ADC 饱和,同时提供更好的分辨率。
根据信号分辨率,可根据输入电压计算出理想的 ADC 代码。若要计算 ADC 代码,假设 VREF+ 为 2.5V、输入电压为 1V、分辨率为 12 位,则使用Equation3,其中 Equation1 已求解出所应用信号的分辨率。
采样(采样保持)时间决定了在执行数字转换之前对信号进行采样的时间。在采样期间,内部开关允许对输入电容器充电。电容器完全充电所需的时间取决于连接到 ADC 输入引脚的外部模拟前端 (AFE)。图 3-3 所示为 MSP430 MCU 的典型 ADC 模型。RI 和 CI 值可从器件特定数据表中获取。
了解 AFE 驱动能力至关重要。如果可能,请按照图 3-2 对 AFE 进行建模。了解这一点后,计算对信号进行采样所需的最小采样时间。源电阻(RS 和 RI)会影响 tsample。Equation4 可用于计算 n 位转换的最小采样时间 tsample 的保守值。
基于常见的 RS 假设,可采用更简单的模型。根据 MSP430FR235x 和 MSP430FR215x 数据表,ADC 采样时间 (tSample) 的最小值,应按 (CI + Cexternal) × (RS + RI) × Tau 计算得出。“采样时间的最小值”是指在定义的条件下导致误差小于 ±0.5LSB 所需的最小时间。
参数 | 测试条件 | 器件等级 | VCC | 最小值 | 最大值 | 单位 | |
---|---|---|---|---|---|---|---|
fADCCLK | ADC 时钟频率 | ADC 时钟,10 位模式 | T | 2.4V 至 3.6V | 6.0 | MHz | |
ADC 时钟,12 位模式 | 4.4 | ||||||
tSettling | ADC 的接通稳定时间(1) | tADCON 后开始的转换误差小于 ±0.5LSB, 基准和输入信号已稳定 | T | 100 | ns | ||
tSample | 采样时间 | RS = 1000Ω,RI = 4000Ω, CI = 5.5pF,Cexternal = 8.0pF, 10 位模式下,小于 ±0.5LSB 的误差需要大约 7.62 Tau (t) | T | 2.4V 至 3.6V | 0.52 | µs | |
RS = 1000Ω,RI = 4000Ω, CI = 5.5pF,Cexternal = 8.0pF, 12 位模式下,使误差小于 ±0.5LSB 需要大约 9.01 Tau (t) | T | 2.4V 至 3.6V | 0.61 |
采样保持时间取决于模式(脉冲采样模式或扩展采样模式)。ADCSHTx 位仅在脉冲采样模式下控制采样和保持时间。定时器可用于控制扩展采样模式下的采样保持时间,实现更精细的控制。
15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 |
保留 | ADCSHTx | ||||||
r0 | r0 | r0 | r0 | rw-(0) | rw-(0) | rw-(0) | rw-(1) |
7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
ADCMSC | 保留 | ADCON | 保留 | ADCENC | ADCSC | ||
rw-(0) | r0 | r0 | rw-(0) | r0 | r0 | rw-(0) | rw-(0) |
位 | 字段 | 类型 | 复位 | 说明 |
---|---|---|---|---|
11-8 | ADCSHTx | RW | 1h(1) | ADC 采样保持时间。这些位定义 ADC 采样周期中的 ADCCLK 周期个数。 仅在 ADCENC = 0 时可修改。在转换激活情况下,通过软件复位 ADCENC = 0 和更改这些字段会立即产生效果。 0000b = 4 个 ADCCLK 周期 0001b = 8 个 ADCCLK 周期 0010b = 16 个 ADCCLK 周期 0011b = 32 个 ADCCLK 周期 0100b = 64 个 ADCCLK 周期 0101b = 96 个 ADCCLK 周期 0110b = 128 个 ADCCLK 周期 0111b = 192 个 ADCCLK 周期 1000b = 256 个 ADCCLK 周期 1001b = 384 个 ADCCLK 周期 1010b = 512 个 ADCCLK 周期 1011b = 768 个 ADCCLK 周期 1100b = 1024 个 ADCCLK 周期 1101b = 1024 个 ADCCLK 周期 1110b = 1024 个 ADCCLK 周期 1111b = 1024 个 ADCCLK 周期 |
在 VCC 为 2.4V 至 3.6V、分辨率为 12 位的条件下,最小 ADC 采样时间为Equation5。
在公式中,RS = 1000Ω 和 Cexternal = 8.0pF 是针对一般情况的假设值。9.01Tau、RI = 4000Ω,以及 CI = 5.5pF 是通过测试和计算得到的已知值。
计算最小采样保持时间后,可确定 ADC 的适当设置,包括选择正确的 ADC 时钟。关键目标是优化应用中的采样保持时间。如果采样保持时间远超所需时间,那么在这段时间内运行 ADC 就是浪费能源。采样保持时间也限制了最大采样率。如果您的应用需要比最小值更长的采样保持时间,则需要在性能和最大采样率之间进行权衡。
ADC 需要一个时钟源将采样的模拟输入引脚转换为 ADC 代码。ADC 转换时间在器件特定数据表中设定为 (N + 2) × 1/fADCCLK。根据 MSP430FR4xx 和 MSP430FR2xx 系列用户指南,ADC 时钟可从 MODOSC、ACLK、MCLK 以及 SMCLK 中选择,如图 3-4 所示。
ADC 时钟频率范围和 MODOSC 频率在器件特定数据表中指定。根据 MSP430FR235x 和 MSP430FR215x 数据表中的 ADC 时序参数,12 位模式的 ADC 时钟频率应小于等于 4.4MHz,而根据表 3-4,MODOSC 的时钟频率范围应为 3.0 至 4.6MHz。
参数 | 器件等级 | VCC | 最小值 | 典型值 | 最大值 | 单位 | |
---|---|---|---|---|---|---|---|
fMODOSC | MODOSC 频率 | T | 3.0V | 3.0 | 3.8 | 4.6 | MHz |
fMODOSC/dT | MODOSC 频率温漂(1) | T | 3.0V | 0.102 | %/℃ | ||
fMODOSC/dVCC | MODOSC 频率电源电压漂移 | T | 1.8V 至 3.6V | 1.17 | %/V | ||
fMODOSC,DC | 占空比 | T | 3.0V | 40% | 50% | 60% |
上一个是 MSP430FR2355 的示例。如果使用 SMCLK 将 ADC 时钟设置为 4MHz,则通过 ADCCTL0 寄存器中的 ADCSHTx 位将 ADC 采样和保持时间设置为 4 个 ADCCLK 周期。ADC 转换时间设为 (N + 2) × 1/fADCCLK,tSettling 为 100ns。因此,一个完整的 ADC 时间应为 4 / 4MHz + 14 / 4MHz + 100ns = 4.6μs,ADC 采样保持率为 217ksps。如果 ADC 时钟设置为大约 3.8MHz 的 MODOSC,则在使用相同计算方法的情况下,ADC 采样和保持速率为 207ksps。
在低功耗模式 (LPM) 下,窗口比较器可设置阈值电平并将转换结果与阈值进行比较,无需任何 CPU 干预。阈值以 LSB 为单位设置,如果转换结果落在预设的低阈值和高阈值范围内,则会触发中断。注意,所有通道共用相同的窗口比较器阈值,并且在启用该功能时将来自不同通道的转换结果与相同的阈值电平进行比较。
此功能对于节省功耗非常有用,因为它允许器件保持在 LPM 状态,直到 ADC 输入达到特定阈值。所有其他转换结果将自动丢弃,CPU 仅在阈值触发时唤醒。
我们可以通过校准来提高 ADC 性能。板载校准可实现优良性能,原因是它根据片上 TLV 数据提供的室温点和应用系统级要求中的最高温度点或最低温度点考虑了温漂和电压依赖性,但需要额外的测试时间或板上硬件才能在高温和低温下测试 ADC 代码。
在生产过程中,可针对应用程序和存储的校准值进行特定测量,然后在代码中使用,从而完成校准。
该器件还包含一些由德州仪器 (TI) 编程的校准值,可用于提高性能。这些值存储在器件描述符表 (TLV) 中。器件特定数据表提供了器件可用的 TLV 校准值,而《MSP430FR4xx 和 MSP430FR2xx 系列用户指南》的器件描述符表 部分提供了校正方程。如需使用 TLV 值进行校准,代码需要实现校正方程。ADC 具有一个存储在 TLV 中的增益因子和偏移量,它们是根据在室温下使用外部基准得到的测量值在器件上进行编程的。应用校准方程后,增益、失调误差以及总未调整误差都会得到改善。在室温下,增益和失调误差降至 ±0.5 LSB,总未调整误差降至小于 ±3 LSB。
请参阅 TI 云工具,了解更多使用 FR2xx/FR4xx ADC 的代码示例和库。
EnergyTrace++ 技术通过观察代码及其功耗的各个方面,为调试和优化应用程序功耗提供了一种先进的方法。如需使用 EnergyTrace™ 技术,请参阅 MSP430 高级功耗优化:ULP Advisor 和 EnergyTrace 技术应用报告。
请参阅 MSP430FR4x/FR2x MCU 概述,了解完整的在线培训。
Date Letter Revision History Changes Intro HTML* (December 2019)to RevisionA (August 2021)
TI 均以“原样”提供技术性及可靠性数据(包括数据表)、设计资源(包括参考设计)、应用或其他设计建议、网络工具、安全信息和其他资源,不保证其中不含任何瑕疵,且不做任何明示或暗示的担保,包括但不限于对适销性、适合某特定用途或不侵犯任何第三方知识产权的暗示担保。 |
所述资源可供专业开发人员应用TI 产品进行设计使用。您将对以下行为独自承担全部责任:(1) 针对您的应用选择合适的TI 产品;(2) 设计、验证并测试您的应用;(3) 确保您的应用满足相应标准以及任何其他安全、安保或其他要求。所述资源如有变更,恕不另行通知。TI 对您使用所述资源的授权仅限于开发资源所涉及TI 产品的相关应用。除此之外不得复制或展示所述资源,也不提供其它TI或任何第三方的知识产权授权许可。如因使用所述资源而产生任何索赔、赔偿、成本、损失及债务等,TI对此概不负责,并且您须赔偿由此对TI 及其代表造成的损害。 |
TI 所提供产品均受TI 的销售条款 (http://www.ti.com.cn/zh-cn/legal/termsofsale.html) 以及ti.com.cn上或随附TI产品提供的其他可适用条款的约束。TI提供所述资源并不扩展或以其他方式更改TI 针对TI 产品所发布的可适用的担保范围或担保免责声明。IMPORTANT NOTICE |
邮寄地址:上海市浦东新区世纪大道 1568 号中建大厦 32 楼,邮政编码:200122
Copyright © 2021 德州仪器半导体技术(上海)有限公司 |