Component - Delta Sigma ADC (ADC_DelSig) V2.20 Datasheet(Chinese).pdf

®
PSoC Creator™ 组件数据手册
Delta Sigma 模数转换器 (ADC_DelSig)
2.20
特性
 分辨率可选,8 至 20 位(与器件相关)
 每个分辨率有 11 个输入范围
 采样速率为 10 到 384 ksps
 工作模式:
 单一样本
 多样本
 连续模式
 多样本(加速)

高输入阻抗的输入缓冲器
 可选的输入缓冲器增益(1、2、4、8)或输入缓冲器旁路



多个内部或外部基准选项
自动功耗配置
最多有 4 个运行时 ADC 配置
概述
Delta Sigma 模数转换器 (ADC_DelSig) 可为精密测量应用提供低功耗、低噪声前端。它可用于多
种应用,具体取决于分辨率、采样速率和工作模式。它能够对 16 位音频进行高速低分辨率通信处
理,并且能够对应变计、热电偶和其他高精度传感器进行高精度 20 位低速转换。处理音频信息时,
ADC_DelSig 处于连续工作模式。用于扫描多个传感器时,ADC_DelSig 处于其中一个多样本模式。
用于单点高分辨率测量时,ADC_DelSig 处于单一样本模式。
Delta sigma 转换器使用过采样在更广泛的频谱上扩展量化噪声。该噪声的形成是为了将其大部分
移至输入信号的带宽之外。内部低通滤波器用于滤出所需输入信号带宽之外的噪声。这使 deltasigma 转换器能够良好地用于高速中分辨率(8 至 16 位)和低速高分辨率(16 至 20 位)应用。
Cypress Semiconductor Corporation • 198 Champion Court • San Jose, CA 95134-1709 • 408-943-2600
Document Number: 001-79062 Rev. **
Revised: October 17, 2011
®
PSoC Creator™ 组件数据手册
Delta Sigma 模数转换器 (ADC_DelSig)
采样速率可调整为每秒 10 至 384000 次采样,具体取决于模式和分辨率。选择转换模式可简化音
频等单流信号的连接,或多个信号源间的复用。
ADC_DelSig 由三个模块组成:输入放大器、三阶 delta-sigma 调制器和抽取滤波器。(请参见
图 1) 输入放大器提供高阻抗输入和用户可选输入增益。抽取滤波器模块包含一个 4 段 CIC 抽取
滤波器和一个后处理装置。CIC 滤波器直接从调制器进行数据采样。后处理装置选择性地在 CIC
抽取滤波器的输出中执行增益、偏移和简单的滤波器函数。
图 1. ADC_DelSig 框图
Delta Sigma Modulator
+
Input
Decimator
Result
Input
Buffer
DAC
输入/输出连接
ADC_DelSig 组件的输入和输出连接在原理图中显示为组件符号上的引脚。I/O 列表中的星号 (*)
表示,在 I/O 说明中列出的情况下,该 I/O 可能不可见。
nVref – 输入 *
nVref 为可选引脚。如果已选中 Enable_Vref_Vssa 复选框,则该引脚就会显示。这允许用户将
ADC 的基准 Vssa 连接到模拟全局 (AGL[6])。如果未选中 Enable_Vref_Vssa 复选框,则该引脚
将不会显示在符号上。有关更多信息,请参见 Enable_Vref_Vssa 参数说明。
+输入 – 模拟
ADC_DelSig 的正向模拟信号输入。正向输入信号在单端和差分输入模式中始终显示。ADC 转换
器输出返回一个值,该值代表正向输入与负向输入信号间的电压差。
Page 2 of 49
Document Number: 001-79062 Rev. **
®
PSoC Creator™ 组件数据手册
Delta Sigma 模数转换器 (ADC_DelSig)
–输入 – 模拟 *
ADC_DelSig 的负向模拟信号输入。负向输入引脚仅当 ADC Input Mode(输入模式)设置为
Differential(差分)时显示在组件上。当 ADC Input Mode(输入模式)设置为 Single(单一)
时,负向输入将连接至 Vssa 或 Vref,具体取决于所选的输入范围。
soc – 输入 *
Start of Conversion(开始转换)(soc) 检测到上升沿时,会触发 ADC 转换。该引脚上的上升沿与
调用 ADC_StartConvert() 函数具有相同的效果。当用户选择 Hardware SOC 参数时,会使外部
引脚开始转换,此时会显示这一输入。如果未选择 Hardware SOC,则组件上的 I/O 引脚将会被
隐藏。在 Single Sample(单一样本)模式下,执行单一转换,然后 ADC 将停止。在连续和其他
模式下,ADC 转换将持续进行,直到执行 ADC_StopConvert() 或 ADC_Stop() 函数。
aclk – 输入 *
外部时钟源。如果 Clock Source(时钟源)参数设置为 External(外部),则显示该引脚。如果
Clock Source(时钟源)参数设置为 Internal(内部),则时钟自动在组件内部配置,且 aclk 引
脚将不显示。aclk 输入是在组件外部生成的时钟。该时钟信号可能源自芯片内部或 PSoC 外部源。
该时钟应设置为 Clock Frequency(时钟频率)参数中显示的值,以达到所选的采样速率。占空
比应为 50%。该时钟确定了转换速率取决于转换方法和分辨率。ADC 外部的时钟,应总是基于系
统时钟。如果需要更精确稳定的时钟,则系统时钟应基于外部(PSoC 外部)时钟或振荡器。
eoc – Output(输出)
结束转换 (eoc) 上的上升沿表示转换已经完成。该引脚在一个 ADC 时钟周期中变为高电平。eoc
通常连接至中断或 DMA 请求。DMA 请求通常用于将转换输出传输至系统 RAM、DFB 或其他组
件。已经有一个中断,位于组件内部,连接到该信号。
注: PSoC 5 的 EOC 在连接方式方面有一定限制。除连接到单个 DMA 组件外,EOC 端子都不可
路由。
Document Number: 001-79062 Rev. **
Page 3 of 49
Delta Sigma 模数转换器 (ADC_DelSig)
®
PSoC Creator™ 组件数据手册
元件参数
Delta Sigma ADC 是一种高度可配置的模数转换器。将一个 ADC_DelSig 组件拖放到您的
设计上,并双击以打开 Configure(配置)对话框。
Page 4 of 49
Document Number: 001-79062 Rev. **
®
PSoC Creator™ 组件数据手册
Delta Sigma 模数转换器 (ADC_DelSig)
采样
转换模式
ADC_DelSig 以下列四种模式中的一种进行工作:
模式
0 - 单一样本
说明
ADC 每次启动转换生成一个样本。
当分辨率高于 16 位时,单一样本转换模式下的 ADC 转换应启用中断。为此,需要在应用中
启用 Global Interrupt(全局中断)(通过调用 CYGlobalIntEnable)(main.c)。
1 - 多样本
多样本模式以背对背的方式采集每个样本,自动在每个样本之间复位其本身和调制器。
在多个信号间切换输入时,该模式非常有用。在每个样本之间会对滤波器进行记忆清除,因此
之前的样本不会影响当前的转换。
注在 ADC 转换间切换信号时应小心。可使用硬件控制在转换间快速切换输入,或在切换输入
时停止 ADC 转换 (ADC_StopConvert())。然后在新的信号已连接至 ADC 后,重启 ADC 转换
(ADC_StartConvert())。否则,可能会对 ADC 结果中的信号造成不良影响。
2 - 连续
连续采样模式下,ADC_DelSig 的功能与普通的 delta-sigma 转换器相同。测量单一输入信号
时,使用该模式。在第一个转换结果可用之前,有三个转换时间的延迟。该时间为内部滤波器
启动所需时间。第一个结果出来后,便可按照所选采样速率进行转换。当多个信号通过一个
ADC 进行多路复用和测量时,请勿使用该模式。
3 - 多样本(加速)
对于 8 至 16 位分辨率,Multi-Sample(多样本)(加速)模式与 Multi-Sample(多样本模式
)的运行速度一致。对于 17 至 20 位分辨率,该模式的运行速度大约比多样本模式快 4 倍。
注在 ADC 转换间切换信号时应小心。可使用硬件控制在转换间快速切换输入,或在切换输入
时停止 ADC 转换 (ADC_StopConvert())。然后在新的信号已连接至 ADC 后,重启 ADC 转换
(ADC_StartConvert())。否则,可能会对 ADC 结果中的信号造成不良影响。
ADC 最初开始转换时,所有四个 ADC 模式都会对抽取滤波器进行完全记忆清理。这确保,只要
在通过使用 ADC_StartConvert() API 开始转换或―SOC‖输入触发转换前输入电压稳定,ADC 的第
一次读取就将有效。虽然所有模式都在启动 ADC 时复位抽取滤波器,但唯独连续模式不会在读取
间复位抽取滤波器。因此,连续模式的第一次读取时间将会比后续的读取时间长 4 倍。使用模拟
复用器在多个输入间进行扫描时,必须注意确保 ADC 在输入切换处于变化时未运行。在使用除连
续之外的模式时,要在样本之间切换输入,可使用模拟硬件复用器。
更改 Conversion Mode(转换模式)参数时,时钟频率将会改变,以维持所选的采样速率。如果
ADC 时钟频率超出最小值或高于最大值,将会显示错误状况。
Document Number: 001-79062 Rev. **
Page 5 of 49
Delta Sigma 模数转换器 (ADC_DelSig)
®
PSoC Creator™ 组件数据手册
# Configs
使用 # Configs 参数,您最多可定义四个不同配置。例如,系统可能需要在适用于音频的配置
(连续模式,16 位,48 ksps)、适用于低电平模拟传感器的配置(单一样本模式,20 位,60
sps)和适用于 12 位通用多通道数据记录的配置(多样本模式)间进行切换。所有配置必须使用
相同的输入模式,即全部单端或全部差分。
默认情况下,ADC 将被设置为第一个配置 (Config1),除非 ADC_SelectConfiguration() 函数将配
置设定为不同的值。在两个和四个配置间进行选择时,Configure(配置)对话框中将显示其他选
项卡。这些多种配置使您能够在运行时更改模式。每种配置包含在它自己的选项卡中。
使用多种 ADC 配置时,需注意以下事项:


所有配置必须使用相同的输入模式,即全部单端或全部差分。

Vref 参数有一些限制。如果 Config 1 的选项设置了外部基准或旁路模式,则其他配置可能会
选择相同的模式或使用内部基准。

每种配置都具有单独的 Interrupt Service Routine(中断服务子程序)函数。调用
ADC_SelectConfiguration() 函数时,中断矢量将变为相应的中断矢量程序。

使用 ADC 外部时钟(芯片外部时钟或来自用户所选的内部时钟)时,所需的时钟速率将显示
在 Clock Frequency(时钟频率)字段中。您必须为每种配置提供合适的时钟。
Common(通用)选项卡包含 Hardware SOC、Clock Source(时钟源)、Enable Charge
Pump Clock(启用电荷泵时钟)、和 Enable_Vref_Vssa 参数,这些对所有模式通用。通用
设置(通用)中对这些参数进行了说明。
分辨率
ADC_DelSig 的分辨率以整数值输入,限制为 8 至 20 位。分辨率越高采样速率越低。默认分辨率
是 16 位。更改 Resolution(分辨率)参数时,时钟频率将会改变,以维持所选的采样速率。如
果 ADC 时钟频率超出最小值或高于最大值,将会显示错误信息。
Delta-Sigma ADC 固有的不稳定性会造成工作范围正负极限的非线性度。为了纠正,在调制器前
端对输入信号进行了衰减,幅度为 10%。然后,后期处理器将以约为 1.11 的增益补偿此衰减。最
终结果将输入范围扩大了 10%。例如,如果选择了输入范围 ±1.024 V,则实际的 ADC 范围约为
±1.126 V。可用的输入范围仍是 ±1.024 V,但是直到输入超出 ±1.126 V 时,ADC 才会饱和。
ADC 的数字输出也会超过范围的 10%。如果 ADC 配置为 10 位运行,而如果输入是 –1.024 至
+1.022,则通常 10 位差分 ADC 的输出范围为 –512 至 511。由于这额外的 10% 范围,直到计数
为 ± 563,而不是 –512 至 511 时,数字输出才会饱和。
除非选择了 8 位或 16 位分辨率,否则通常无需考虑这点。当分辨率设置为 8 位或 16 位时,必须
注意确保数值不近似其最大正值或最小负值至各自的负值或正值。要确保这种情况不会发生,最
好使用返回值大于所设分辨率的 API 函数。例如,如果分辨率设置为 16 位,且最大正值可能大于
Page 6 of 49
Document Number: 001-79062 Rev. **
®
PSoC Creator™ 组件数据手册
Delta Sigma 模数转换器 (ADC_DelSig)
32767 或小于 -32768,则应使用 ADC_GetResult32() 函数,而不是 ADC_GetResult16()。将会
返回合适的 16 位值,而不会超出范围。当分辨率设置为 8 位,且 ADC 输出值可能小于 -128 或
大于 127,则应使用 ADC_GetResult16() 函数。将会返回合适的 8 位值,而不会超出范围。
图 2. ADC_DelSig 的采样速率限制
1000000
100000
10000
1000
Continuous
Multi-Sample
100
Multi-SampleTurbo
10
1
6
8
10
12
14
16
18
20
22
Resolution, bits
转换速率
ADC 转换速率以十进制整数值输入,单位是每秒采样数 (SPS)。最大采样速率取决于分辨率、采
样模式和最大工作时钟频率;分辨率越高,采样速率越低。所有分辨率的最小时钟频率是 128
kHz。分辨率在 8 至 15 位之间的最大时钟频率是 6.144 MHz。分辨率在 16 至 20 位之间的最大
时钟频率是 3.027 MHz。
有关每种分辨率和转换模式组合的有效转换速率,请参见图 2;表 1 以列表形式提供了相同的信息。
Document Number: 001-79062 Rev. **
Page 7 of 49
®
PSoC Creator™ 组件数据手册
Delta Sigma 模数转换器 (ADC_DelSig)
以下数据适用于 ADC 范围 = ±1.024 V,缓冲器增益 = 1.0。
表 1:ADC_DelSig 的采样速率限制(缓冲器增益 = 1)
单一样本 (Single
Sample)
分辨率
最小值
最大值
8
1911
9
多样本
1
连续
多样本加速
最小值
最大值
最小值
最大值
最小值
最大值
91701
1911
91701
8000
384000
1829
87771
1543
74024
1543
74042
6400
307200
1489
71441
10
1348
64673
1348
64673
5566
267130
1307
62693
11
1154
55351
1154
55351
4741
227555
1123
53894
12
978
46900
978
46900
4000
192000
956
45850
13
806
38641
806
38641
3283
157538
791
37925
14
685
32855
685
32855
2783
133565
674
32336
15
585
28054
585
28054
2371
113777
577
27675
16
495
11861
495
11861
2000
48000
489
11725
17
124
2965
124
2965
500
12000
282
6766
18
31
741
31
741
125
3000
105
2513
19
4
93
4
93
16
375
15
357
20
2
46
2
46
8
187
8
183
ADC 缓冲器的增益带宽有限,会影响建立时间。增加缓冲器增益会降低可用的最大采样速率。最
大采样速率为表 1 中的采样速率除以缓冲器增益所得的值。其他范围和缓冲器增益将影响最大采
样速率。
更改 Conversion Rate(转换速率)参数时,时钟频率将会改变,以维持所选的采样速率。如果
ADC 时钟频率超出最小或最大值,参数旁会显示错误提示。请参阅 无效设置(无效设置)
Range [ __ SPS ]
该字段为只读(始终不可用)区域,显示当前设置的最高和最低可用转换速率。
1
Single Sample(单一样本)模式的有效最高采样速率将低于显示值。有一些后期处理步骤与多样本模式中的转换重叠,但对于
Single Sample(单一样本)模式不能重叠。这一开销未包含在显示值的计算中。如果未使用硬件转换开始方法(soc)启动采样,
则还须将使用软件启动采样的时间包含在最高采样速率的计算内。
Page 8 of 49
Document Number: 001-79062 Rev. **
®
PSoC Creator™ 组件数据手册
Delta Sigma 模数转换器 (ADC_DelSig)
时钟频率
该文本框为只读(始终不可用)区域,显示所选工作条件 — 转换模式、分辨率、转换速率、输入
范围和缓冲器增益下所需的时钟频率。如果这些条件中任一条件发生变化,则该文本框将会得到
更新。时钟频率以 1 Hz 的分辨率显示。如果所选工作条件所需的时钟频率超出最小和最大限制,
参数旁会显示错误提示。请参阅无效设置。
时钟频率基于分辨率、转换模式和转换速率计算而得。该速率显示在 Design-Wide Resources
Clock Editor(整个设计资源时钟编辑器)中,此编辑器将始终显示 Config 1 的时钟频率。当
Clock Source 参数设置为 Internal(内部)时,ADC API 将根据运行时所选的配置设置当前的时
钟频率。
使用 ADC 外部时钟(芯片外部时钟或来自用户所选的内部时钟)时,所需的时钟速率被显示在该
字段中。您必须为每种配置提供合适的时钟。
无效设置
Conversion Mode(转换模式)、(分辨率)和 Conversion Rate(转换速率)这些参数都会影
响 ADC 时钟频率。更改这些参数中的任意一个都可能导致 ADC 时钟频率超过最大或最小频率。
最大 ADC 频率取决于 Resolution(分辨率)、Buffer Gain(缓冲器增益)和 Input Range(输
入范围)。如果这些参数的设置无效,则会出现如下所示的带惊叹号的红色圆圈:如图 3 所示。
图 3. Invalid Settings Notification(无效设置通知)
如将鼠标悬停于其中一个错误符号上方,则出现错误消息。请根据需要更改这些参数以符合 ADC
规范。
Document Number: 001-79062 Rev. **
Page 9 of 49
®
PSoC Creator™ 组件数据手册
Delta Sigma 模数转换器 (ADC_DelSig)
Input Options(输入选项)
Input Mode(输入模式)
ADC 具有固有差分性,但是,您可以使用该参数简化单端使用。
该参数将 ADC 配置为差分或单端输入。默认选择为 Differential(差分)。在该模式下,负向输
入和正向输入都显示在符号上。选择单端模式时,ADC 的负向输入将连接至 Vssa。
差分
单端
注意 PSoC 3 和 PSoC 5 器件中的 Delta-Sigma ADC 本身就有差分输入。单端模式通过从内部将
负向输入连接到地、并将符号位移出 2 的补码来实现。
图 4 显示在从 VSSA 到 VDDA 的 输入范围上 delta-sigma ADC 的输入输出特性。当 ADC 输入 (Vp-Vn)
从 –VDDA 变化到 +VDDA 时,ADC 计数从最小计数 (0x8000) 线性增加到最大计数 (0x7FFF)。单端
模式通过从内部将负向输入 (Vn) 连接到地来实现。这个完成后,正向输入 (Vp) 可以从 0 到 VDDA,
而负向输入被固定在 0 V,从而将 ADC 输入 (Vp-Vn) 限制在从 0 到 VDDA 的范围。因此,只有 X
轴的上半部分可用。但是,当器件具有负的偏移而正向输入 (Vp) 为 0 V 的时候,ADC 输出会进行
折返。例如,如果负的偏移量是 –1 个计数,则 0 V 的 ADC 输出将会是 0xFFFF,它对应于单端
模式中的最大正向输入。为防止发生这种情况,必须进行偏移校正。
Page 10 of 49
Document Number: 001-79062 Rev. **
®
PSoC Creator™ 组件数据手册
Delta Sigma 模数转换器 (ADC_DelSig)
图 4. Delta-Sigma ADC I/O 特性
Differential Input
Single Ended Input
0xFFFF
0x7FFF
-Vdda
Vp-Vn
0x0000
0x0000
+Vdda
Vp-Vn
+Vdda
0xFFFF
0xFFFE
0xFFFD
0x8000
Ideal ADC
Negative Offset
Ideal ADC
Negative Offset
注意当您配置 ADC 用于 16 位单端模式时,输出不会在 0x7FFF 停止,而是一直向上走直至
0xFFFF。例如,16 位的 ADC 通过考虑 17 位的差分 ADC 并忽略一半范围而实现。
Input Mode(输入模式)只能在 Config 1 中设置。如果使用一个以上配置,则所有配置均须采用
Config 1 中设置的 Input Mode(输入模式)。如果需要单端和差分这两种模式,则必须选择差分
模式,然后您可以使用模拟复用器将 Vssa 连接至 ADC 的负向输入以作为单端 ADC 使用。
该参数控制输入 Range(范围)参数中的选项。
输入 Range(范围)
该参数按给定的输入范围配置 ADC。这可以配置 ADC 的输入,且独立于 Buffer Gain(缓冲器增
益)设置。无论使用了什么输入范围设置,连接至 IC 的模拟信号都必须在 Vssa 和 Vdda 之间。
ADC 输入范围的绝对最大值将始终受 Buffer Mode(缓冲器模式)的绝对最大和最小值控制。
该参数可用的选项取决于 Input Mode(输入模式)的选择;表 2 和 表 3 对选项进行了说明。表 2
当 Input Mode(输入模式)设置为 Differential(差分)时,以下选项可用。对于需要扫描单端
和差分信号的系统,在扫描单端输入时,将负向输入连接至 Vssa。根据应用的不同,您可以使用
Buffer Mode(缓冲器模式)参数选择 Rail to Rail(轨对轨)、Level Shift(电平位移)或
Document Number: 001-79062 Rev. **
Page 11 of 49
®
PSoC Creator™ 组件数据手册
Delta Sigma 模数转换器 (ADC_DelSig)
Bypass Buffer(绕过缓冲器)。有关更多信息,请参见 Buffer Mode(缓冲器模式)(缓冲器模
式)参数说明。
您可以使用外部基准来提供不同的工作范围。可用的输入范围可通过适用的公式计算而得。
表 2:差分 输入 范围 选项
输入范围
内部基准
(外部基准)
说明
±1.024 V
(–输入 ± Vref)
使用内部基准 (1.024 V) 时,输入范围为 –输入 ± 1.024 V。如果负向输入连接至 2.048 V,则
可用的输入范围是 2.048 ± 1.024 V 即 1.024 至 3.072 V。
±2.048 V
(–输入 ± 2*Vref)
使用内部基准 (1.024 V) 时,输入范围为 –输入 ± 2.048 V。如果负向输入连接至 2.028 V,则
可用的输入范围是 2.048 ± 2.048 V 即 0.0 至 4.096 V。
±6.144 V
(–输入 ± 6*Vref)
使用内部基准 (1.024 V) 时,输入范围是 –输入 ± 6.144 V,但不超出最大电气输入范围。该
模式可用于测量将负向输入连接至 Vssa 时的供电电压。如果您要测量供电电压,则必须绕过
缓冲器。
±0.512 V
(–输入 ± Vref/2)
使用内部基准 (1.024 V) 时,输入范围是 –输入 ± 0.512 V。如果 –输入连接至 1.0 V,则可用
的输入范围是 1.0 ± 0.512 V 即 0.488 至 1.512 V。
±0.256 V
(–输入 ± Vref/4)
使用内部基准 (1.024 V) 时,输入范围是 –输入 ± 0.256 V。如果 –输入连接至 1.0 V,则可用
的输入范围是 1.0 ± 0.256 V 即 0.744 至 1.256 V。
±0.128 V
(–输入 ± Vref/8)
使用内部基准 (1.024 V) 时,输入范围是 –输入 ± 0.128 V。如果 –输入连接至 1.0 V,则可用
的输入范围是 1.0 ± 0.128 V 即 0.872 至 1.128 V。
±0.064 V
(–输入 ± Vref/16)
使用内部基准 (1.024 V) 时,输入范围是 –输入 ± 0.064 V。如果 –输入连接至 1.0 V,则可用
的输入范围是 1.0 ± 0.064 V 或 0.936 至 1.064 V。
前一表格所列选择取决于 Vref 设置。下表显示了 Vref = 1.024V 和 Vref = 1.200V 的示例。前沿的
数值取决于―基准‖部分的 Vref 设置。
Vref = 1.024V
Vref = 1.2V
±1.024 V(–输入 ± Vref)
±1.200 V(–输入 ± Vref)
±2.048 V(–输入 ± Vref*2)
±2.400 V(–输入 ± Vref*2)
±6.144 V(–输入 ± 6*Vref)
±7.200 V(–输入 ± 6*Vref)
±0.512 V(–输入 ± Vref/2)
±0.600 V(–输入 ± Vref/2)
±0.256 V(–输入 ± Vref/4)
±0.300 V(–输入 ± Vref/4)
±0.128 V(–输入 ± Vref/8)
±0.150 V(–输入 ± Vref/8)
±0.064 V(–输入 ± Vref/16)
±0.075 V(–输入 ± Vref/16)
Page 12 of 49
Document Number: 001-79062 Rev. **
®
PSoC Creator™ 组件数据手册
Delta Sigma 模数转换器 (ADC_DelSig)
当 Input Mode(输入模式)设置为 Single(单端)时,可使用以下选项。要模拟单端操作,请将
负向输入连接至内部基准值(Vssa 或 Vref)。
根据应用的不同,您可以使用 Buffer Mode(缓冲器模式)参数选择 Rail to Rail(轨对轨)、
Level Shift(电平位移)或 Bypass Buffer(绕过缓冲器)。有关更多信息,请参见 Buffer Mode
(缓冲器模式)(缓冲器模式)参数说明。
您可以使用外部基准来提供不同的工作范围。可用的输入范围可通过适用的公式计算而得。
表 3:单端 输入 范围 选项
输入范围
内部基准
(外部基准)
说明
Vssa 至 1.024 V
(0 至 Vref)
使用内部基准 (1.024 V) 时,ADC 的可用输入电压为 0.0 至 1.024 V。
Vssa 至 2.048 V
(0.0 至 2*Vref)
使用内部基准(1.024 V)时,可用的输入电压为 0.0 到 2.048 V。该范围要求输入缓冲器增
益等于 1。如果所选增益不为 1,ADC 将无法正常运行。这是因为基准电压在此时被直接连
接到负向输入。输入缓冲器的增益只会放大正向输入,不能放大负向输入,从而造成不平衡
放大。
Vssa 至 Vdda
该模式与供电电压成比例。输入范围为 Vssa 至 Vdda。
本设置请勿使用外部基准。该范围要求输入缓冲器增益等于 1。如果所选增益不为 1,ADC
将无法正常运行。
Vssa 至 6.144 V
(Vssa 至 6*Vref)
使用内部基准 (1.024 V) 时,输入范围为 0.0 至 6.144 V,但不超出最大电气输入范围。可以
使用该模式测量电源电压。如果您要测量供电电压,则必须绕过缓冲器。
下表显示了 Vref = 1.024V 和 Vref = 1.2V 的示例。前沿的数值取决于―基准‖部分的 Vref 设置。
Vref = 1.024V
Vref = 1.2V
Vssa 至 1.024V(0.0 至 Vref)
Vssa 至 1.200V(0.0 至 Vref)
Vssa 至 2.048 V(0.0 至 Vref*2)
Vssa 至 2.400 V(0.0 至 Vref*2)
Vssa 至 Vdd
Vssa 至 Vdd
Vssa 至 6.144 V(0.0 至 6*Vref)
Vssa 至 7.200 V(0.0 至 6*Vref)
注: 选择 Vss 至 Vdd 这个选项时,自定义程序将自动选择 Vdda/4 或 Vdda/3 基准电压。该选择基
于设计范围资源中输入的 Vdda 值。
Document Number: 001-79062 Rev. **
Page 13 of 49
®
PSoC Creator™ 组件数据手册
Delta Sigma 模数转换器 (ADC_DelSig)
缓冲器增益
该参数选择 ADC 输入缓冲器增益。ADC 缓冲器的增益带宽有限,会影响建立时间。增加缓冲器
增益会降低可用的最大采样速率。最大采样速率为表 1 中的采样速率除以缓冲器增益所得的值。
为了达到最大信噪比,采用 ADC 的整个范围十分重要。输入缓冲器可用于放大输入信号,以利用
ADC 的整个范围。确保 Buffer_Gain 和 ADC_Input_Range 设置兼容。
未缓冲
已缓冲
缓冲器增益
说明
1
将输入缓冲器增益设置为 1。
2
将输入缓冲器增益设置为 2。
4
将输入缓冲器增益设置为 4。
8
将输入缓冲器增益设置为 8。
Buffer Mode(缓冲器模式)
该参数选择 ADC 输入缓冲器模式。使用缓冲器时,ADC 具有最大采样速率。未缓冲模式会略微
减小带宽。
说明
Buffer Mode(缓冲器模式)
Bypass Buffer
(旁路缓冲器)
禁用输入缓冲器增益。如果选择该项,缓冲器将被禁用,以降低总功耗。如果选择
该模式,Buffer Gain(缓冲器增益)参数将不产生任何效果。如果选择该模式,
则输入阻抗将降至 500 kΩ 以下。关于范围的细节,请参见图 5。
Rail to Rail(轨至轨)
将输入缓冲器模式设置为轨至轨。关于范围的细节,请参见 图 5。
Level Shift(电平位移)
将输入缓冲器模式设置为电平位移。将同时使用正向和负向输入缓冲器。电平位移
模式可使您获得低于 VSSA 的电压,但不会一直降低至 VDDA。关于范围的细节,请
参见图 5。
图 5 显示所有缓冲器模式的 ADC 范围。
Page 14 of 49
Document Number: 001-79062 Rev. **
®
PSoC Creator™ 组件数据手册
Delta Sigma 模数转换器 (ADC_DelSig)
图 5. ADC 范围
+100 mV
Vdda
ADC Range
(Bypass Buffer Mode)
Vssa
Vdda
~250 mV
Vdda
ADC Range
(Rail to Rail Mode)
–100 mV
Vssa
~650 mV
ADC Range
(Level Shift Mode)
100 mV
Vssa
–100 mV
基准
Vref
该参数选择 ADC_DelSig 基准电压和配置。基准电压设定 ADC 的范围。
说明
ADC_Reference
内部 Vref 1.024 V
使用内部 1.024-V 基准(默认)
在 P0[3] 上建立
2
旁路的内部 Vref
使用内部 1.024-V 基准,并允许将外部旁路电容连接在引脚 P0[3] 上。
在P3[2] 上建立
旁路的内部 Vref
2
使用内部 1.024-V 基准,并允许将外部旁路电容连接在引脚 P3[2] 上。
P0[3] 上的外部 Vref
使用引脚 P0[3] 上的外部基准。允许范围见Delta-Sigma ADC 直流电规范。
P3[2] 上的外部 Vref
使用引脚 P3[2] 上的外部基准。
内部 Vdda/4
使用内部 Vdda/4 基准。
内部 Vdda/4,经 P0[3]
旁通
2
使用 Vdda/4 内部基准,并允许将外部旁路电容连接在引脚 P0[3] 上。
内部 Vdda/4,经 P3[2]
旁通
2
使用 Vdda/4 内部基准,并允许将外部旁路电容连接在引脚 P3[2] 上。
内部 Vdda/3
采用内部 Vdda/3 基准。仅当使用 PSoC 3 Production 和 PSoC 5 ES2 芯片或更新版
本时,该选项才有效。在使用 PSoC 3 ES2 和 PSoC5 芯片的情况下,选择该选项会导致
编译错误。
2
精度和信噪比很大程度上取决于基准电压的质量。ADC 的基准可在端口 P0[3] 或端口 P3[2] 上建立旁路。建议使用外部旁路电容。
基准噪声取决于频率,如图 6 中测量所示。
Document Number: 001-79062 Rev. **
Page 15 of 49
®
PSoC Creator™ 组件数据手册
Delta Sigma 模数转换器 (ADC_DelSig)
说明
ADC_Reference
内部 Vdda/3,经 P0[3]
旁通
2
使用 Vdda/3 内部基准,并允许将外部旁路电容连接在引脚 P0[3] 上。仅当使用 PSoC 3
Production 芯片时,该选项才有效。在使用 PSoC 3 ES2 和 PSoC5 芯片的情况下,选择
该选项会导致编译错误。
内部 Vdda/3,经 P3[2]
旁通
2
使用 Vdda/3 内部基准,并允许将外部旁路电容连接在引脚 P3[2] 上。仅当使用 PSoC 3
Production 芯片时,该选项才有效。在使用 PSoC 3 ES2 和 PSoC5 芯片的情况下,选择
该选项会导致编译错误。
图 6. 基准噪声
-80
dBV/rtHz
-90
Unbypassed
Bypass 0.01uF
Bypass 0.1uF
Bypass 1.0uF
Bypass 10uF
-100
-110
-120
-130
-140
-150
-160
0.01
0.1
10 kHz 100
1
1000
当在高达 fSAMPLE/2 的频带上、集成基准噪声小于集成量化噪声时,基准不会限制噪声性能。您可
以使用下表根据分辨率选择一个合适的、更大的电容值。
分辨率(以位为单位)
旁路电容值 (µF)
10
0.01
12
0.01
14
0.1 到 1.0
16
0.1 到 1.0
18
1. 0 到 10.0
Vref 值
该参数设置或显示 ADC 所使用的基准电压。如果使用―内部 1.024 V‖基准,则将显示数值 1.0240。
如果选择 Internal Vdda/3 或 Internal Vdda/4 基准选项,则值将从设计范围资源页面中的 Vdda
设置派生而来。如果选择了外部基准,则用户可输入用于确保 counts-to-volts(计数转电压)API
正常工作的参考电压。可以输入的最小值和最大值分别是 0.9 到 13V。默认值是 1.024V。如果所
Page 16 of 49
Document Number: 001-79062 Rev. **
®
PSoC Creator™ 组件数据手册
Delta Sigma 模数转换器 (ADC_DelSig)
选基准在 0.9 V 至 1.3 V 范围外,则 Vref 值数字下拉菜单末尾将出现错误符号,以警告用户出现
错误状况。同样,如果 Vref 值超出 0.9 V 至 1.3 V 这个范围,将会出现编译错误。
下表列出了选择不同基准选项时所显示的 Vref 值。
所选基准
显示的 Vref 值
注释
内部 1.024 V
1.0240
该值不可编辑。
在 P0.3 上建立旁路的内部
基准
1.0240
该值不可编辑。
在 P3.2 上建立旁路的内部
基准
1.0240
该值不可编辑。
P0.3 上的外部 Vref
1.0240
使用默认值 1.0240 时,该值可编辑
P3.2 上的外部 Vref
1.0240
使用默认值 1.0240 时,该值可编辑
内部 Vdda/4
1.2500*
该值由设计范围资源中的 Vdda 设置派生而来。该值不可编
辑。
* 该示例的前提为 Vdda = 5 V。
内部 Vdda/4,经 P0.3 旁通
1.2500*
该值由设计范围资源中的 Vdda 设置派生而来。该值不可编
辑。
* 该示例的前提为 Vdda = 5 V。
内部 Vdda/4,经 P3.2 旁通
1.2500*
该值由设计范围资源中的 Vdda 设置派生而来。该值不可编
辑。
* 该示例的前提为 Vdda = 5 V。
内部 Vdda/3
1.100**
该值由设计范围资源中的 Vdda 设置派生而来。该值不可编
辑。
* 该示例的前提为 Vdda = 3.3 V。
内部 Vdda/3,经 P0.3 旁通
1.100**
该值由设计范围资源中的 Vdda 设置派生而来。该值不可编
辑。
* 该示例的前提为 Vdda = 3.3 V。
内部 Vdda/3,经 P3.2 旁通
1.100**
该值由设计范围资源中的 Vdda 设置派生而来。该值不可编
辑。
* 该示例的前提为 Vdda = 3.3 V。
Document Number: 001-79062 Rev. **
Page 17 of 49
Delta Sigma 模数转换器 (ADC_DelSig)
®
PSoC Creator™ 组件数据手册
通用设置
硬件 SOC(开始转换)
可通过固件的 ADC_StartConvert() 函数启动 ADC,或通过硬件信号触发来启动 ADC。对
Hardware SOC(硬件 SOC)参数进行检查可使外部引脚启动转换。Hardware SOC(硬件 SOC)
被启用时,组件上会显示引脚;否则不会显示引脚。在引脚信号的上升沿上开始转换。在调用
ADC_StopConvert() 前,转换将持续进行。默认配置下,不使用 Hardware SOC(硬件 SOC)。
如果已正在进行转换,则将忽视硬件 SOC 触发。
时钟源
ADC 的时钟源有以下几种:ADC 组件的内部源、位于组件外部但在使用标准时钟组件或 UDB 的
芯片内部的源,或芯片的外部源。通过单选按钮选择内部或外部时钟。启用外部时钟时,ADC 原
理图符号中将显示时钟输入引脚。外部时钟必须具有百分之五十的占空比。内部时钟由设计有正
确占空比来确保。
时钟稳定性对于实现低噪声运行十分重要。抖动的副作用之一是大量的分布信号。以下 FFT 清晰
地展现了这些。使用外部时钟可显著提高 ADC 的信噪比 (SNR)。
Page 18 of 49
Document Number: 001-79062 Rev. **
®
PSoC Creator™ 组件数据手册
Delta Sigma 模数转换器 (ADC_DelSig)
ADC 性能的一个度量标准就是 INL、DNL 和计时错误所引起的失真。通过用―理想的‖正弦波驱动
ADC,然后使用快速傅里叶变换 (FFT) 来评估输出,可对该失真进行量度。过量的 INL 可导致输
入正弦波频率倍数处―线路‖上的谐波失真。过度 DNL 可导致本底噪声的整体增大。ADC 时钟的计
时错误(频率抖动)可导致来自 FFT 中名义单线指示基频的扩展。PSoC 内部时钟比外部石英振
荡器的频率抖动要高。上图显示内部时钟 FFT 基频的噪声和扩展。下图显示因外部石英振荡器频
率抖动降低而带来的基频扩展的显著缩小。
图 7. 噪声与时钟
内部振荡器的单频 FFT
使用外部石英振荡器的单频 FFT
External Charge Pump Clock(外部电荷泵时钟)
External Charge Pump Clock(外部电荷泵时钟)选项是始终启用的,以保证电荷泵时钟频率
最优。这使 ADC 性能最大化。电荷泵时钟频率进行自动调整,以达到最优性能和最低功耗。时钟
调整为 ADC 时钟频率的 2 到 4 倍。该选项用户不可选,是被禁用的。
Document Number: 001-79062 Rev. **
Page 19 of 49
®
PSoC Creator™ 组件数据手册
Delta Sigma 模数转换器 (ADC_DelSig)
Enable_Vref_Vssa
该参数使您能够将 ADC 基准 Vssa 的负向输入连接至模拟全局 AGL[6]。对于高精度系统,可将
Vref_Vssa 连接至外部 Vssa,以消除片上 Vssa 和片下 Vssa 之间的任何微小差值。这种微小差
值会导致 ADC 中产生增益误差。
仅当使用 PSoC 3 Production 和 PSoC 5 ES2 芯片或更新版本时,该选项才有效。在使用 PSoC
3 ES2 和 PSoC5 芯片的情况下,选择该选项会导致编译错误。
Vref_Vssa 是一种高级功能,当使用 ADC 外部基准时可使用该功能。Vref_Vssa 连接可通过模拟
路由机构进行路由并输出至引脚。这使您能够连接至外部基准,并消除由于 Vssa 引脚和接合线中
I*R 下降而导致的 ADC 基准中的任何偏移。
Vref_Vssa 被直接连接到 Analog Global Left 6 (AGL[6])。(更多信息见设备数据手册模拟路径图)
AGL[6] 直接连接至 P4[6]、P4[2]、P0[6] 和 P0[2]。为获得最佳性能,确保 Vref_Vssa 连接到这些
引脚其中的一个。将 Vref_Vssa 放置在另一个引脚上,将导致与连接有关的额外的路由资源消耗
和额外的电阻增加。
手动模拟路由系统 (MARS) 组件使您能够添加一项规则检查,用于确保仅可使用指定的引脚。通
过将模拟资源限制放置在 Vref_Vssa 网上,可实现仅使用与该网直接相连的资源。如果您将引脚
放置在未与 AGL[6] 直接相连的网上,则在构建过程中,此工具将生成错误。该错误表示您将资源
连接至未与引脚直接连接的网,所以无法进行路由。下图是一个示例:
资源
ADC_DelSig 使用抽取滤波器、Delta-Sigma 调制器以及时钟源。如果选择了外部基准或基准
旁路,则 P0[3] 或 P3[2] 可用于外部基准或旁路电容。
API Memory(API
存储器)(字节)
Digital Blocks(数字模块)
Resolution
(分辨率)
8 到 20 位
Page 20 of 49
Datapaths
(数据
路径)
Macro
cells(
宏单
元)
Status
Registers
(状态寄
存器)
Control
Registers
(控制寄
存器)
Counter7
(计数器
7)
Flash
(闪存)
0
0
0
0
0
4400
RAM
Pins(引脚)
(每个外部
I/O)
14
–
Document Number: 001-79062 Rev. **
®
PSoC Creator™ 组件数据手册
Delta Sigma 模数转换器 (ADC_DelSig)
应用程序编程接口
应用程序编程接口 (API) 子程序允许您使用软件配置组件。下表列出了每个函数的接口,并进行了
说明。以下各节将更详细地介绍每个函数。
默认情况下,PSoC Creator 将实例名称―ADC_DelSig_1‖分配给指定设计中组件的第一个实例。您
可以将该实例重命名为符合标识符语法规则的任意唯一值。实例名称会成为每个全局函数名称、
变量和常量符号的前缀。为增加可读性,下表中使用了实例名称―ADC.‖
函数
说明
ADC_Start()
设置 initVar 变量,调用 ADC_Init() 函数,然后调用 ADC_Enable() 函数。
ADC_Stop()
停止 ADC 转换并断电。
ADC_SetBufferGain()
选择输入缓冲器增益 (1,2,4,8)
ADC_StartConvert()
开始转换。
ADC_StartConvert()
停止转换
ADC_IRQ_Enable()
转换结束后启用中断。
ADC_IRQ_Disable()
禁用中断。
ADC_IsEndConversion()
如果转换完成,则返回非零值。
ADC_GetResult8()
返回右对齐的 8 位转换结果。
ADC_GetResult16()
返回右对齐的 16 位转换结果。
ADC_GetResult32()
返回右对齐的 32 位转换结果。
ADC_SetOffset()
设置 ADC_CountsTo_mVolts()、ADC_CountsTo_uVolts()、
ADC_CountsTo_Volts() 函数所使用的偏移。
ADC_SelectConfiguration()
设置(最多)四项 ADC 配置中的一项。
ADC_SetGain()
设置 ADC_CountsTo_mVolts()、ADC_CountsTo_uVolts() 和
ADC_CountsTo_Volts() 函数所使用的增益。
ADC_CountsTo_mVolts()
将 ADC 计数转换为单位为 mV 的电压值。
ADC_CountsTo_uVolts()
将 ADC 计数转换为单位为 µV 的电压值。
ADC_CountsTo_Volts()
将 ADC 计数转换为单位为 V 的浮点电压值。
ADC_Sleep()
停止 ADC 操作,并保存用户配置。
ADC_Wakeup()
恢复并启用用户配置。
ADC_Init()
通过 Configure(配置)对话框设置初始化或恢复 ADC。
ADC_Enable()
启用 ADC。
ADC_SaveConfig()
保存当前配置。
Document Number: 001-79062 Rev. **
Page 21 of 49
®
PSoC Creator™ 组件数据手册
Delta Sigma 模数转换器 (ADC_DelSig)
函数
说明
ADC_RestoreConfig()
恢复配置。
ADC_SetCoherency()
设置连贯性寄存器。
ADC_SetGCOR()
计算一个新的 GCOR 值,并用该新值设置 GCOR 寄存器。
ADC_ReadGCOR()
返回正常化的 GCOR 寄存器值。
全局变量
变量
ADC_initVar
说明
ADC_initVar 变量表示 ADC 是否已进行了初始化。该变量初始化为 0,并在第一次调用
ADC_Start() 时设置为 1。这样,第一次调用 ADC_Start() 子程序后,组件不用重新初始化
即可重启。
如需重新初始化组件,可在 ADC_Start() 或 ADC_Enable() 函数前调用 TIA_Init() 函数。
ADC_offset
ADC_offset 变量用于校准偏移。该变量初始设置为零。应用程序可使用 ADC_SetOffset()
函数对其进行修改。通过减去给定偏移,可影响 ADC_CountsTo_Volts()、
ADC_CountsTo_mVolts() 和 ADC_CountsTo_uVolts() 函数。
ADC_CountsPerVolt
ADC_countsPerVolt 变量用于校准增益。最初,计算该变量的目的是用于默认 ADC 配置。
计算值取决于分辨率、输入范围和电压基准。应用程序可使用 ADC_SetGain() 函数对其进
行修改。通过在 ADC 计数和施加的输入电压之间进行正确转换,可仅影响
ADC_CountsTo_Volts()、ADC_CountsTo_mVolts() 和 ADC_CountsTo_uVolts() 函数。
ADC_convDone
如果采用了 16 位以上分辨率的单一样本转换模式,则 ADC_convDone 变量可用作软件标
志,以便对 ADC 转换进行检查。
void ADC_Start(void)
说明:
设置 initVar 变量,调用 ADC_Init() 函数,然后调用 ADC_Enable() 函数。
该函数可对 ADC 进行配置,并使其通电,但不启动转换。除非 ADC_SelectConfiguration()
函数选择了备用配置,默认情况下,ADC 配置为 Config1。
参数:
无
Return Value
(返回值):
无
Side Effects
(副作用):
无
Page 22 of 49
Document Number: 001-79062 Rev. **
®
PSoC Creator™ 组件数据手册
Delta Sigma 模数转换器 (ADC_DelSig)
void ADC_Stop(void)
说明:
禁用 ADC,并使其断电。
注不建议将本 API 使用于 PSoC 3 ES2 和 PSoC 5 芯片。这些器件有一个缺陷,导致与某些
模拟资源的连接在未断电时不可靠。当使用该资源的组件停止时,该不可靠性会在静默失败中
表现出来(例如模拟组件中出现不可预见的不良结果)。使用该芯片时,一个设计中的全部模
拟组件应在全部时间进行供电(通过调用它们各自的 _Start() API,例如 ADC_Start())。请
勿调用 ADC_Stop() API。
参数:
无
Return Value
(返回值):
无
Side Effects
(副作用):
无
void ADC_SetBufferGain(uint8 gain)
说明:
设置输入缓冲器增益。
参数:
uint8 gain:输入增益设置。下表显示有效的增益常量。
增益选项
说明
ADC_BUF_GAIN_1X
将输入缓冲器增益设置为 1
ADC_BUF_GAIN_2X
将输入缓冲器增益设置为 2
ADC_BUF_GAIN_4X
将输入缓冲器增益设置为 4
ADC_BUF_GAIN_8X
将输入缓冲器增益设置为 8
Return Value
(返回值):
无
Side Effects
(副作用):
无
Document Number: 001-79062 Rev. **
Page 23 of 49
Delta Sigma 模数转换器 (ADC_DelSig)
®
PSoC Creator™ 组件数据手册
void ADC_StartConvert(void)
说明:
强制 ADC 开始进行转换。如果处于 Single Sample(单一样本)模式,则将执行一次转换,
然后 ADC 将停止运行。如果处于其他三种模式中的一种,则 ADC 将持续运行。
如果在转换时调用 ADC_StartConvert() 函数,下一转换启动将列入队列,且当前转换完成
后,新的转换便会开始。如果您不想等待当前转换完成,而想立即开始新的转换,请调用
ADC_StopConvert() 来停止当前转换。停止转换后,通过调用 ADC_StartConvert() 来重启转
换。
参数:
无
Return Value
(返回值):
无
Side Effects
(副作用):
无
void ADC_StopConvert(void)
说明:
强制 ADC 停止所有转换。如果 ADC 正处于当前转换中,则 ADC 将重置,并且不提供部分转
换的结果。
参数:
无
Return Value
(返回值):
无
Side Effects
(副作用):
无
void ADC_IRQ_Enable(void)
说明:
转换结束后,启用中断。还必须启动全局中断,以实现 ADC 中断。要启用全局中断,请在中
断发生前,在 main.c 中启用全局中断宏―CYGlobalIntEnable;‖。
参数:
无
Return Value
(返回值):
无
Side Effects
(副作用):
启用中断。读取结果将清除中断。
Page 24 of 49
Document Number: 001-79062 Rev. **
®
PSoC Creator™ 组件数据手册
Delta Sigma 模数转换器 (ADC_DelSig)
void ADC_IRQ_Disable(void)
说明:
转换结束后,禁用中断。
参数:
无
Return Value
(返回值):
无
Side Effects
(副作用):
无
uint8 ADC_IsEndConversion(uint8 retMode)
说明:
检查 ADC 转换结束。该函数为编程器提供了两个选项。在一种模式下,该函数立即返回转换
状态。在另一种模式下,在转换完成前,该函数不会返回转换状态(封锁)。
参数:
(uint8) retMode:检查转换返回模式。各选项见下表。
选项
说明
ADC_RETURN_STATUS
立即返回转换结果状态。
ADC_WAIT_FOR_RESULT
完成 ADC 转换后,返回转换结果状态。
Return Value
(返回值):
uint8:\如果返回非零值,则最后一次转换已完成。如果返回值为零,则 ADC 仍在计算最后一
个结果。
Side Effects
(副作用):
无
int8 ADC_GetResult8(void)
说明:
该函数将返回 8 位转换的结果。如果设置分辨率高于 8 位,则返回 LSB 结果。如果 ADC 配
置为 8 位单端模式,则应改用 ADC_GetResult16() 函数。该函数仅返回带正负号的 8 位值。
带正号的最大 8 位值为 127,但在单端 8 位模式中,最大正值为 255。
参数:
无
Return Value
(返回值):
int8:最后一次 ADC 转换的最低有效位。
Side Effects
(副作用):
无
Document Number: 001-79062 Rev. **
Page 25 of 49
Delta Sigma 模数转换器 (ADC_DelSig)
®
PSoC Creator™ 组件数据手册
int16 ADC_GetResult16(void)
说明:
返回分辨率为 8 至 16 位的转换的 16 位结果。如果设置的分辨率大于 16 位,则其返回该结果
的 16 个最低有效位。ADC 配置为 16 位单端模式时,则应改用 ADC_GetResult32() 函数。该
函数仅返回带正负号的 16 位结果,且该结果的最大正值为 32767,而非 65535。
参数:
无
Return Value
(返回值):
int16:最后一次 ADC 转换的 16 位结果。
Side Effects
(副作用):
无
int32 ADC_GetResult32(void)
说明:
返回分辨率为 8 到 20 位的转换的 32 位结果。
参数:
无
Return Value
(返回值):
int32:最后一次 ADC 转换的结果。
Side Effects
(副作用):
无
void ADC_SetOffset(int32 offset)
说明:
设置函数 ADC_CountsTo_uVolts()、ADC_CountsTo_mVolts() 和 ADC_CountsTo_Volts() 所
用的 ADC 偏移,以便在计算电压转换前,从给定读数中减去该偏移量。
参数:
int32 offset:如果该输入短路或连接到相同输入电压,则该值为测量值。
Return Value
(返回值):
无
Side Effects
(副作用):
通过减去给定偏移,可影响 ADC_CountsTo_uVolts()、ADC_CountsTo_mVolts() 和
ADC_CountsTo_Volts() 函数。
Page 26 of 49
Document Number: 001-79062 Rev. **
®
PSoC Creator™ 组件数据手册
Delta Sigma 模数转换器 (ADC_DelSig)
void ADC_SetGain(int32 adcGain)
说明:
为以下电压转换函数设定每伏电压的 ADC 增益计数。默认情况下,该值由基准和输入范围设
置设定。该值仅可用于进一步校准具有已知输入的 ADC,或仅在使用外部基准的情况下使
用。
参数:
int32 adcGain:每伏电压的 ADC 增益计数。
Return Value
(返回值):
无
Side Effects
(副作用):
通过在 ADC 计数和电压之间进行正确转换,可仅影响 ADC_CountsTo_uVolts()、
ADC_CountsTo_mVolts() 和 ADC_CountsTo_Volts() 函数。
void ADC_SelectConfiguration(uint8 config uint8 restart)
说明:
设置(最多)四项 ADC 配置中的一项。在设置新的配置前,停止 ADC,并使其断电。完成新
配置的设置后,可启动 ADC 并可根据第二次参数重启值重启转换。如果该参数的值为 1,则
将重启 ADC。如果该值为零,则用户必须调用 ADC_Start() 和 ADC_StartConvert() 以重启转
换。
参数:
uint8 config:1 到 4 之间的配置选项。
uint8 restart:重启选项。1 表示启动 ADC 并重启转换。0 表示不启动 ADC 和转换。
Return Value
(返回值):
无
Side Effects
(副作用):
无
int32 ADC_CountsTo_mVolts(int32 adcCounts)
说明:
将 ADC 输出转换为单位为 mV 的 32 位整数电压值。例如,如果测得的 ADC 输出为 0.534
V,则返回值为 534 mV。
参数:
int32 adcCounts:ADC 转换的结果。
Return Value
(返回值):
int32:以 mV 为单位的结果。
Side Effects
(副作用):
无
Document Number: 001-79062 Rev. **
Page 27 of 49
Delta Sigma 模数转换器 (ADC_DelSig)
®
PSoC Creator™ 组件数据手册
int32 ADC_CountsTo_uVolts(int32 adcCounts)
说明:
将 ADC 输出转换为单位为 µV 的 32 位整数电压值。例如,如果测得的 ADC 测得值为
–0.02345 V,则返回值为 –23450 µV。
参数:
(int32) adcCounts:ADC 转换的结果。
Return Value
(返回值):
int32:以 µV 单位的结果。
Side Effects
(副作用):
无
float ADC_CountsTo_Volts(int32 adcCounts)
说明:
将 ADC 输出转换为单位为 V 的浮点电压值。例如,如果测得的 ADC 输出电压为 1.2345 V,
则返回值为 +1.2345 V。
参数:
int32 adcCounts:ADC 转换的结果。
Return Value
(返回值):
Float:最后一次 ADC 转换的结果。
Side Effects
(副作用):
无
void ADC_Sleep(void)
说明:
ADC_Sleep() 函数用于检查组件是否已启用并保存状态。然后它调用 ADC_Stop() 函数、调
用 ADC_SaveConfig() 函数,以保存用户配置。
在调用 CyPmSleep() 或 CyPmHibernate() 函数之前调用 ADC_Sleep() 函数。有关电源管理
功能的更多信息,请参见 PSoC Creator System Reference(《系统参考指南》)。
参数:
无
Return Value
(返回值):
无
Side Effects
(副作用):
注:如果您通过 CyPmSleep() 函数使 ADC 硬件进入睡眠状态,则将其唤醒后,需执行
ADC_Start() 和 ADC_StartConvert(),以重启转换。
Page 28 of 49
Document Number: 001-79062 Rev. **
®
PSoC Creator™ 组件数据手册
Delta Sigma 模数转换器 (ADC_DelSig)
void ADC_Wakeup(void)
说明:
ADC_Wakeup() 函数调用 ADC_RestoreConfig() 函数以恢复用户配置。如果组件在调用
ADC_Sleep() 函数前已启用,则 ADC_Wakeup() 函数将重新启用组件。
参数:
无
Return Value
(返回值):
Side Effects
(副作用):
调用 ADC_Wakeup() 函数前未调用 ADC_Sleep() 或 ADC_SaveConfig() 函数可能会产生意
外行为。
void ADC_Init(void)
说明:
根据―配置‖对话框设置,初始化或恢复组件参数。如果已调用 ADC_Start(),则无需调用该函
数。
参数:
无
Return Value
(返回值):
无
Side Effects
(副作用):
所有寄存器将复位至初始值。这会重新初始化组件。
void ADC_Enable(void)
说明:
启用 ADC 的时钟,并使其通电。
参数:
无
Return Value
(返回值):
无
Side Effects
(副作用):
无
void ADC_SaveConfig(void)
说明:
此函数保存组件配置。它将保存非保存寄存器。此函数还将保存当前―配置‖对话框中定义的或
通过相应 API 修改的组件参数值。该函数由 ADC_Sleep() 函数调用。
参数:
无
Return Value
(返回值):
无
Side Effects
(副作用):
无
Document Number: 001-79062 Rev. **
Page 29 of 49
®
PSoC Creator™ 组件数据手册
Delta Sigma 模数转换器 (ADC_DelSig)
void ADC_RestoreConfig(void)
说明:
此函数恢复组件配置。这将恢复非保留寄存器。此函数还将组件参数值恢复为调用
ADC_Sleep() 函数之前的值。
参数:
无
Return Value
(返回值):
无
Side Effects
(副作用):
调用此函数前未调用 ADC_Sleep() 或 ADC_SaveConfig() 函数可能会产生意外行为。
void ADC_SetCoherency(uint8 coherency)
说明:
该函数允许您更改 ADC 三个字结果中的哪一个将会触发连贯性解锁。直到所设置字节得到
ADC 或 DMA 的读取,ADC 的结果才会得到更新。默认 LSB 是连贯性字节。如果写 DMA
或定制 API 而 LSB 不是所读取的最后字节,则它会使用该 API 来设置所读取 ADC 结果的
最后一个字节。如果由 DMA 或 ARM 处理器执行了多字节读取,则连贯性可以被设置到所
读取最后一个字的任何字节中。
参数:
uint8 连贯性:连贯性设置。下表给出了有效的连贯性值。
连贯性选项
说明
ADC_COHER_LOW
LSB 应该是所读取的最后一个字节。
ADC_COHER_MID
中间字节应该是所读取的最后一个字节。
ADC_COHER_HIGH
MSB 应该是所读取的最后一个字节。
Return Value
(返回值):
无
Side Effects
(副作用):
无论何种原因,如果更改连贯性,则应将其更改回使用所提供的 ADC_GetResult API 时的
LSB。
Page 30 of 49
Document Number: 001-79062 Rev. **
®
PSoC Creator™ 组件数据手册
Delta Sigma 模数转换器 (ADC_DelSig)
uint8 ADC_SetGCOR(float gainAdjust)
说明:
该函数计算一个新的 GCOR(ADC 增益)值,并将其写入 GCOR 寄存器。GCOR 值是一
个 16 位的值,代表一个 0 到 2 的增益。ADC 结果乘以该值后,被放入 ADC 输出寄存器。
执行函数时,旧 GCOR 值乘以 gainAdjust 输入,然后被重新载入 GCOR 寄存器。GCOR
值根据 GVAL 寄存器进行规格化。
参数:
float gainAdjust:该值有效范围为从 0.000 到 1.999。
Return Value
(返回值):
uint8:如果校正值不在 GCOR 值的范围 0.00 到 1.9999,则将返回一个非零值。
Side Effects
(副作用):
GCOR 的实际值取决于 GVAL 寄存器。GVAL 寄存器被设置为一个等于 GCOR 寄存器中
有效位数减去一的值。如果 GVAL 是 15 (0x0F),则 GCOR 寄存器的全部 16 位均有效。
如果 GVAL 是 11 (0x0B),则仅 12 位有效。如果 GCOR 值向右移四位,则最后四位会丢
失。
uint16 ADC_ReadGCOR(void)
说明:
该函数返回 GCOR 寄存器当前值,该值根据 GVAL 设置进行了规格化。例如,如果 GCOR
值是 0x0812 而 GVAL 寄存器被设置为 11 (0x0B),则返回值向左移动四位。(GCOR 实际值
= 0x0812,返回值 = 0x8120)
参数:
无
Return Value
(返回值):
uint16:规格化的 GCOR 值
Side Effects
(副作用):
GCOR 的值取决于 GVAL 寄存器。如果 GVAL 被设置为小于 15 (0x0F),则 GCOR 值向右移
动 15 减去 GVAL 位。
Document Number: 001-79062 Rev. **
Page 31 of 49
®
PSoC Creator™ 组件数据手册
Delta Sigma 模数转换器 (ADC_DelSig)
DMA 信息
DMA 组件可用于将转换结果从 ADC_DelSig 寄存器传输至 RAM 或另一组件,例如数字滤波器模
块。DMA 数据请求信号 (DRQ) 应通过 ADC 连接至 EOC 引脚。用户可以使用 DMA 向导按如下
所示配置 DMA 操作:
DMA 向导中 DMA 源/目标的名称
DMA 请求
信号
方向
DMA 请求
类型
说明
ADC_DelSig_DEC_SAMP_PTR
源
EOC
边沿
接收分辨率为 8 位的输入模拟值的 1
字节转换结果。
ADC_DelSig_DEC_SAMPM_PTR
源
EOC
边沿
接收分辨率为 9 到 16 位的输入模拟值
的 2 字节转换结果。
ADC_DelSig_DEC_SAMPH_PTR
源
EOC
边沿
接收分辨率为 17 到 20 位的输入模拟
值的 3 字节转换结果。
固件源代码示例
PSoC Creator 在―查找示例项目‖对话框中提供了很多包括原理图和代码示例的示例项目。要获取
组件特定的示例,请打开组件目录中的对话框或原理图中的组件实例。要获取通用的示例,请打
开 Start Page(开始页)或 File(文件)菜单中的对话框。根据需要,使用对话框中的 Filter
Options(滤波器选项)可缩小可选项目的列表。
有关更多信息,请参见 PSoC Creator 帮助中的―Find Example Project(查找示例项目)‖主题。
功能描述
delta-sigma 通道由以下模块构成:



高输入阻抗的前端缓冲器(含可编程的增益),不需要时,可绕过(并切断电源)。

ANAIF — 模拟接口逻辑块由输入缓冲器的寄存器控制器和调制器构成。
全差分式可编程三阶开关电容调制器。
下行数字滤波包括:一个四阶级串联积分梳状 (CIC) 滤波器(也称作抽取滤波器)和后期处理
引擎 (cicdec4_pproc),后者在数据离开 CIC 滤波器时可选择性地执行增益、偏置和简单 FIR
滤波函数。
如不存在输入缓冲器,则开关电容输入级在每次循环时会消耗电流,以对电容进行充电。在这种
情况下,等效输入阻抗为 1/(fs × C),即 1/((3 MHz) × (5 pF)) = 66 kΩ 许多传感器应用需要采用更
高的阻抗,以得出精确的读数。因此,输入缓冲器是 delta sigma 通道的一部分。
Page 32 of 49
Document Number: 001-79062 Rev. **
®
PSoC Creator™ 组件数据手册
Delta Sigma 模数转换器 (ADC_DelSig)
在某些应用中,输入缓冲器还必须处理离地较近的信号,在其他应用中,则必须在靠近供电轨的
地方工作。输入缓冲器包含两个单端缓冲器,它们建立差分通道。用户可以选择任何一个缓冲器。
通道在单端模式下运行时,其中一个输出与地轨连接,并绕过相应的缓冲器。可以给单独一个缓
冲器断电。缓冲器有两个主要的操作模式:


Level-Shifted Mode(电平位移模式):输入接近 0V 共模输入电压范围时,缓冲器输出可通过
输入转换为较高电平。
Rail to Rail Mode(轨至轨模式):在采用轨至轨输入的情况下,使用此模式。
图 8. ADC 缓冲器结构
图 9 展示了开关电容的实现情况。在 9 级量化下工作时,动态元件匹配 (DEM) 模块会因调制器开
关电容 DAC 反馈不匹配而产生错误。为某一给定应用正确配置缓冲器和调制器时,调制器的变量
级可编程量化器(2、3 或 9 级)会产生―量化‖位流。量化位流宽度为 8 位,采用温度格式。在
ANAIF 模块中将温度计量化器编码转化为二进制补码格式,用于抽取滤波器(Sinc4 和 Sinc1)。
Document Number: 001-79062 Rev. **
Page 33 of 49
®
PSoC Creator™ 组件数据手册
Delta Sigma 模数转换器 (ADC_DelSig)
图 9. 开关电容 Delta Sigma 调制器结构
寄存器
采样寄存器
ADC 结果可能在 8 至 24 位分辨率之间。输出分为三个 8 位寄存器。CPU 或 DMA 可访问这些寄
存器,读取 ADC 结果。
ADC_DEC_SAMP(ADC 输出数据采样低位寄存器)
位
7
6
5
4
值
3
2
1
0
3
2
1
0
Data[7:0]
ADC_DEC_SAMPM(ADC 输出数据采样中位寄存器)
位
值
Page 34 of 49
7
6
5
4
Data[15:8]
Document Number: 001-79062 Rev. **
®
PSoC Creator™ 组件数据手册
Delta Sigma 模数转换器 (ADC_DelSig)
ADC_DEC_SAMPH(ADC 输出数据采样高位寄存器)
位
7
6
5
4
值
3
2
1
0
Data[23:16]
PSoC 3 直流和交流电气特性
下列值表示期望的性能,它们基于初始特性数据。除非另有指定,否则运行条件为:




在连续采样模式下运行
分辨率 = 16 至 20 位,则 fclk = 3.072 MHz;分辨率 = 8 至 15 位,则 fclk = 6.144 MHz
参考 = 1.024-V 的内部基准,在 P3[2] 或 P0[3] 上进行旁通
除非另有指定,否则所有图表中的值均为典型值
PSoC 3Delta-Sigma ADC 直流电规范
参数
说明
4
最小
值
典型
值
最大值
单位
分辨率
8
–
20
位
通道数量,单端
–
–
GPIO 数
量
–
通道数量,差分
差分对由一对 GPIO 组成。
–
–
GPIO 数
量/2
–
单调
是
–
–
–
–
已缓冲,缓冲区增益 = 1,
输入范围 = ±1.024 V,
16 位模式
–
–
±0.2
%
已缓冲,缓冲区增益 = 1,
输入范围 = ±1.024 V,
16 位模式
–
–
50
ppm/°
C
已缓冲
–
–
±0.1
mV
温度系数,输入偏移电压
–
–
55
µV/°C
VSSA
–
VDDA
V
3
Ge
增益误差
Gd
增益漂移
VOS
输入偏移电压
TCVOS
ADC TC 输入偏移电压
4
输入电压范围,单端
3
条件
5
总增益误差是 ADC 误差与缓冲器误差之和。
总偏移电压误差是缓冲器 VOS 与 ADC VOS 之和。
Document Number: 001-79062 Rev. **
Page 35 of 49
®
PSoC Creator™ 组件数据手册
Delta Sigma 模数转换器 (ADC_DelSig)
参数
说明
条件
最小
值
典型
值
最大值
单位
输入电压范围,差分,未缓冲
6
VSSA
–
VDDA
V
输入电压范围,微分,已缓冲
6
VSSA
–
VDDA – 1
V
PSRRb
电源抑制比,已缓冲
6
缓冲器增益 = 1、16 位,
范围 = ±1.024 V
90
–
–
dB
CMRRb
共模抑制比,已缓冲
6
缓冲器增益 = 1、16 位,
范围 = ±1.024 V
85
–
–
dB
INL20
积分非线性度
6
范围 = ±1.024 V,未缓冲
–
–
±32
LSB
DNL20
微分非线性度
6
范围 = ±1.024 V,未缓冲
–
–
±1
LSB
INL16
积分非线性度
6
范围 = ±1.024 V,未缓冲
–
–
±2
LSB
DNL16
微分非线性度
6
范围 = ±1.024 V,未缓冲
–
–
±1
LSB
INL12
积分非线性度
6
范围 = ±1.024 V,未缓冲
–
–
±1
LSB
DNL12
微分非线性度
6
范围 = ±1.024 V,未缓冲
–
–
±1
LSB
INL8
积分非线性度
6
范围 = ±1.024 V,未缓冲
–
–
±1
LSB
DNL8
微分非线性度
6
范围 = ±1.024 V,未缓冲
–
–
±1
LSB
Rin_Buff
ADC 输入电阻
使用输入缓冲器
10
–
Rin_ADC16
ADC 输入电阻
绕过输入缓冲器,16 位,范围 =
±1.024 V
–
74
Rin_ADC12
ADC 输入电阻
绕过输入缓冲器,12 位,范围 =
±1.024 V
–
148
Cin_G1
ADC 输入电容
增益 = 1
–
VEXTREF
ADC 外部基准输入电压
引脚 P0[3]、P3[2]
6
–
M
–
k
–
k
5
–
pF
0.9
–
1.3
V
7
7
电流消耗
IDD_20
电流消耗,20 位
6
187 sps,未缓冲
–
–
1.25
mA
IDD_16
电流消耗,16 位
6
48 ksps,未缓冲
–
–
1.2
mA
IDD_12
电流消耗,12 位
6
192 ksps,未缓冲
–
–
1.4
mA
5
VSSA 至 6 × VBG 范围用于对 VDDA 电源进行直接测量。实际标度受限于 VDDA。
6
基于器件特性表征(未经过生产测试)。
7
在 ADC 输入上使用开关电容,可建立有效输入电阻。如果增益和位数保持不变,电阻将与时钟频率成反比。此值是计算得出的,
而非测量得出。有关更多信息,请参见《技术参考手册》。
Page 36 of 49
Document Number: 001-79062 Rev. **
®
PSoC Creator™ 组件数据手册
参数
IBUFF
Delta Sigma 模数转换器 (ADC_DelSig)
说明
缓冲器电流消耗
条件
最小
值
典型
值
最大值
–
–
2.5
最小
值
典型
值
最大值
–
–
4
缓冲器增益 = 1、16 位,
范围 = ±1.024 V
–
–
0.0032
范围 = ±1.024 V,未缓冲
7.8
–
187
sps
范围 = ±1.024V,无缓冲
–
40
–
Hz
范围 = ±1.024 V,未缓冲
2
–
48
ksps
范围 = ±1.024 V,未缓冲
–
11
–
kHz
范围 = ±1.024V,未缓冲
81
–
–
dB
范围 = ±1.024 V,未缓冲
84
–
–
dB
范围 = ±1.024 V,未缓冲
4
–
192
ksps
范围 = ±1.024 V,未缓冲
–
44
–
kHz
范围 = ±1.024 V,未缓
冲
66
–
–
dB
范围 = ±1.024 V,未缓冲
8
–
384
ksps
范围 = ±1.024 V,未缓冲
–
88
–
kHz
范围 = ±1.024 V,未缓
冲
43
–
–
dB
6
单位
mA
PSoC 3 Delta-Sigma ADC 直流电规范
参数
说明
条件
启动时间
THD
总谐波失真
8
单位
采样
%
20 位分辨率模式
8
SR20
采样速率
BW20
最大采样速率时的输入带宽
8
16 位分辨率模式
8
SR16
采样速率
BW16
最大采样速率时的输入带宽
SINAD16int
信噪比,16 位,内部基准
8
8
SINAD16ext 信噪比,16 位,外部基准 8
12 位分辨率模式
8
SR12
采样速率,连续,高功耗
BW12
最大采样速率时的输入带宽
SINAD12int
信噪比,12 位,内部基准
8
8
8 位分辨率模式
8
8
SR8
采样速率,连续,高功耗
BW8
最大采样速率时的输入带宽
SINAD8int
信噪比,8 位,内部基准
8
8
基于器件特性表征(未经过生产测试)。
Document Number: 001-79062 Rev. **
Page 37 of 49
®
PSoC Creator™ 组件数据手册
Delta Sigma 模数转换器 (ADC_DelSig)
Delta-Sigma ADC 采样速率,范围 = ±1.024 V
连续
多样本
多样本加速
分辨率(以位为单
位)
最小值
最大值
最小值
最大值
最小值
最大值
8
8000
384000
1911
91701
1829
87771
9
6400
307200
1543
74024
1489
71441
10
5566
267130
1348
64673
1307
62693
11
4741
227555
1154
55351
1123
53894
12
4000
192000
978
46900
956
45850
13
3283
157538
806
38641
791
37925
14
2783
133565
685
32855
674
32336
15
2371
113777
585
28054
577
27675
16
2000
48000
495
11861
489
11725
17
500
12000
124
2965
282
6766
18
125
3000
31
741
105
2513
19
16
375
4
93
15
357
20
8
187.5
2
46
8
183
图形
Delta-Sigma ADC IDD 对比 sps,未缓冲
Delta-Sigma ADC IDD 对比 sps,已缓冲
2.5
2.5
2
mA
2
mA
1.5
1.5
1
8
10
12
14
16
18
20
0.5
0
0.01
Page 38 of 49
1
8
10
12
14
16
18
20
0.5
0
0.1
1 ksps 10
100
1000
0.01
0.1
1 ksps 10
100
1000
Document Number: 001-79062 Rev. **
®
PSoC Creator™ 组件数据手册
Delta Sigma 模数转换器 (ADC_DelSig)
Delta-sigma ADC 噪声柱状图,1000 件样本,20
位,187 sps,外部基准,VIN = VREF/2,
范围 = ±1.024 V
Delta-sigma ADC 噪声柱状图,1000 件样本,16 位,48
ksps,外部基准,VIN = VREF/2,
范围 = ±1.024 V
50
70
60
40
50
30
%
%
40
30
20
20
10
10
0
Delta-sigma ADC 噪声柱状图,1000 件样本,16
位,48 ksps,内部基准,VIN = VREF/2,
范围 = ±1.024 V
INL[LSB]
40
%
30
20
10
16164
16162
16160
16158
16156
0
16154
16168
16166
16164
Delta-Sigma ADC INL 对比最大采样速率时的分辨率
50
16152
16162
Counts, 16 bit
Counts, 20 bit
16150
16160
16158
16156
16154
265006
265004
265002
265000
264998
264996
264994
264992
0
18.00
16.00
14.00
12.00
10.00
8.00
6.00
4.00
2.00
0.00
8
10
12
14
16
18
20
Resolution [bits]
Counts, 16 bit
Document Number: 001-79062 Rev. **
Page 39 of 49
®
PSoC Creator™ 组件数据手册
Delta Sigma 模数转换器 (ADC_DelSig)
Delta-sigma ADC RMS 噪声对比输入范围和采样速率,20 位,外部基准,单端
RMS 噪声,计数
输入电压范围
采样率,sps
0 到 VREF
0 至 VREF × 2
VSSA 至 VDDA
0 至 VREF × 6
8
1.28
1.24
6.02
0.97
23
1.33
1.28
6.09
0.98
45
1.77
1.26
6.28
0.96
90
1.65
0.91
6.84
0.95
187
1.87
1.06
7.97
1.01
Delta-Sigma ADC RMS 噪声对比输入范围及采样速率,20 位,外部基准,微分
RMS 噪声,计数
输入电压范围
采样率,sps
±VREF
±VREF/2
±VREF/4
±VREF/8
±VREF/16
8
0.70
0.84
1.02
1.40
2.65
11.3
0.69
0.86
0.96
1.40
2.69
22.5
0.73
0.82
1.25
1.77
2.67
45
0.76
0.94
1.02
1.76
2.75
61
0.75
1.01
1.13
1.65
2.98
170
0.75
0.98
187
0.73
Page 40 of 49
无效操作区
Document Number: 001-79062 Rev. **
®
PSoC Creator™ 组件数据手册
Delta Sigma 模数转换器 (ADC_DelSig)
Delta-Sigma ADC INL 对比输出代码,16 位,
48 ksps,25 °C VDDA = 3.3 V
Delta-Sigma ADC DNL 对比输出代码,16 位,
48 ksps,25 °C VDDA = 3.3 V
分辨率 8 到 20 上各输入范围所使用的输入电容值 (单位 pF)
输入范围
输入电容,单位为 pF
分辨率 8 到 15
分辨率 16 到 20
VSS 到 VREF(单)
0.896
3.888
VSS 到 VREF*2(单)
0.896
3.888
VSS 到 VDD(VDD/3 单)
1.088
1.888
VSS 到 VDD(VDD/4 单)
1.088
1.392
VSS 到 VREF*6(单)
0.992
0.992
± VREF (Diff)
0.896
3.888
± VREF*2 (Diff)
1.088
2.192
± VREF*6 (Diff)
0.992
0.992
± VREF/2 (Diff)
1.600
6.000
± VREF/4 (Diff)
2.800
12.000
± VREF/8 (Diff)
3.488
17.588
± VREF/16 (Diff)
5.696
17.200
Document Number: 001-79062 Rev. **
Page 41 of 49
®
PSoC Creator™ 组件数据手册
Delta Sigma 模数转换器 (ADC_DelSig)
PSoC 5 直流和交流电气特性
下列值表示期望的性能,它们基于初始特性数据。除非另有指定,否则运行条件为:




在连续采样模式下运行
分辨率 = 16 至 20 位,则 fclk = 3.072 MHz;分辨率 = 8 至 15 位,则 fclk = 6.144 MHz
参考 = 1.024-V 的内部基准,在 P3[2] 或 P0[3] 上进行旁通
除非另有指定,否则所有图表中的值均为典型值
PSoC 5 Delta-Sigma ADC 直流电规范
最小
值
典型
值
最大值
分辨率
8
–
20
通道数量,
单端
–
–
GPIO
编号
参数
Ge
Gd
VOS
TCVOS
Page 42 of 49
说明
条件
单位
位
通道数量,差分
差分对由一对 GPIO 组成
–
–
GPIO
数量/2
单调
是
–
–
–
增益误差
电平位移已缓冲,缓冲器增
益 = 1,积分范围 ±1.024
V,25 °C,16 位
–0.6
–
0.6
%
未缓冲,积分范围 ±1.024
V,25 °C,16 位
–0.3
–
0.3
%
电平位移已缓冲,缓冲器增
益 = 1,范围 = ±1.024V,
16 位
–
–
60
ppm/°C
未缓冲,范围 = ±1.024 V,
16 位
–
–
70
ppm/°C
电平位移已缓冲,16 位模
式,VDDA = 2.7 V,25 °C
–650
–
650
µV
未缓冲,16 位模式,VDDA
= 2.7 V,25 °C
–200
–
200
µV
电平位移已缓冲, 缓冲器增
益 = 1,16 位,范围 =
±1.024 V,VDDA < 3.6 V
–
10
–
增益漂移
输入偏移电压
温度系数,输入偏移电压
µV/°C
Document Number: 001-79062 Rev. **
®
PSoC Creator™ 组件数据手册
参数
Delta Sigma 模数转换器 (ADC_DelSig)
说明
最小
值
典型
值
最大值
–
–
0.45
µV/°C
单端,未缓冲
VSSA
–
VDDA
V
积分、未缓冲
VSSA
–
VDDA
V
积分、电平位移已缓冲
VSSA
–
VDDA – 1
V
电平位移已缓冲,缓冲器增
益 = 1,范围 = ±1.024 V,
VDDA < 3.6 V
–
80
–
dB
未缓冲,范围 = ±1.024 V
90
–
–
dB
电平位移已缓冲,缓冲器增
益 = 1,范围 = ±1.024 V,
VDDA < 3.6 V
–
85
–
dB
未缓冲,范围 = ±1.024 V
85
–
–
dB
差分范围 ±1.024 V
–
–
32
LSB
差分范围 ±1.024 V
–
–
1
LSB
差分范围 ±1.024 V
–
–
2
LSB
差分范围 ±1.024 V
–
–
1
LSB
差分范围 ±1.024 V
–
–
1
LSB
差分范围 ±1.024 V
–
–
1
LSB
差分范围 ±1.024 V
–
–
1
LSB
差分范围 ±1.024 V
–
–
1
LSB
–
MΩ
–
kΩ
–
kΩ
条件
未缓冲,16 位,范围 =
±1.024 V
输入电压范围
PSRRb
CMRRb
9
9
电源抑制比 — 16 位
共模抑制比,16 位
9
9
9
INL20
20 位 INL
DNL20
20 位 DNL
INL16
积分非线性度
9
16 位
DNL16
微分非线性度 16 位
INL12
12 位 INL
DNL12
12 位 DNL
INL8
8 位 INL
DNL8
8 位 DNL
Rin_Buff
ADC 输入电阻
使用输入缓冲器
10
–
Rin_ADC_16
ADC 输入电阻
绕过输入缓冲器,
16 位,范围 = ±1.024 V
–
74
Rin_ADC_12
ADC 输入电阻
绕过输入缓冲器,
12 位,范围 = ±1.024 V
–
148
9
9
9
9
9
1
10
10
单位
基于器件特性表征(未经过生产测试)。
10
在 ADC 输入上使用开关电容,可建立有效输入电阻。如果增益和位数保持不变,电阻将与时钟频率成反比。此值是计算得出的,
而非测量得出。有关更多信息,请参见《技术参考手册》。
Document Number: 001-79062 Rev. **
Page 43 of 49
®
PSoC Creator™ 组件数据手册
Delta Sigma 模数转换器 (ADC_DelSig)
参数
说明
条件
最小
值
典型
值
最大值
0.9
–
1.3
单位
ADC 外部基准输入电
压,另请参见电压基准规
范内部基准
引脚 P0[3]、P3[2]
IDD_20
电流消耗,
9
20 位 187 sps
未缓冲
–
–
4
mA
IDD_16
电流消耗,
9
16 位,48 ksps
未缓冲
–
–
4
mA
IDD_12
电流消耗,
9
12 位,192 ksps
未缓冲
–
–
4.5
mA
IDD_8
电流消耗,
9
8 位,384 ksps
未缓冲
–
–
4.5
mA
IBUFF
电流消耗,
9
16 位,48 ksps
仅缓冲器
–
–
3.5
mA
VEXTREF
V
电流消耗
PSoC 5 Delta-Sigma ADC 直流电规范
参数
说明
最小
值
典型
值
最大值
–
–
4
–
–
0.006
差分范围 ±1.024 V
7.8
–
187
sps
差分范围 ±1.024 V
–
40
–
Hz
差分范围 ±1.024 V
2
–
48
ksps
条件
启动时间
THD
总谐波失真,
11
16 位
未缓冲,范围 =
±1.024 V
单位
样品
%
20 位分辨率模式
11
SR20
采样速率,20 位
BW20
带宽,20 位
11
16 位分辨率模式
11
SR16
采样速率,16 位
BW16
带宽,16 位
差分范围 ±1.024 V
–
11
–
kHz
SINAD16int
信噪比 + 失真,16 位,内部
11
基准
未缓冲,范围 =
±1.024 V
81
–
–
dB
SINAD_16ext 信噪比 + 失真,16 位,外部
11
基准
未缓冲,范围 =
±1.024 V
84
–
–
dB
11
11
基于器件特性表征(未经过生产测试)。
Page 44 of 49
Document Number: 001-79062 Rev. **
®
PSoC Creator™ 组件数据手册
参数
Delta Sigma 模数转换器 (ADC_DelSig)
说明
最小
值
典型
值
最大值
差分范围 ±1.024 V
4
–
192
ksps
条件
单位
12 位分辨率模式
11
SR12
采样速率,12 位
BW12
带宽,12 位
差分范围 ±1.024 V
–
44
–
kHz
SINAD12int
信噪比 + 失真,12 位,内部
11
基准
未缓冲,范围 =
±1.024 V
66
–
–
dB
差分范围 ±1.024 V
8
–
384
ksps
11
8 位分辨率模式
11
SR8
采样速率,8 位
BW8
带宽,8 位
差分范围 ±1.024 V
–
88
–
kHz
SINAD8int
信噪比 + 失真,8 位,内部
11
基准
未缓冲,范围 =
±1.024 V
43
–
–
dB
11
Document Number: 001-79062 Rev. **
Page 45 of 49
®
PSoC Creator™ 组件数据手册
Delta Sigma 模数转换器 (ADC_DelSig)
电压基准规范
另参见 PSoC 5 Delta-Sigma ADC 直流电规范中 VEXTREF 部分的 ADC 外部基准规范。
参数
说明
条件
高精度基准电压
VREF
温度漂移
初始调整
12
长期漂移
热循环漂移(稳定性)
12
最小值
典型
值
最大值
单位
1.017
(–0.7%)
1.024
1.033 V
(+0.9%)
–
–
57
ppm/°C
–
100
–
ppm/Khr
–
100
–
ppm
组件更改
本节介绍组件与以前版本相比的主要更改。
版本
更改说明
更改/影响原因
2.20.a
数据手册纠正
2.20
实现了三个新的 API
用于设置连贯性寄存器的 ADC_SetCoherency()。有
ADC_SetCoherency()、ADC_SetGCOR() 助于方便地更改字节连贯性。
和 ADC_ReadGCOR()
用于设置增益校正寄存器的 ADC_SetGCOR()。
用于读取规格化 GCOR 寄存器值的
ADC_ReadGCOR()。
增加四个新 Bypass(旁通)基准选项。
Vdda/3 和 Vdda/4 基准的 Bypass(旁通)基准选项
增加注释和配置名参数
配置参数可对 ADC 配置进行唯一性地命名。
注释参数描述配置的使用。
用于PSoC 5 的 ADC_Stop() API 更改
当配合 PSoC 5 使用时,为防止组件停止时影响无关
模拟信号,所需的更改。
根据 ADC 时钟频率对 ADC 功率设置所作 用于优化 ADC 部件的功率使用。
更改
解决了一个 ADC_SelectConfiguration()
API 问题。
现在可以实现预期的调用 ADC_SelectConfiguration()
API 而不调用 ADC_Start()。
向数据手册中添加了 PSoC 5 特性数据
用实型数据更新了数据手册中的占位符图
12
基于器件特性表征(未经过生产测试)。
Page 46 of 49
Document Number: 001-79062 Rev. **
®
PSoC Creator™ 组件数据手册
版本
2.10
Delta Sigma 模数转换器 (ADC_DelSig)
更改说明
更改/影响原因
外部电荷泵时钟是默认选项,用户不能选
择。
ADC 现在可一直使用外部电荷泵时钟,而不用内部
时钟。这是为了保证最佳的电荷泵时钟频率,以最大
化 ADC 的性能。
两个差分输入范围
这些输入范围在其名称上存在错误。
±0.128 V(–输入 ± Vref/8)
±0.064 V(–输入 ± Vref/16)
注:
名称发生变化。
当使用 ADC_DelSig 2.10 版更新所用版本比 2.0 更低
的现有项目时,可能会导致参数评估故障的错误信
息。
要解决此问题,请打开―配置‖对话框,然后切换输入
模式的选择。单击 OK(确定)关闭对话框,然后构
建项目。
添加了两个新的基准选项:内部 VDDA/4 和 PSoC3 ADC 的基准输入范围较窄:0.9 V 至 1.3 V。
内部 VDDA/3。
这可能会导致在 VDDA 小于 3.6 V 时,VSS 至 VDDA 比
例范围无法正常运行。这个新的 VDDA/3 基准纠正了这
个问题。
基准值的更改影响输入范围列表。
输入范围列表基于所选基准电压更新。
Vref 值参数添加了错误提供商。
目的在于警告用户使用的 Vref 值是否超出预期范围
0.9V 至 1.3V。
ADC 时钟频率现在取决于输入范围选择。 ADC 时钟频率取决于所选输入范围。ADC 最大时钟
频率将因输入范围而异。如果 ADC 时钟频率超过所
选输入范围的最大时钟频率,则错误符号将出现在时
钟频率的文本框中。
通过偏移计算解决了一个问题。
针对分辨率为 9、10、11、13、14 和 15 位的 0 至
2*Vref 单端模式现在按预期运行。
通过 DMA 向导工具生成码解决了一个问
题。
当分辨率大于 8 位时,DMA 向导工具使用正确的
ADC 输出寄存器。
向数据手册中添加了特性数据
对数据表进行了少量编辑和更新
Document Number: 001-79062 Rev. **
Page 47 of 49
®
PSoC Creator™ 组件数据手册
Delta Sigma 模数转换器 (ADC_DelSig)
版本
2.0
更改说明
更改了 Input Range(输入范围)参数:
添加了 4 个新的输入范围:
Vssa 至 6*Vref
±6.144 V(–输入 ± 6*Vref)
±0.125 V(–输入 ± Vref/8)
更改/影响原因
当更新使用 ADC_DelSig 2.0 版的现有项目时,可能
会导致参数评估失败的错误信息。
要解决此问题,请打开―配置‖对话框,然后切换输入
模式的选择。单击 OK(确定)关闭对话框,然后构
建项目。
±0.0625 V(–输入 ± Vref/16)
注:此更改可能将破坏现有设计。
进行了更新,以支持 PSoC 3 ES2 或更高
版本,及 PSoC 5 或更高版本。
此版本支持 PSoC 3 ES2 或更高版本,及 PSoC 5 或
更高版本。与更高版本的芯片一同使用时,更低版本
的组件将显示错误信息。
添加了睡眠/唤醒和初始化/启用 API。
为支持低功耗模式并提供常用接口,以单独控制大多
数组件的初始化和启用。
添加了新参数:输入模式和缓冲器模式。
这些新参数在更低版本的 ADC_DelSig 组件中不存
在。当更新至组件的 2.0 版本时,新参数为给定的默
认值。Input Mode(输入模式)参数的默认值是
―Differential(差分)‖。Input Mode(输入模式)参数
确定了 Input Range(输入范围)的选择。因此,之
前配置了―单端‖Input Range(输入范围)的已更新组
件将获得―Differential(差分)‖的默认值。
删除了 Power(功耗)参数,并添加了新
的 Conversion Mode(转换模式)―Single
Sample(单一样本)‖。
向组件中添加了 DMA 功能文件。
此文件允许 ADC_DelSig 在 PSoC Creator 中受 DMA
向导
工具的支持。
向 API 中添加了 Keil 功能重新进入支持。 添加此功能,以便使客户能够指定哪一生成函数可重
新
进入。
编辑了―配置‖对话框。
使得电压基准参数可编辑。
添加了不同的配置,以支持在运行时更改配置。
对话框使您能够在选择了 VSSA 至 VDDA 输入范围时修
改电压值。
所选输入范围的设置值已纳入 ADC 实
现。
设置值将用于调整 Decimator(抽取滤波器)增益,
以提高 ADC 的性能。
向头文件中添加了常数,以便于使用。
ADC 组件现在拥有常数,例如,使用的基准、设置的
增益、使用的模式、使用的采样速率等,这样您便可
以在应用中使用这些常数。
向 ADC DelSig 组件中添加了新的可选连
接
这可用于将调制器的 -ve 输入连接至 AGL6。
Page 48 of 49
Document Number: 001-79062 Rev. **
®
PSoC Creator™ 组件数据手册
版本
Delta Sigma 模数转换器 (ADC_DelSig)
更改说明
更改/影响原因
根据时钟频率,已启用电荷泵功耗设置。
8 位 ADC 范围存在问题。此问题是由于没有参照
DSM_CR16 寄存器中的 ADC 时钟来设置电荷泵的功
耗设置位而造成的。对 ADC 代码进行了修改,以根
据 ADC 时钟频率来设置这些位。
删除了 SetPower API。
SetPower API 是一个不再有用的 API。特意将其删除
是因为其没有提供任何价值。如果您的代码中有此功
能,您需要将其删除。
© 赛普拉斯半导体公司,2012。此处所包含的信息可能会随时更改,恕不另行通知。除赛普拉斯产品的内嵌电路之外,赛普拉斯半导体公司不对任何其他电路的使用承担任何责
任。也不根据专利或其他权利以明示或暗示的方式授予任何许可。除非与赛普拉斯签订明确的书面协议,否则赛普拉斯产品不保证能够用于或适用于医疗、生命支持、救生、关键
控制或安全应用领域。此外,对于可能发生运转异常和故障并对用户造成严重伤害的生命支持系统,赛普拉斯不授权将其产品用作此类系统的关键组件。若将赛普拉斯产品用于生
命支持系统中,则表示制造商将承担因此类使用而招致的所有风险,并确保赛普拉斯免于因此而受到任何指控。
PSoC® 是赛普拉斯半导体公司的注册商标,PSoC Creator™ 和 Programmable System-on-Chip™ 是赛普拉斯半导体公司的商标。此处引用的所有其他商标或注册商标归其各自
所有者所有。
所有源代码(软件和/或固件)均归赛普拉斯半导体公司(赛普拉斯)所有,并受全球专利法规(美国和美国以外的专利法规)、美国版权法以及国际条约规定的保护和约束。赛
普拉斯据此向获许可者授予适用于个人的、非独占性、不可转让的许可,用以复制、使用、修改、创建赛普拉斯源代码的派生作品、编译赛普拉斯源代码和派生作品,并且其目的
只能是创建自定义软件和/或固件,以支持获许可者仅将其获得的产品依照适用协议规定的方式与赛普拉斯集成电路配合使用。除上述指定的用途之外,未经赛普拉斯的明确书面
许可,不得对此类源代码进行任何复制、修改、转换、编译或演示。
免责声明:赛普拉斯不针对此材料提供任何类型的明示或暗示保证,包括(但不仅限于)针对特定用途的适销性和适用性的暗示保证。赛普拉斯保留在不做出通知的情况下对此处
所述材料进行更改的权利。赛普拉斯不对此处所述之任何产品或电路的应用或使用承担任何责任。对于可能发生运转异常和故障并对用户造成严重伤害的生命支持系统,赛普拉斯
不授权将其产品用作此类系统的关键组件。若将赛普拉斯产品用于生命支持系统中,则表示制造商将承担因此类使用而招致的所有风险,并确保赛普拉斯免于因此而受到任何指控。
产品使用可能受适用的赛普拉斯软件许可协议限制。
Document Number: 001-79062 Rev. **
Page 49 of 49