PSoC® Creator™组件数据手册 Delta Sigma 模数转换器(ADC_DelSig) 2.30 特性 可选的分辨率,8 至 20 位(与器件相关) 每个分辨率有 11 个输入范围 采样速率为 10 到 384 ksps 工作模式: 单样本采样模式 多样本采样模式 连续模式 多样本(加速)采样模式 高输入阻抗输入缓冲器 可选增益的输入缓冲器(1、2、4、8)或输入缓冲器旁路 多个内部或外部电压参考选项 自动功耗配置 最多四个 ADC 动态配置项 概述 Delta Sigma 模数转换器(ADC_DelSig)可为精密测量应用提供低功耗、低噪声前端。它可用于多 种应用,具体取决于分辨率、采样速率和操作模式。它能够对 16 位音频进行高速低分辨率通信处 理,并且能够对应变计、热电偶和其他高精度传感器进行高精度的 20 位低速转换。处理音频信息 时,ADC_DelSig 采用连续模式。当用于扫描多个传感器时,ADC_DelSig 采用其中一个多样本采 样模式。用于单点高分辨率测量时,ADC_DelSig 采用单一样本采样模式。 Delta sigma 转换器使用过采样在更广泛的频谱上扩展量化噪声。该噪声的形成是为了将其大部分 移至输入信号的带宽之外。内部低通滤波器用于滤出所需输入信号带宽外的噪声。这使 deltasigma 转换器能够良好地用于高速中分辨率(8 至 16 位)和低速高分辨率(16 至 20 位)应用。 赛普拉斯半导体公司• 198 Champion Court • San Jose,CA 95134-1709 • 408-943-2600 文档编号:001-88882 修订版** 修订日期 August 22, 2013 ® 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 转换 器输出返回一个值,该值代表正向输入与负向输入信号间的电压差。 页 2/48 文档编号:001-88882 修订版** ® PSoC Creator™组件数据手册 Delta Sigma 模数转换器(ADC_DelSig) –输入 — 模拟* ADC_DelSig 的负向模拟信号输入。负向输入引脚仅当 ADC Input Mode(输入模式)设置为 Differential(差分)时才显示在组件上。当 ADC Input Mode 设置为 Single(单端)时,负向输 入将连接至 Vssa 或 Vref,具体取决于所选的输入范围。 Start of Conversion (soc) — 输入* Start of Conversion(开始转换)检测到上升沿时,会触发 ADC 转换。该引脚上的上升沿与调用 ADC_StartConvert()函数具有相同的效果。当用户选择 Hardware SOC 参数时,会使能 soc 功 能,此时会显示这一输入。如果未选择 Hardware SOC,则该输入在组件图标上会被隐藏。在 Single Sample(单样本采样)模式下,ADC 执行单次转换,然后停止。在连续和其他模式下, ADC 转换将持续进行,直到执行 ADC_StopConvert()或 ADC_Stop()函数为止。 aclk — 输入 * 外部时钟源。如果将 Clock Source 参数设置为 External,则显示该引脚。如果将 Clock Source 参数设置为 Internal,则时钟自动在组件内部配置,且 aclk 引脚将不显示。aclk 输入是在组件外 部生成的时钟。该时钟信号可能来自芯片内部或 PSoC 外部源。应将该时钟设置为 Clock Frequency 参数中显示的值,以达到所选的采样速率。占空比应为 50%。该时钟决定了 ADC 的 转换速率。ADC 外部时钟,应总是基于系统时钟。如果需要更精确稳定的时钟,则系统时钟应基 于外部(PSoC 外部)时钟或振荡器。 End of Conversion(eoc) — 输出 Start of Conversion(结束转换)上的上升沿表示转换已经完成。该引脚在一个 ADC 时钟周期内变 为高电平。eoc 通常连接至中断或 DMA 请求端。DMA 请求通常用于将转换输出传输至系统 RAM、DFB 或其他组件。在组件内部,已经有一个中断连接到该信号。 注意:PSoC 5 的 EOC 在连接方式方面有一定限制。除连接到单个 DMA 组件外,EOC 端口都不 可路由。 文档编号:001-88882 修订版** 页 3/48 Delta Sigma 模数转换器(ADC_DelSig) ® PSoC Creator™组件数据手册 组件参数 Delta Sigma ADC 是一种高度可配置的模数转换器。将一个 ADC_DelSig 组件拖放到您的设计上 ,并双击以打开 Configure(配置)对话框。 页 4/48 文档编号:001-88882 修订版** ® PSoC Creator™组件数据手册 Delta Sigma 模数转换器(ADC_DelSig) Sampling(采样) 转换模式 ADC_DelSig 以下列四种模式中的一种进行工作: 模式 0 - 单样本采样模 式 说明 ADC每次启动转换生成一个样本。 当分辨率高于16位时,Single Sample(单样本采样)模式下的ADC转换应启用中断。为此, 需要在应用中启用Global Interrupt(全局中断)(通过调用CYGlobalIntEnable)(main.c)。 单样本采样模式支持转换排队功能。如果当前转换未完成前,StartConvert()函数被调用执行或 “soc”有输入请求,那么在完成当前的转换后,将自动启用其他转换。 1 –多样本采样模 式 Multi-sample(多样本采样)模式以背对背的方式采集每个样本,自动在每个样本之间复位其 本身和调制器。 输入在多个信号间切换时,该模式非常有用。每个样本之间会对滤波器进行记忆清除,因此之 前的样本不会影响当前的转换。 注意:在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 的第一次转换结果有效。虽然所有模式都在启动 ADC 时复位抽取滤波 器,但唯独连续模式不会在读取间复位抽取滤波器。因此,连续模式的第一次读取时间将会比后 续的读取时间长 4 倍。使用模拟复用器在多个输入间进行扫描时,必须注意确保 ADC 在输入切换 处于变化时未运行。在使用除连续之外的模式时,要在样本之间切换输入,可使用模拟硬件复用 器。 更改 Conversion Mode 参数时,时钟频率将会改变,以维持所选的采样速率。如果 ADC 时钟频 率超出最小值或高于最大值,将会显示错误状况。 注意: 在多采样模式、连续采样模式、多样本(加速) 采样模式中运行时,在下一个转换结果输出 之前请及时读取当前转换值。否则将发生不连贯的读取操作。如果使用 EOC 触发的 DMA 或 ADC ISR 中的代码,便能够容易避免该问题。由于有整个转换时间用于读取最后的结果,因此几乎在所 文档编号:001-88882 修订版** 页 5/48 Delta Sigma 模数转换器(ADC_DelSig) ® PSoC Creator™组件数据手册 有设计中,不连贯的读取操作不是什么问题。如果固件赶不上 ADC 的转换速率,该速率应被减少 到一个可控制的速度内。该情况仅在 PSoC 3 产品系列中发生。 # Configs 使用# Configs 参数,您最多可定义四个不同配置。例如,系统可能需要在适用于音频的配置(连 续采样模式,16 位,48ksps)、适用于低电平模拟传感器的配置(单样本采样模式,20 位, 60sps)和适用于 12 位通用多通道数据记录的配置(多样本模式)间进行切换。所有配置必须使 用相同的输入模式,即全部单端或全部差分。 默认情况下,ADC 将被设置为第一个配置(Config1),除非 ADC_SelectConfiguration()函数将配 置设定为不同的值。这些多种配置使您能够在运行时更改工作模式。每种配置包含在它自己的选 项卡中。 使用多种 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 时,数字输出才会饱和。 页 6/48 文档编号:001-88882 修订版** ® PSoC Creator™组件数据手册 Delta Sigma 模数转换器(ADC_DelSig) 除非选择了 8 位或 16 位分辨率,否则通常无需考虑这点。当分辨率设置为 8 位或 16 位时,必须 注意确保数值不近似其最大正值或最小负值至各自的负值或正值。要确保这种情况不会发生,最 好使用返回值大于所设分辨率的 API 函数。例如,如果分辨率设置为 16 位,且最大正值可能大于 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 以列表形式提供了相同的信 息。 文档编号:001-88882 修订版** 页 7/48 ® PSoC Creator™组件数据手册 Delta Sigma 模数转换器(ADC_DelSig) 以下数据适用于 ADC 范围 = ±1.024 V,缓冲器增益 = 1.0。 表 1. ADC_DelSig 的采样速率限制(缓冲器增益 = 1) 单样本采样 多样本采样 连续采样 多样本(加速)采样 分辨率 最小值 最大值[1] 最小值 最大值 最小值 最大值 最小值 最大值 8 1911 91701 1911 91701 8000 384000 1829 87771 9 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 时钟频率超出最小或最大值,参数旁会显示错误提示。请参阅无效设置(无效设置)。 范围[ __ SPS ] 该字段为只读(始终不可用)区域,显示当前设置的最高和最低可用转换速率。 1. 单样本采样模式的有效最高采样速率将低于显示。有一些后期处理步骤与多样本模式中的转换重叠,但对于单样本采样模式不 能重叠。这一开销未包含在显示的计算中。如果未使用硬件转换开始方法(soc)启动采样,则还须将使用软件启动采样的时间包 含在最高采样速率的计算内。 页 8/48 文档编号:001-88882 修订版** ® PSoC Creator™组件数据手册 Delta Sigma 模数转换器(ADC_DelSig) 时钟频率 该文本框为只读(始终不可用)区域,显示所选工作条件:转换模式、分辨率、转换速率、输入 范围和缓冲器增益下所需的时钟频率。如果这些条件中任一条件发生变化,则该文本框将会得到 更新。时钟频率以 1 Hz 的分辨率显示。如果所选工作条件所需的时钟频率超出最小和最大限制, 参数旁会显示错误提示。请参阅无效设置(无效设置). 时钟频率基于分辨率、转换模式和转换速率计算而得。该速率将显示在设计范围资源时钟编辑器 中,此编辑器将始终显示 Config 1 的时钟频率。当 Clock Source 参数设置为 Internal(内部) 时,ADC API 将根据运行时所选的配置设置当前的时钟频率。 使用 ADC 外部时钟(芯片外部时钟或来自用户所选的内部时钟)时,所需的时钟速率被显示在该 字段中。您必须为每种配置提供合适的时钟。 无效设置 Conversion Mode(转换模式)、Resolution(分辨率)和 Conversion Rate(转换速率)这些 参数都会影响 ADC 时钟频率。更改这些参数中的任意一个都可能导致 ADC 时钟频率超过最大或 最小频率。最大 ADC 频率取决于 Resolution(分辨率)、Buffer Gain(缓冲器增益)和 Input Range(输入范围)。如果这些参数的设置无效,则会出现如下所示的带惊叹号的红色圆圈:如 图 3 所示。 图 3. Invalid Settings Notification(无效设置通知) 如将鼠标悬停于其中一个错误符号上方,则出现错误消息。请根据需要更改这些参数以符合 ADC 规范。 文档编号:001-88882 修订版** 页 9/48 ® PSoC Creator™组件数据手册 Delta Sigma 模数转换器(ADC_DelSig) Input Options(输入选项) Input Mode(输入模式) ADC 具有固有差分性,但是,您可以使用该参数简化单端使用。 该参数将 ADC 配置为差分或单端输入。默认选择为 Differential(差分)。在该模式下,负向输 入和正向输入都显示在符号上。选择单端模式时,ADC 的负向输入将连接至 Vssa。 差分 单端 注意 PSoC 3 和 PSoC 5 器件中的 Delta-Sigma ADC 本身就是差分输入。单端模式是通过从内部 将负向输入连接到地来实现。 图 4 显示的是 16 位分辨率差分和单端输入范围上 delta-sigma ADC 的输入输出特性。虽然通过将 Vn 输入连接到 Vssa 使 ADC 相同于单端 ADC,但由于所有输入都是相对于 Vssa 的,因此该 ADC 是差分 ADC。即使在单端模式和某些缓冲区模式中,Vp 输入可达到比 Vssa 电压少 100mV 的值。这样会使 ADC 返回一个错误的负值。因此,ADC 返回值始终是一个有符号的数字。 ADC 处于差分模式时,整个输入范围将始终是零点对称的分布。ADC 处于单端模式时,输入范围 将为:从低于 Vssa 电压值到全量程值。 图 4. Delta-Sigma ADC I/O 特性 页 10/48 文档编号:001-88882 修订版** ® PSoC Creator™组件数据手册 Delta Sigma 模数转换器(ADC_DelSig) Differential Input Single Ended Input 0x7FFF 0xFFFF Vp-Vn Vp-Vn 0x0000 -Vref*N Vref*N 0x0000 Vssa +Vref*N 0x8000 注意当您配置 ADC 用于 16 位单端模式时,输出不会在 0x7FFF 停止,而是一直向上走直至 0xFFFF。例如,16 位的 ADC 通过考虑 17 位的差分 ADC 并忽略一半范围而实现。 Input Mode(输入模式)只能在 Config 1 中设置。如果需要单端和差分这两种模式,则必须选择 差分模式,然后您可以使用模拟复用器将 Vssa 连接至 ADC 的负向输入以作为单端 ADC 使用。 该参数控制 Input Range 参数中的选项。 输入范围 该参数按给定的输入范围配置 ADC。这可以配置 ADC 的输入,且独立于 Buffer Gain(缓冲器增 益)设置。无论使用了什么输入范围设置,连接至 IC 的模拟信号都必须在 Vssa 和 Vdda 之间。 ADC 输入范围的绝对最大值将始终受 Buffer Mode(缓冲器模式)的绝对最大和最小值控制。 该参数可用的选项取决于 Input Mode(输入模式)的选择;表 2 和表 3 对选项进行了说明。 当 Input Mode(输入模式)设置为 Differential(差分)时,以下选项可用。对于需要扫描单端 和差分信号的系统,在扫描单端输入时,将负向输入连接至 Vssa。根据应用的不同,您可以使用 Buffer Mode(缓冲器模式)参数选择 Rail to Rail(轨对轨)、Level Shift(电平位移)或 Bypass Buffer(旁路缓冲器)。有关更多信息,请参见 Buffer Mode(缓冲器模式)(缓冲器模 式)参数说明。 您可以使用外部基准来提供不同的工作范围。可用的输入范围可通过适用的公式计算而得。 文档编号:001-88882 修订版** 页 11/48 ® PSoC Creator™组件数据手册 Delta Sigma 模数转换器(ADC_DelSig) 表 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.064V。如果–输入连接至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) 页 12/48 文档编号:001-88882 修订版** ® 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 使用内部基准(1.024 V)时,输入范围为0.0至6.144 V,但不超出最大电气输入范围。可以使用 (Vssa至6*Vref) 该模式测量电源电压。如果您要测量供电电压,则必须绕过缓冲器。 下表显示了 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 值。 文档编号:001-88882 修订版** 页 13/48 ® 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 范围。 页 14/48 文档编号:001-88882 修订版** ® PSoC Creator™组件数据手册 Delta Sigma 模数转换器(ADC_DelSig) 图 5. ADC 范围 +100 mV Vdda ADC Range (Bypass Buffer Mode) Vdda ~250 mV Vdda ADC Range (Rail to Rail Mode) Vssa –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]上建立 旁路的内部Vref2 使用内部1.024-V基准,并允许将外部旁路电容连接在引脚 P0[3]上。 在P3[2]2上建立 旁路的内部 Vref 使用内部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 LP芯片时,该选项才有 效。在使用PSoC5芯片的情况下,选择该选项会导致编译错误。 2 * 精度和信噪比很大程度上取决于基准电压的质量。ADC 的基准可在端口 P0[3]或端口 P3[2]上建立旁路。建议使用外部旁路电容 。基准噪声取决于频率,如图 6 中测量所示。 文档编号:001-88882 修订版** 页 15/48 ® PSoC Creator™组件数据手册 Delta Sigma 模数转换器(ADC_DelSig) 说明 ADC_Reference 内部Vdda/3,经P0[3] 2 旁通 使用Vdda/3内部基准,并允许将外部旁路电容连接在引脚P0[3]上。仅当使用PSoC 3 Production芯片时,该选项才有效。在使用PSoC5芯片的情况下,选择该选项会导致编译 错误。 2 使用Vdda/3内部基准,并允许将外部旁路电容连接在引脚P3[2]上。仅当使用PSoC 3 Production芯片时,该选项才有效。在使用PSoC5芯片的情况下,选择该选项会导致编译 错误。 内部Vdda/3,经P3[2] 旁通 图 6. 基准噪声 当在高达 fSAMPLE/2 的频带上、集成基准噪声小于集成量化噪声时,基准不会限制噪声性能。您可 以使用下表根据分辨率选择一个合适的、更大的电容值。 分辨率(以位为单位) 旁路电容值(µF) 10 0.01 12 0.01 14 0.1到1.0 16 0.1到1.0 18 1. 0到10.0 注意:ADC_SAR 和 ADC_DelSig 组件使用相同的内部参考。如果两类 ADC 同时需要使用内部参 考,请使用 Internal Vref, bypassed 选项以获得最佳的性能。 Vref 值 该参数设置或显示 ADC 所使用的基准电压。如果使用内部 1.024 V 基准,则将显示数值 1.0240。 如果选择 Internal Vdda/3 或 Internal Vdda/4 基准选项,则值将从设计范围资源页面中的 Vdda 页 16/48 文档编号:001-88882 修订版** ® PSoC Creator™组件数据手册 Delta Sigma 模数转换器(ADC_DelSig) 设置派生而来。如果选择了外部基准,则用户可输入用于确保 counts-to-volts(计数转电压)API 正常工作的参考电压。可以输入的最小值和最大值分别是 0.9 到 13V。默认值为 1.024V。如果所 选基准在 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。 文档编号:001-88882 修订版** 页 17/48 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 原 理图符号中将显示时钟输入引脚。外部时钟必须具有 50%的占空比。内部时钟的正确的占空比由 设计来确保。 时钟稳定性对于实现低噪声运行十分重要。抖动的副作用之一是大量的分布信号。以下 FFT 清晰 地展现了这些。使用外部时钟可显著提高 ADC 的信噪比(SNR)。 页 18/48 文档编号:001-88882 修订版** ® 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 倍。该选项用户不可选,是被禁用的。 文档编号:001-88882 修订版** 页 19/48 ® PSoC Creator™组件数据手册 Delta Sigma 模数转换器(ADC_DelSig) Enable_Vref_Vssa 该参数使您能够将 ADC 基准 Vssa 的负向输入连接至模拟全局 AGL[6]。对于高精度系统,可将 Vref_Vssa 连接至外部 Vssa,以消除片上 Vssa 和片下 Vssa 之间的任何微小差值。这种微小差值 会导致 ADC 中产生增益误差。 仅当使用 PSoC 3 Production 和 PSoC 5 LP 芯片时,该选项才有效。在使用 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]直接相连的网上,则在构建过程中,此工具将生成错误。该错误表示您将资源连 接至未与引脚直接连接的网,所以无法进行路由。下图是一个示例: 应用编程接口 通过应用编程接口(API)您可以使用软件进行配置组件。下面的表格列出并介绍了每个函数的接 口。以下各节将更详细地介绍每个函数。 默认情况下,PSoC Creator 将实例名称“ADC_DelSig_1”分配给指定设计中组件的第一个实例 。您可以将该实例重新命名为符合标识符语法规则的唯一一个任意值。实例名称会成为与该组件 相关的每个全局函数名称、变量和常量符号的前缀。为增加可读性,下表中使用了实例名称 “ADC.” 函数 说明 ADC_Start() 设置initVar变量,调用ADC_Init()函数,然后调用ADC_Enable()函数。 ADC_Stop() 停止ADC转换并断电。 ADC_SetBufferGain() 选择输入缓冲器增益(1、2、4、8) 页 20/48 文档编号:001-88882 修订版** ® PSoC Creator™组件数据手册 Delta Sigma 模数转换器(ADC_DelSig) 函数 说明 ADC_StartConvert() 开始转换。 ADC_StopConvert() 停止转换 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() 保存当前配置。 ADC_RestoreConfig() 恢复配置。 ADC_SetCoherency() 设置连贯性寄存器。 ADC_SetGCOR() 计算一个新的GCOR值,并用该新值设置GCOR寄存器。 ADC_ReadGCOR() 返回正常化的GCOR寄存器值。 文档编号:001-88882 修订版** 页 21/48 ® PSoC Creator™组件数据手册 Delta Sigma 模数转换器(ADC_DelSig) 全局变量 变量 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。 参数: 无 返回值: 无 副作用: 无 void ADC_Stop(void) 说明: 禁用ADC,并使其断电。 注意:不建议将本API使用于PSoC 5芯片。这些器件有一个缺陷,导致与某些模拟资源的连接 在断电时不可靠。当使用该资源的组件停止时,该不可靠性会在静默失败中表现出来(例如模 拟组件中出现不可预见的不良结果)。使用该芯片时,一个设计中的全部模拟组件应在全部时 间进行供电(通过调用它们各自的 _Start() API,例如ADC_Start())。请勿调用ADC_Stop() API。 参数: 无 返回值: 无 副作用: 无 页 22/48 文档编号:001-88882 修订版** ® PSoC Creator™组件数据手册 Delta Sigma 模数转换器(ADC_DelSig) 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 返回值: 无 副作用: 增大增益会降低缓冲区的带宽。 void ADC_StartConvert(void) 说明: 强制ADC开始进行转换。如果处于Single Sample(单样本采样)模式,则将执行一次转换, 然后ADC将停止运行。如果处于其他三种模式中的一种,则ADC将持续运行。 如果在转换时调用ADC_StartConvert()函数,下一转换启动将列入队列,且当前转换完成后, 新的转换便会开始。如果您不想等待当前转换完成,而想立即开始新的转换,请调用 ADC_StopConvert()来停止当前转换。停止转换后,通过调用ADC_StartConvert()来重启转 换。 参数: 无 返回值: 无 副作用: 无 void ADC_StopConvert(void) 说明: 强制ADC停止所有转换。如果ADC正处于当前转换中,则ADC将重置,并且不提供部分转换 的结果。 参数: 无 返回值: 无 副作用: 无 文档编号:001-88882 修订版** 页 23/48 ® PSoC Creator™组件数据手册 Delta Sigma 模数转换器(ADC_DelSig) void ADC_IRQ_Enable(void) 说明: 转换结束后,启用中断。还必须启动全局中断,以实现ADC中断。要启用全局中断,请在中断 发生前,在main.c中启用全局中断宏“CYGlobalIntEnable;”。 参数: 无 返回值: 无 副作用: 启用中断。读取结果将清除中断。 void ADC_IRQ_Disable(void) 说明: 转换结束后,禁用中断。 参数: 无 返回值: 无 副作用: 无 uint8 ADC_IsEndConversion(uint8 retMode) 说明: 检查ADC转换结束。该函数为编程器提供了两个选项。在一种模式下,该函数立即返回转换状 态。在另一种模式下,在转换完成前,该函数不会返回转换状态(封锁)。 参数: uint8 retMode:检查转换返回模式。有关选项,请参见下表。 选项 说明 ADC_RETURN_STATUS 立即返回转换结果状态。 ADC_WAIT_FOR_RESULT 完成ADC转换后,返回转换结果状态。 返回值: uint8:如果返回非零值,则最后一次转换已完成。如果返回值为零,则ADC仍在计算最后的 结果。 副作用: 当EOC输出用于触发DMA读取ADC结果时,不应该使用ADC_IsEndConversion()函数。这是 因为通过DMA读取输出寄存器将删除ADC的转换完成标志,而且在 ADC_WAIT_FOR_RESULT模式下,API不能返回值。 页 24/48 文档编号:001-88882 修订版** ® PSoC Creator™组件数据手册 Delta Sigma 模数转换器(ADC_DelSig) int8 ADC_GetResult8(void) 说明: 返回一个有符号的8位值。带正号的最大8位值为127,但在单端8位模式中,最大正值为255。 因此,在8位单端模式下,则应改用 ADC_GetResult16()函数。请注意如果设置ADC分辨率高 于8位,则返回LSB结果。 参数: 无 返回值: int8:最后一次ADC转换的最低有效位。 副作用: 无 int16 ADC_GetResult16(void) 说明: 返回分辨率为8至16位的转换的16位结果。如果设置的分辨率大于16位,则其返回该结果的16 个最低有效位。ADC配置为16位单端模式时,则应改用ADC_GetResult32() 函数。该函数仅 返回带正负号的16位结果,且该结果的最大正值为32767,而非65535。 参数: 无 返回值: int16:最后一次ADC转换的16位结果。 副作用: 无 int32 ADC_GetResult32(void) 说明: 返回分辨率为8到20位的转换的32位结果。 参数: 无 返回值: int32:最后一次ADC转换的结果。 副作用: 无 void ADC_SetOffset(int32 offset) 说明: 设置函数ADC_CountsTo_uVolts()、ADC_CountsTo_mVolts()和ADC_CountsTo_Volts()所用 的ADC偏移,以便在计算电压转换前,从给定读数中减去该偏移量。 参数: int32 offset:如果该输入短路或连接到相同输入电压,则该值为测量值。 返回值: 无。 副作用: 通过减去给定偏移,可影响ADC_CountsTo_uVolts()、ADC_CountsTo_mVolts()和 ADC_CountsTo_Volts()函数。 文档编号:001-88882 修订版** 页 25/48 Delta Sigma 模数转换器(ADC_DelSig) ® PSoC Creator™组件数据手册 void ADC_SetGain(int32 adcGain) 说明: 为以下电压转换函数设定每伏电压的ADC增益计数。默认情况下,该值由基准和输入范围设置 设定。该值仅可用于进一步校准具有已知输入的ADC,或仅在使用外部参考的情况下使用。 参数: int32 adcGain:每伏电压的ADC增益计数。 返回值: 无。 副作用: 通过在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和转换。 返回值: 无。 副作用: 无 int32 ADC_CountsTo_mVolts(int32 adcCounts) 说明: 将ADC输出转换为单位为mV的32位整数电压值。例如,如果测得的ADC输出为0.534 V,则 返回值为534 mV。 参数: int32 adcCounts:ADC转换的结果。 返回值: int32:以mV为单位的电压值。 副作用: 无 int32 ADC_CountsTo_uVolts(int32 adcCounts) 说明: 将ADC输出转换为单位为µV的32位整数电压值。例如,如果测得的ADC测得值为 –0.02345 V,则返回值为–23450 µV。 参数: int32 adcCounts:ADC转换的结果。 返回值: int32:以µV为单位的电压值。 副作用: 无 页 26/48 文档编号:001-88882 修订版** ® PSoC Creator™组件数据手册 Delta Sigma 模数转换器(ADC_DelSig) float ADC_CountsTo_Volts(int32 adcCounts) 说明: 将ADC输出转换为单位为V的浮点电压值。例如,如果测得的ADC输出电压为1.2345 V,则返 回值为+1.2345 V。 参数: int32 adcCounts:ADC转换的结果。 返回值: Float:最后一次ADC转换的结果。 副作用: 无 void ADC_Sleep(void) 说明: ADC_Sleep()函数用于检查组件是否已启用并保存状态。然后它调用ADC_Stop()函数,调用 ADC_SaveConfig()函数,以保存用户配置。 在调用CyPmSleep()或CyPmHibernate()函数之前调用ADC_Sleep()函数。有关功耗管理函数 的详细信息,请参考《PSoC Creator系统参考指南》。 参数: 无 返回值: 无 副作用: 注意:如果您通过CyPmSleep()函数使ADC硬件进入睡眠状态,则将其唤醒后,需执行 ADC_Start()和ADC_StartConvert(),以重启转换。 void ADC_Wakeup(void) 说明: ADC_Wakeup()函数调用ADC_RestoreConfig()函数以恢复用户配置。如果组件在调用 ADC_Sleep()函数前已启用,则ADC_Wakeup()函数将重新启用组件。 参数: 无 返回值: 无 副作用: 调用ADC_Wakeup()函数前未调用ADC_Sleep()或ADC_SaveConfig()函数可能会产生意外行 为。 void ADC_Init(void) 说明: 根据“配置”对话框设置,初始化或恢复组件参数。如果已调用ADC_Start(),则无需调用该 函数。 参数: 无 返回值: 无 副作用: 所有寄存器将复位为其初始值。这会重新初始化组件。 文档编号:001-88882 修订版** 页 27/48 Delta Sigma 模数转换器(ADC_DelSig) ® PSoC Creator™组件数据手册 void ADC_Enable(void) 说明: 启用ADC的时钟,并使其通电。 参数: 无 返回值: 无 副作用: 无 void ADC_SaveConfig(void) 说明: 此函数保存组件配置。它将保存非保存寄存器。此函数还将保存当前“配置”对话框中定义的 或通过相应API修改的组件参数值。该函数由ADC_Sleep()函数调用。 参数: 无 返回值: 无 副作用: 无。 void ADC_RestoreConfig(void) 说明: 此函数恢复组件配置。这将恢复非保留寄存器。此函数还将组件参数值恢复为调用 ADC_Sleep()函数之前的值。 参数: 无 返回值: 无 副作用: 调用此函数前未调用ADC_Sleep()或ADC_SaveConfig()函数可能会产生意外行为。 页 28/48 文档编号:001-88882 修订版** ® PSoC Creator™组件数据手册 Delta Sigma 模数转换器(ADC_DelSig) void ADC_SetCoherency(uint8 coherency) 说明: 该函数允许您更改ADC三个字结果中的哪一个将会触发连贯性解锁。直到所设置字节得到 ADC或DMA的读取,ADC的结果才会得到更新。默认LSB是连贯性字节。如果写DMA或定 制API而LSB不是所读取的最后字节,则它会使用该API来设置所读取ADC结果的最后一个 字节。如果由DMA或ARM处理器执行了多字节读取,则连贯性可以被设置到所读取最后一 个字的任何字节中。 参数: uint8 coherency:连贯性设置。下表给出了有效的连贯性值。 连贯性选项 说明 ADC_COHER_LOW LSB应该是所读取的最后一个字节。 ADC_COHER_MID 中间字节应该是所读取的最后一个字节。 ADC_COHER_HIGH MSB应该是所读取的最后一个字节。 返回值: 无 副作用: 无论何种原因,如果更改连贯性,则应将其更改回使用所提供的ADC_GetResult API时的 LSB。 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。 返回值: uint8:如果校正值不在GCOR值的范围0.00到1.9999,则将返回一个非零值。 副作用: 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) 参数: 无 返回值: uint16:规格化的GCOR值 副作用: GCOR的值取决于GVAL寄存器。如果GVAL被设置为小于15(0x0F),则GCOR值向右移动15 减去GVAL位。 文档编号:001-88882 修订版** 页 29/48 ® 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字节转换结果。 固件源代码示例 在“Find Example Project”对话框中,PSoC Creator 提供了多个样例项目,并且每个项目都包 括了原理图和样例代码。要查看特定组件实例,请打开“Component Catalog”中的对话框或者原 理图中的组件样例。要查看通用样例,请打开“Start Page”或 File 菜单中的对话框。根据要 求,可以通过使用对话框中的 Filter Options 项来限定可选的项目列表。 更多有关信息,请参考《PSoC Creator 帮助》部分中主题为“查找示例项目”的内容。 功能说明 delta-sigma 通道由以下模块构成: 高输入阻抗的前端缓冲器(含可编程的增益),不需要时,可旁路(并切断电源)。 ANAIF — 模拟接口逻辑块由输入缓冲器的寄存器控制器和调制器构成。 全差分式可编程三阶开关电容调制器。 下行数字滤波包括:一个四阶级串联积分梳状(CIC)滤波器(也称作抽取滤波器)和后期处理 引擎(cicdec4_pproc),后者在数据离开 CIC 滤波器时可选择性地执行增益、偏置和简单 FIR 滤波函数。 如不存在输入缓冲器,则开关电容输入级在每次循环时会消耗电流,以对电容进行充电。在这种 情况下,等效输入阻抗为 1/(fs × C),即 1/((3 MHz) × (5 pF)) = 66 kΩ 许多传感器应用需要采用 更高的阻抗,以得出精确的读数。因此,输入缓冲器是 delta sigma 通道的一部分。 页 30/48 文档编号:001-88882 修订版** ® 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)。 文档编号:001-88882 修订版** 页 31/48 ® PSoC Creator™组件数据手册 Delta Sigma 模数转换器(ADC_DelSig) 图 9. 开关电容 Delta Sigma 调制器结构 寄存器 采样寄存器 ADC 结果可能在 8 至 20 位分辨率之间。输出分为三个 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 输出数据采样中位寄存器) 位 页 32/48 7 6 5 4 文档编号:001-88882 修订版** ® PSoC Creator™组件数据手册 Delta Sigma 模数转换器(ADC_DelSig) 值 Data[15:8] ADC_DEC_SAMPH(ADC 输出数据采样高位寄存器) 位 7 6 5 4 值 3 2 1 0 Data[23:16] 资源 ADC_DelSig 使用抽取滤波器、Delta-Sigma 调制器以及时钟源。如果选择了外部基准或基准旁 路,则 P0[3]或 P3[2]可用于外部基准或旁路电容。 API 存储器使用 根据编译器、器件、所使用的 API 数量以及组件的配置情况,组件的内存大小也不一样。下表提 供了已给件配置中的所有 API 存储器大小。 采用按“释放”模式配置的相关编译器进行了测量,大小采用了优化设定。对于特定的设计,分 析编译器生成的映射文件后可以确定存储器的大小。 PSoC 3 (Keil_PK51) 配置 8-20位 PSoC 5 (GCC) PSoC 5LP (GCC) 闪存 SRAM 闪存 SRAM 闪存 SRAM 字节 字节 字节 字节 字节 字节 3899 15 3416 36 3040 24 PSoC 3 直流和交流电气特性 除非另有说明,否则这些规范的适用条件是-40°C ≤ TA ≤ 85 °C 且 TJ ≤ 100 °C。除非另有说明, 否则这些规范的适用范围为 1.71 V 到 5.5 V。典型值的适用条件为 TA = 25°C 工作条件: 在连续采样模式下运行 分辨率 = 16 至 20 位,则 fclk = 3.072 MHz;分辨率 = 8 至 15 位,则 fclk = 6.144 MHz 参考 = 1.024-V 的内部基准,在 P3[2]或 P0[3]上进行旁通 文档编号:001-88882 修订版** 页 33/48 ® PSoC Creator™组件数据手册 Delta Sigma 模数转换器(ADC_DelSig) 除非另有指定,否则所有图表中的值均为典型值 PSoC 3Delta-Sigma ADC 直流电规范 参数 3 说明 条件 最小 值 典型 值 最大值 单位 分辨率 8 – 20 位 通道数量,单端 _ _ GPIO数 量 _ 通道数量,差分 差分对由一对GPIO组成。 _ _ GPIO数 量/2 _ 单调性 是 – – – –__ Ge 增益误差 3 已缓冲,缓冲区增益 = 1, 输入范围 = ±1.024 V, 16位模式 _ _ ±0.2 % Gd 增益漂移 已缓冲,缓冲区增益 = 1, 输入范围 = ±1.024 V, 16位模式 _ _ 50 ppm/° C VOS 输入偏移电压 4 已缓冲 – – ±0.1 mV TCVOS ADC TC输入偏移电压 温度系数,输入偏移电压 – – 0.55 µV/°C 输入电压范围,单端 5 VSSA – VDDA V 输入电压范围,差分,未缓冲 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 总增益误差是 ADC 误差与缓冲器误差之和。 4 总偏移电压误差是缓冲器 VOS 与 ADC VOS 之和。 5 VSSA 至 6 × VBG 范围用于对 VDDA 电源进行直接测量。实际标度受限于 VDDA。 6 基于器件特性表征(未经过生产测试)。 页 34/48 文档编号:001-88882 修订版** ® PSoC Creator™组件数据手册 参数 Delta Sigma 模数转换器(ADC_DelSig) 说明 条件 最小 值 典型 值 最大值 单位 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 7 _ VEXTREF ADC外部基准输入电压 引脚P0[3]、P3[2] 0.9 _ 1.3 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 IBUFF 缓冲器电流消耗6 – – 2.5 mA 最小 值 典型 值 最大值 – – 4 – – 0.0032 – 7 _ V 电流消耗 PSoC 3 Delta-Sigma ADC 直流电规范 参数 说明 条件 启动时间 THD 总谐波失真 8 缓冲区增益 = 1、16位 范围 = ±1.024 V 单位 样品 % 20位分辨率模式 7 在 ADC 输入上使用开关电容,可建立有效输入电阻。如果增益和位数保持不变,电阻将与时钟频率成反比。此值是计算得出的 ,而非测量得出。有关更多信息,请参见《技术参考手册》。 8 基于器件特性表征(未经过生产测试)。 文档编号:001-88882 修订版** 页 35/48 ® PSoC Creator™组件数据手册 Delta Sigma 模数转换器(ADC_DelSig) 参数 说明 8 SR20 采样速率 BW20 最大采样速率时的输入带宽 8 条件 最小 值 典型 值 最大值 范围 = ±1.024 V,未缓冲 7.8 – 187 sps ,未缓冲 – 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 范围 单位 16位分辨率模式 8 SR16 采样速率 BW16 最大采样速率时的输入带宽 SINAD16int 信噪比,16位,内部基准 8 8 SINAD16ext 信噪比,16位,外部基准8 12位分辨率模式 8 SR12 采样速率,连续,高功耗 BW12 最大采样速率时的输入带宽8 范围 = ±1.024 V,未缓冲 – 44 – kHz SINAD12int 信噪比,12位,内部基准8 范围 = ±1.024 V,未缓冲 66 – – dB 范围 = ±1.024 V,未缓冲 8 – 384 ksps 8位分辨率模式 8 SR8 采样速率,连续,高功耗 BW8 最大采样速率时的输入带宽8 范围 = ±1.024 V,未缓冲 – 88 – kHz SINAD8int 信噪比,8位,内部基准8 范围 = ±1.024 V,未缓冲 43 – – dB 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 页 36/48 文档编号:001-88882 修订版** ® PSoC Creator™组件数据手册 Delta Sigma 模数转换器(ADC_DelSig) 连续 多样本 多样本加速 分辨率(位) 最小值 最大值 最小值 最大值 最小值 最大值 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 1 8 10 12 14 16 18 20 0.5 0 0.1 1 ksps 10 100 1000 Delta-sigma ADC噪声柱状图,1000件样本,20位, 187 sps,外部基准,VIN = VREF/2, 范围 = ±1.024 V 文档编号:001-88882 修订版** 0.01 0.1 1 ksps 10 100 1000 Delta-sigma ADC噪声柱状图,1000件样本,16位,48 ksps,外部基准,VIN = VREF/2, 范围 = ±1.024 V 页 37/48 Delta Sigma 模数转换器(ADC_DelSig) Delta-sigma ADC噪声柱状图,1000件样本,16位, 48 ksps,内部基准,VIN = VREF/2, 范围 = ±1.024 V 页 38/48 ® PSoC Creator™组件数据手册 Delta-Sigma ADC INL对比最大采样速率时的分辨率 文档编号:001-88882 修订版** ® 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 文档编号:001-88882 修订版** 无效操作区 页 39/48 ® 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 页 40/48 文档编号:001-88882 修订版** ® PSoC Creator™组件数据手册 Delta Sigma 模数转换器(ADC_DelSig) PSoC 5 的直流和交流电气特性 除非另有说明,否则这些规范的适用条件是-40°C ≤ TA ≤ 85 °C 且 TJ ≤ 100 °C。除非另有说明, 否则这些规范的适用范围为 2.7 V 到 5.5 V。典型值的适用条件为 TA = 25°C 工作条件: 在连续采样模式下运行 分辨率 = 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 说明 条件 通道数量,差分 差分对由一对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 增益漂移 输入偏移电压 文档编号:001-88882 修订版** 页 41/48 ® PSoC Creator™组件数据手册 Delta Sigma 模数转换器(ADC_DelSig) 参数 TCVOS 说明 温度系数,输入偏移电压 输入电压范围 9 PSRRb CMRRb 电源抑制比 — 16位9 共模抑制比,16位9 典型 值 最大值 单位 电平位移已缓冲, 缓冲器增 益 = 1,16位,范围 = ±1.024 V,VDDA < 3.6 V _ 10 _ µV/°C 未缓冲,16位,范围 = ±1.024 V _ _ 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 INL20 20位INL9 差分范围 ±1.024 V – – 32 LSB DNL20 20位DNL9 差分范围 ±1.024 V – – 1 LSB INL16 积分非线性 16位9 差分范围 ±1.024 V _ _ 2 LSB DNL16 微分非线性16位9 差分范围 ±1.024 V – – 1 LSB INL12 12位INL 9 差分范围 ±1.024 V – – 1 LSB DNL12 12位DNL 9 差分范围 ±1.024 V – – 1 LSB INL8 8位INL 9 差分范围 ±1.024 V – – 1 LSB DNL8 8位DNL 1 差分范围 ±1.024 V – – 1 LSB Rin_Buff ADC输入电阻 使用输入缓冲器 10 – – MΩ 绕过输入缓冲器, 16位,范围 = ±1.024 V _ 74 10 _ kΩ Rin_ADC_16 ADC输入电阻 9 最小 值 条件 基于器件特性表征(未经过生产测试)。 10 在 ADC 输入上使用开关电容,可建立有效输入电阻。如果增益和位数保持不变,电阻将与时钟频率成反比。此值是计算得出的 ,而非测量得出。有关更多信息,请参见《技术参考手册》。 页 42/48 文档编号:001-88882 修订版** ® PSoC Creator™组件数据手册 参数 Delta Sigma 模数转换器(ADC_DelSig) 说明 条件 绕过输入缓冲器, 12位,范围 = ±1.024 V Rin_ADC_12 ADC输入电阻 VEXTREF ADC外部基准输入电压, 引脚 P0[3]、P3[2] 另请参见电压基准规范内 部基准 最小 值 典型 值 最大值 单位 _ 148 _ kΩ 0.9 _ 1.3 V 10 电流消耗 IDD_20 电流消耗, 20位、187 sps 9 未缓冲 _ _ 4 mA IDD_16 电流消耗, 9 16位,48 ksps 未缓冲 _ _ 4 mA IDD_12 电流消耗, 12位,192 ksps 9 未缓冲 _ _ 4.5 mA IDD_8 电流消耗, 8位,384 ksps 9 未缓冲 _ _ 4.5 mA IBUFF 电流消耗, 16位,48 ksps 9 仅缓冲器 _ _ 3.5 mA 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 差分范围 ±1.024 V – 11 – kHz 条件 启动时间 THD 总谐波失真, 16位 11 未缓冲,范围 = ±1.024 V 20位分辨率模式 SR20 采样速率,20位 BW20 带宽,20位 11 11 16位分辨率模式 SR16 采样速率,16位 BW16 带宽,16位11 11 11 基于器件特性表征(未经过生产测试)。 文档编号:001-88882 修订版** 页 43/48 ® PSoC Creator™组件数据手册 Delta Sigma 模数转换器(ADC_DelSig) 参数 说明 条件 最小 值 典型 值 最大值 单位 信噪比 + 失真,16位,内部 11 基准 未缓冲,范围 = ±1.024 V 81 _ _ dB SINAD_16ext 信噪比 + 失真,16位,外部 基准11 未缓冲,范围 = ±1.024 V 84 _ _ dB SINAD16int 12位分辨率模式 SR12 采样速率,12位11 差分范围 ±1.024 V 4 – 192 ksps BW12 带宽,12位11 差分范围 ±1.024 V – 44 – kHz SINAD12int 信噪比 + 失真,12位,内部 基准11 未缓冲,范围 = ±1.024 V 66 _ _ dB SR8 采样速率,8位11 差分范围 ±1.024 V 8 – 384 ksps BW8 带宽,8位11 差分范围 ±1.024 V – 88 – kHz SINAD8int 信噪比 + 失真,8位,内部基 未缓冲,范围 = ±1.024 V 准11 43 _ _ dB 8位分辨率模式 电压基准规范 另参见 PSoC 5 PSoC 5 Delta-Sigma ADC 直流电规范中 VEXTREF 部分的 ADC 外部基准规范。 参数 VREF 说明 高精度基准电压 初始调整 最小值 典型 值 最大值 单位 1.017 (–0.7%) 1.024 – – 57 ppm/°C 长期漂移 – 100 – ppm/Khr 热循环漂移(稳定性)12 – 100 – ppm 温度漂移 12 条件 12 1.033 V (+0.9%) 基于器件特性表征(未经过生产测试)。 页 44/48 文档编号:001-88882 修订版** ® PSoC Creator™组件数据手册 Delta Sigma 模数转换器(ADC_DelSig) 组件更改 本节列出了各版本的主要组件更改内容。 版本 2.30 更改内容 更改原因/影响 使用多种配置并且ADC时钟不是由BUS时 钟派生时,需要修复有关ADC时钟分频器 设置的问题。 有关多种ADC配置中时钟分频器的设置问题 使用多种配置时,需要修复有关电荷泵时 钟分频器设置的问题 有关电荷泵时钟分频器设置的问题(使用多种ADC配置的情 况) 修复一个问题(即器件复位时),使用大 于 5.3 V 的VDDA值来使能ADC的参考 使能ADC的参考时,器件将复位 使用多种配置时,修复有关参考缓冲区设 置的问题 使用多种ADC配置时,参考缓冲区设置是错误的。 向.cyre文件中包括的所有API添加了 CYREENTRANT关键词。 并非所有API都是真正可重入的。组件API源文件中的注释指 出了适用的函数。 需要此更改为采用安全方式使用并且不是可重入函数消除编 译器警告:通过标志或关键节防止并发调用。 添加了支持PSoC 5LP芯片。 更新了数据手册中的图4. Delta Sigma ADC I/O特性。 修复图4中的问题。 更新了SetBufferGain() API的说明 更新了使用缓冲器增益的副作用。 在参考参数说明章节中,添加了有关使用 ADC内部参考的注释。 SAR和DelSig ADC都使用内部参考。 更新了ADC_IsEndConversion() API的其 他影响的内容。 更新了同时使用DMA和ADC_IsEndConversion() API的其他 影响。 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更改 文档编号:001-88882 修订版** 当配合PSoC 5使用时,为防止组件停止时影响无关模拟信 号,所需的更改。 页 45/48 ® PSoC Creator™组件数据手册 Delta Sigma 模数转换器(ADC_DelSig) 版本 更改内容 更改原因/影响 根据ADC时钟频率对ADC功率设置所作更 改 用于优化ADC部件的功率使用。 解决了一个ADC_SelectConfiguration() API问题。 现在可以实现预期的调用ADC_SelectConfiguration() API而 不调用ADC_Start()。 向数据手册中添加了PSoC 5特性数据 用实型数据更新了数据手册中的占位符图 2.10 外部电荷泵时钟是默认选项,用户不能选 择。 ADC现在可一直使用外部电荷泵时钟,而不用内部时钟。这 是为了保证最佳的电荷泵时钟频率,以最大化ADC的性能。 两个差分输入范围 这些输入范围在其名称上存在错误。 ±0.128 V(–输入 ± Vref/8) ±0.064 V(–输入 ± Vref/16) 注意: 名称发生变化。 当使用ADC_DelSig 2.10版更新所用版本比2.0更低的现有项 目时,可能会导致参数评估故障的错误信息。 要解决此问题,请打开“配置”对话框,然后切换输入模式 的选择。单击OK(确定)关闭对话框,然后构建项目。 添加了两个新的基准选项:内部VDDA/4和 内部VDDA/3. PSoC3 ADC的基准输入范围较窄:0.9 V至1.3 V。这可能会 导致在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输出寄 存器。 向数据手册中添加了特性数据 对数据表进行了少量编辑和更新 页 46/48 文档编号:001-88882 修订版** ® PSoC Creator™组件数据手册 版本 2.0 更改内容 Delta Sigma 模数转换器(ADC_DelSig) 更改原因/影响 更改了Input Range(输入范围)参数:添 当更新使用ADC_DelSig 2.0版的现有项目时,可能会导致参 加了4个新的输入范围: 数评估失败的错误信息。 Vssa至6*Vref ±6.144 V(–输入 ± 6*Vref) 要解决此问题,请打开“配置”对话框,然后切换输入模式 的选择。单击OK(确定)关闭对话框,然后构建项目。 ±0.125 V(–输入 ± Vref/8) ±0.0625 V(–输入 ± Vref/16) 注意 此更改可能将破坏现有设计。 进行了更新,以支持PSoC 3 ES2或更高 版本,及PSoC 5或更高版本。 此版本支持PSoC 3 ES2或更高版本,及PSoC 5或更高版 本。与更高版本的芯片一同使用时,更低版本的组件将显示 错误信息。 添加了睡眠/唤醒和初始化/启用API。 为支持低功耗模式并提供常用接口,以单独控制大多数器件 的初始化和使能。 添加了新参数:输入模式和缓冲器模式。 这些新参数在更低版本的ADC_DelSig组件中不存在。当更新 删除了Power(功耗)参数,并添加了新 至组件的2.0版本时,新参数为给定的默认值。输入模式参数 的默认值为“差分”。输入模式参数驱动输入范围的选择。 的Conversion Mode(转换模式)— “Single Sample(单样本采样)”模式。 因此,之前配置了“单端”Input Range(输入范围)的已更 新组件将获得“Differential(差分)”的默认值。 向组件中添加了DMA功能文件。 此文件允许ADC_DelSig在PSoC Creator中受DMA向导工具 的支持。 向API中添加了Keil功能重新进入支持。 添加此功能,以便使客户能够指定哪一生成函数可重新进 入。 编辑了“配置”对话框。 使得电压基准参数可编辑。 添加了不同的配置,以支持在运行时更改配置。 对话框使您能够在选择了VSSA至VDDA输入范围时修改电压 值。 所选输入范围的设置值已纳入ADC实现。 设置值将用于调整Decimator(抽取滤波器)增益,以提高 ADC的性能。 向头文件中添加了常数,以便于使用。 ADC组件现在拥有常数,例如,使用的基准、设置的增益、 使用的模式、使用的采样速率等,这样您便可以在应用中使 用这些常数。 向ADC DelSig组件中添加了新的可选连接 这可用于将调制器的-ve输入连接至AGL6。 根据时钟频率,已启用电荷泵功耗设置。 文档编号:001-88882 修订版** 8位ADC范围存在问题。此问题是由于没有参照DSM_CR16 寄存器中的ADC时钟来设置电荷泵的功耗设置位而造成的。 对ADC代码进行了修改,以根据ADC时钟频率来设置这些 位。 页 47/48 Delta Sigma 模数转换器(ADC_DelSig) 版本 更改内容 删除了SetPower API。 ® PSoC Creator™组件数据手册 更改原因/影响 SetPower API是一个不再有用的API。特意将其删除是因为 其没有提供任何价值。如果您的代码中有此功能,您需要将 其删除。 © 赛普拉斯半导体公司,2013。此处所包含的信息可能会随时更改,恕不另行通知。除赛普拉斯产品的内嵌电路之外,赛普拉斯半导体公司不对任何其他电路的使用承担任何责任。也不根据专利 或其他权利以明示或暗示的方式授予任何许可。除非与赛普拉斯签订明确的书面协议,否则赛普拉斯产品不保证能够用于或适用于医疗、生命支持、救生、关键控制或安全应用领域。此外,对于 可能发生运转异常和故障并对用户造成严重伤害的生命支持系统,赛普拉斯不授权将其产品用作此类系统的关键器件。若将赛普拉斯产品用于生命支持系统中,则表示制造商将承担因此类使用而 招致的所有风险,并确保赛普拉斯免于因此而受到任何指控。 PSoC®是赛普拉斯半导体公司的注册商标,PSoC Creator™和 Programmable System-on-Chip™是赛普拉斯半导体公司的商标。此处引用的所有其他商标或注册商标归其各自所有者所有。 所有源代码(软件和/或固件)均归赛普拉斯半导体公司(赛普拉斯)所有,并受全球专利法规(美国和美国以外的专利法规)、美国版权法以及国际条约规定的保护和约束。赛普拉斯据此向获许 可者授予适用于个人的、非独占性、不可转让的许可,用以复制、使用、修改、创建赛普拉斯源代码的派生作品、编译赛普拉斯源代码和派生作品,并且其目的只能是创建自定义软件和/或固件, 以支持获许可者仅将其获得的产品依照适用协议规定的方式与赛普拉斯集成电路配合使用。除上述指定的用途之外,未经赛普拉斯的明确书面许可,不得对此类源代码进行任何复制、修改、转 换、编译或演示。 免责声明:赛普拉斯不针对此材料提供任何类型的明示或暗示保证,包括(但不仅限于)针对特定用途的适销性和适用性的暗示保证。赛普拉斯保留在不做出通知的情况下对此处所述材料进行更 改的权利。赛普拉斯不对此处所述之任何产品或电路的应用或使用承担任何责任。对于可能发生运转异常和故障并对用户造成严重伤害的生命支持系统,赛普拉斯不授权将其产品用作此类系统的 关键器件。若将赛普拉斯产品用于生命支持系统中,则表示制造商将承担因此类使用而招致的所有风险,并确保赛普拉斯免于因此而受到任何指控。 产品使用可能受适用的赛普拉斯软件许可协议限制。 页 48/48 文档编号:001-88882 修订版**