® PSoC Creator™ Component Datasheet 功耗监控器 1.50 特性 最高可连接 32 个直流-直流电源转换器 使用 DelSig-ADC 测量电源转换器的输出电压以及负载电流 监控电源转换器的正常运行,根据用户所定义的阈值生成警报和故 障信息 支持测量系统中的其他辅助电压 支持 3.3 V 和 5 V 的芯片供电电源 概述 电源转换器电压测量 对于电源转换器电压测量,可将 ADC 配置为单端模式(0 至 4.096 V 的量程,或者 0 至 2.048 V 的 量程)。还可以将 ADC 配置为差分模式(±2.048 V 量程),以便支持远程感应电压,其中,远程 参考接地通过 PCB 走线返回 PSoC。假如要监控的模拟电压不低于 Vdda 或 ADC 量程,建议使用 外部电阻分频器,将所监控电压降至合适范围。 电源转换器电流测量 对于电源转换器负载电流的测量,可将 ADC 配置为差分模式(+/-64 mV 或+/-128 mV 量程),以 支持对电源转换器输出上高侧串联分流电阻两端进行电压测量。固件 API 根据所使用的外部电阻组 件值将测得的差分电压转换为等效电流。还能将 ADC 配置为单端模式(与所选择的电压测量的量 程相匹配),以支持其连接外部电流检测放大器 (CSA),将分流电阻两端的差分电压降转换为 单端电压;或支持集成了相似功能的电源转换器或热插拔控制器。 辅助电压测量 ADC 最多可连接 4 个辅助输入电压,用以测量其他系统输入。可将 ADC 配置为单端模式(与所选 择的单端电压测量的量程相匹配:0-4.096 V / 0-2.048 V) 或差分模式(+/-2.048 V 或与所选择的 电流测量的量程相匹配:+/-64 mV / +/-128 mV),以测量辅助输入电压。 赛普拉斯半导体公司• 198 Champion Court • San Jose,CA 95134-1709 • 408-943-2600 Document Number: 001-88517 Rev. *B 修订日期:October 22, 2013 Power Monitor ® PSoC Creator™ Component Datasheet ADC 顺序扫描 如果使能,ADC 将按顺序扫描所有电源转换器和辅助输入,以循环方式取得电压测量值和负载电 流测量值。该组件将测量系统中所有电源转换器的电压,但配置后,可以从一部分电源转换器测量 电流 — 完全不含任何电流测量值。这样将尽量减少所必需 IO 的数量,并缩短整个 ADC 扫描时 间。 该组件需要对 PSoC 外部的组件有一定了解,原因有两个: 输入电压比例系数,输入电压已经衰减,以满足 IO 输入范围限值,或在适用情况下 ADC 的动 态范围限值 电流测量值比例系数(串联电阻、串联电感或 CSA 增益等等) 组件使用情况 下面的框图显示的是电源转换器的连接方法(该电源转换器的输出电压小于 Vdda)。电压检测点 和电流检测点取自检测电阻的一端,并能够直接连接到该组件。 下面的框图显示的是电源转换器的连接方法(该电源转换器的输出电压大于 Vdda)。需要一个外 部电流检测放大器 (CSA),将检测电阻两端的差分电压转换为一个直接连接该组件的单端电 压。电压检测点的电压被降至一个可以直接连接该组件的电压电平。 页 2/40 Document Number: 001-88517 Rev. *B ® PSoC Creator™ Component Datasheet Power Monitor 下面的框图显示的是远程电源转换器的连接方法,其输出电压低于 2.048 V,远程电压检测点及远 程接地参考都回接到该组件。 下图显示的是远程电源转换器的连接方法,其输出电压大于 Vdda,远程电压检测点使用电阻来降 低电压,并同远程接地参考一起回接到该组件。 输入/输出连接 本节介绍的是功耗监控器的各种输入和输出连接。I/O 列表中的星号(*)表示 I/O 可能在某种 SAR ADC 配置中被隐藏。 时钟 — 数字输入 时钟输入信号被用于驱动所有的数字输出信号。该时钟所使用的最高频率为 66 MHz。 cal — 模拟输入* “cal”输入校准电压,用于对 64 mV 或 128 mVADC 差分电压量程设定进行校准。该信号是可选 的输入连接。当“cal”引脚出现时,会自动进行 POR 校准,作为 PowerMonitor_Start() API 的一 Document Number: 001-88517 Rev. *B 页 3/40 Power Monitor ® PSoC Creator™ Component Datasheet 部分,对 64 mV 或 128 mVADC 差分电压量程进行校准。后续如果需要在运行时间进行校准,应 使用 PowerMonitor_Calibrate() API。 注意:给该引脚提供的输入电压不应超过所使用 ADC 差分量程(64 mV 量程或 128 mV 量程)的 100%。 v[x] — 模拟输入 v[x]是连接电源转换器输出电压的模拟输入,通过它们的负载可见输出电压大小。它可以是与电源 转换器输出的直接连接,也可以是使用外部定标电阻的经过降压的版本。每一电源转换器都将使能 电压测量。组件最多支持 32 个电压输入端引脚,未使用的端被隐藏。 i[x] — 模拟输入* i[x]是一些模拟输入,使该组件能测量电源转换器负载电流。既可以是分流电阻两端及对应 v[x]输入 的差分电压测量,也可以是与外部 CSA 的单端连接。对某个电源转换器进行电流测量是可选项。 在组件用户定制器中选择针对某一电源转换器的差分 v[x]电压测量时,针对该电源转换器的电流测 量被禁用,以便限制该组件所使用的 IO 数量。在这种情况下,i[x]由 rtn[x]端所取代,表示差分电 压测量返回路径。 该组件最多支持 24 个电流输入端,未用端则被隐藏。这些端与相关 rtn[x]输入子是互斥的。 rtn[x] — 模拟输入* rtn[x]模拟输入连接到物理上接近电源转换器的接地基准点。只有在组件用户定制器中对该电源转换 器使能了差分电压检测时,才揭示出这些端。这些端与相关的“i[x]”输入端是互斥的。未用的引 脚被隐藏。 aux[x] — 模拟输入* 由于本组件嵌入了唯一可用的 DelSigADC 转换器,aux[x] 模拟输入使用户能够连接其他辅助电压 输入,以实现由 ADC 进行测量。最多可用 4 个辅助输入端,如果组件用户自定义未使能辅助输入 电压监控,则这些端将被隐藏。 aux_rtn[x] — 模拟输入* 这些模拟输入可连接到辅助输入电压接地基准点。最多可用 4 个 aux_rtn[x]端。如果在组件用户定 制器未使能辅助输入差分电压监控,则这些端将被隐藏。 eoc — 输出 该数字输出信号是一个时钟周期宽度的高电平有效脉冲,表示 ADC 对该电流采样集的转换已完 成。用户可以指定在每次 ADC 测量后,还是只在一次测量后(当一个样本已被采取自每一个模拟 页 4/40 Document Number: 001-88517 Rev. *B ® PSoC Creator™ Component Datasheet Power Monitor 输入,如:电压、电流和辅助),将确认该脉冲。用户可以利用该信号生成针对具体应用程序的对 MCU 内核的中断,或驱动其原理图上的其他硬件。一个简单的实例可以是,将其简单地连接到一 个引脚,测量所有输入的 ADC 更新率。另一个实例可以是,一旦采集了全部采样,将使用该信号 运行定制固件滤波算法。 pgood — 输出 当所有电源转换器电压和电流(如果经测量)处于用户指定的工作范围内,则该数字输出端被驱动 为高电平有效。用户能够遮挡单个电源转换器,使其不参与 pgood 输出的产生。在用户自定义中有 一个选项,使该端成为总线,揭示每一转换器的单个 pgood 状态输出。 警告 — 输出* 当一个或多个电源转换器电压或电流(如果经测量)超出了用户指定标称量程、但尚未达到可被视 为故障状态的程度,则该数字输出端被驱动至高电平有效。警报引脚是“sticky”(粘滞)(它锁 存 HIGH),直到调用相关的各个 API 为止。为了清除警告引脚,如有需要,请调用: PowerMonitor_GetUVWarnStatus()、PowerMonitor_GetOVWarnStatus()以及 PowerMonitor_GetOCWarnStatus()。如果用户不使能组件定制器中的任何警报源,则该端将被隐 藏。 故障 — 输出* 当一个或多个电源转换器电压或电流(如果经测量)超出了用户指定标称量程、并达到了可被视为 故障状态的程度,则该数字输出端被驱动至高电平有效。故障引脚是“sticky”(粘滞)(它锁存 HIGH),直到调用相关的各个 API 为止。为了清除故障引脚,如有需要,请调用: PowerMonitor_GetUVFaultStatus()、PowerMonitor_GetOVFaultStatus()以及 PowerMonitor_GetOCFaultStatus()。如果用户不使能组件定制器中的任何故障源,该端将被隐 藏。 模拟输入引脚分配的注意事项 如果需要进行手动模拟引脚分配,从而简化 PCB 布局,本组件用户需对 PSoC 3 中可用的模拟走 线资源有一定的鉴别,以便做出合适的选择。PSoC 3《技术参考手册》第 32.2 节中对模拟路由资 源进行了详细说明。该手册中的图 32.1 介绍了模拟布线通道以及 GPIO 端口的“左侧”与“右 侧”概念。图 32.2 显示了详细的模拟子系统平面布置图,包括模拟硬件块,特别是 DelSigADC, 以及所有可用的模拟布线通道。 以下是与 ADC 有关布线资源的总结: 任何 GPIO 输入都可以连接到 DelSigADC 的正端。 Document Number: 001-88517 Rev. *B 页 5/40 Power Monitor ® PSoC Creator™ Component Datasheet 给定端口内只有奇数端口引脚(如:P0[1,3,5,7]、P1[1,3,5,7]等等)才能够连接到 DelSigADC 的负端。 有鉴于此,想要手动分配引脚的此组件用户应遵守该程序,以确保可布线设计: 尽量先将 rtn[x], Direct i[x]、aux_rtn[x]分配给左侧的奇数端口引脚: P0[1,3,5,7]、P2[1,3,5,7]、P4[1,3,5,7]、 P6[1,3,5,7]、 P15[5] 然后将剩余的 rtn[x]、Direct i[x], aux_rtn[x]分配给右侧的奇数端口引脚: P3[1,3,5,7]、P5[1,3,5,7]、P15[1,3]、P1[1,3,5,7] 尽量先将 v[x]、aux[x]、CSA i[x]分配给左侧的奇数端口引脚: P0[0,2,4,6]、P2[0,2,4,6]、P4[0,2,4,6]、P6[0,2,4,6]、P15[4] 然后将剩余的 v[x]、aux[x]、CSA i[x]分配给右侧的偶数端口引脚: P3[0,2,4,6]、P5[0,2,4,6]、P15[0,2]、P1[0,2,4,6] 为达到最佳性能,需要考虑以下事项: 所有 P1[x]引脚应作为最后的解决办法使用,因为该端口包含了 JTAG 和 SWD 编程引脚,如果 用户意图将使这些引脚用于数字程序/测试及模拟电压测量,则需要在他们的 PCB 设计中将这 一点考虑进去。 在走线相关差分信号时,要将它们紧挨彼此置于相邻引脚 例如:v[x]=P0[0]、rtn[x]=P0[1]或 aux[x]=P4[4]、aux_rtn[x]=P4[5] 页 6/40 Document Number: 001-88517 Rev. *B ® PSoC Creator™ Component Datasheet Power Monitor 原理图宏信息 功耗监控器组件实现包括下列 3 个宏: 功耗监控器 — 8 通道 该宏支持 8 个单端电压输入以及 8 个电流输入。“pgood”被配置作为一位逻辑电平输出,它反映 系统的电源良好状态。 Document Number: 001-88517 Rev. *B 页 7/40 Power Monitor ® PSoC Creator™ Component Datasheet 功耗监控器 — 16 通道 很多现成的功耗监控器 ASSP 支持 16 个二次电源转换器提供该宏是为了使用户能够快速地复制这 一功能。它测量 16 个单端电压输入和 16 个电流输入,从而支持 16 个二次电源转换器。“pgood ”被配置作为一位逻辑电平输出,它反映系统的电源良好状态。 页 8/40 Document Number: 001-88517 Rev. *B ® PSoC Creator™ Component Datasheet Power Monitor 功耗监控器 — 32 通道 提供该宏是为了使设计师能够建立支持业内通道的最大数量的平台解决方案。该宏支持 32 个单端 电压输入以及 16 个电流输入。“pgood”被配置作为一位逻辑电平输出,它反映系统的电源良好 状态。 Document Number: 001-88517 Rev. *B 页 9/40 Power Monitor ® PSoC Creator™ Component Datasheet 组件参数 将功耗监控器拖入设计中,双击该组件,打开 “Configure”对话框。该对话框包含四个选项卡。 General 选项卡 Load configuration(加载配置) 从某个外部文件恢复所有定制器设置,包括各表。键盘快捷方式 — [Ctrl] [L] Save configuration(保存配置) 存储到某个外部文件中的所有定制器设置,包括各表。键盘快捷方式 — [Ctrl] [S] Number of converters(转换器数) 该参数用于确定要监控的转换器的数量。支持的转换器的数量范围为 1 至 32。默认将转换器数量 设置为 8。 Number of auxiliary channels (辅助通道数量) 该参数确定要测量的辅助电压源的个数。受支持的辅助电压源的最大数量为 4。默认值为 0。 页 10/40 Document Number: 001-88517 Rev. *B ® PSoC Creator™ Component Datasheet Power Monitor Pgood terminal(Pgood 终端) 该参数确定要将 pgood 输出端显示为 bus(总线)端,还是 single(单独)的输出端。如果该参 数被设置为 Individual,则“pgood” 输出端显示为总线。如果参数设为 Global,则“pgood”端 为单端。 EOC configuration(EOC 配置) 该参数确定何时激活 eoc 端。如果将该参数设置为 Complete Cycle,当某个样本是取自于某个模 拟输入时,将在 eoc 端上确认脉冲一次。如果该参数被设置为 Per Sample,将在每次 ADC 测量 后确认该脉冲。 Expose calibration(揭示校准) 该复选框可用于在校准+/-64 mV 或+/-128 mVADC 量程中,以揭示“cal”输入模拟引脚。该选项 默认为 checked(选中)。 Voltage filtering type(电压过滤类型) 该参数可用于设置应用于电源转换器输出电压测量的滤波器类型。平均值按移动平均计算,每一次 扫描产生一个新的平均值,该平均为前 N 次扫描的平均值。支持的平均滤波器有 None、4 Average、8 Average、16 Average、32 Average。 Auxiliary voltage filtering type(辅助电压过滤类型) 功耗监控器组件支持电源转换器电压和/或负载电流读数的平均。该参数可用于设置应用于辅助电 压测量的滤波器类型。平均值按移动平均计算,每一次扫描产生一个新的平均值,该平均为前 N 次 扫描的平均值。支持的平均滤波器有 None、4 Average、8 Average、16 Average、32 Average。 Voltage sensing ADC range(ADC 电压检测流程) 该参数可用于选择 ADC 上单端电压测量值以及单端辅助电压测量值的量程。可用的选项有 0-4.096 V Range 和 0-2.048 V Range。 Voltage sensing ADC buffer mode(电压检测 ADC 缓冲器模式) 该参数选择 ADC 输入缓冲器模式。欲了解更多有关缓冲器模式的说明,请参考 DelSigADC 的数据 手册。该设置只影响电压测量的量程。可用的选项有 Bypass Buffer 和 Level Shift。 Document Number: 001-88517 Rev. *B 页 11/40 Power Monitor ® PSoC Creator™ Component Datasheet Current filtering type(电流过滤类型) 该参数可用于设置应用于电源转换器负载电流测量的滤波器类型。平均值按移动平均计算,每一次 扫描产生一个新的平均值,该平均为前 N 次扫描的平均值。支持的平均滤波器有 None、4 Average、8 Average、16 Average、32 Average。 Current sensing ADC range(ADC 电流检测量程) 该参数可用于选择 ADC 上差分电流测量值和低档辅助电压测量值的量程。可用的选项有+/-64 mV Range 和+/-128 mV Range。 Fault sources(故障源) 这一列复选框可用于设置过流(OC)、欠压(UV)和过压(OV)故障源。该设置适用于所有配 置的电源转换器。 Warning sources(警报源) 这一列复选框可用于设置过流(OC)、欠压(UV)和过压(OV)警报源。该设置适用于所有配 置的电源转换器。 Power Converter Voltages 选项卡 它使用户能够描述系统中的电源转换器电压。下图显示的是电压选项卡,其中将“General”选项 卡上的“Number of converters”(转换器数量)设为 8。 页 12/40 Document Number: 001-88517 Rev. *B ® PSoC Creator™ Component Datasheet Power Monitor Import table(向表导入) 将数据从文件导入到工作选项卡上的表格单元格。支持“.csv”文件格式。键盘快捷方式 — [Ctrl] [M] Export table(从表导出) 将数据从工作选项卡上的表格单元格导出文件。支持“.csv”文件格式。键盘快捷方式 — [Ctrl] [R]。 Import all(全部导入) 执行所有三个表格的导入功能。键盘快捷方式 — [Ctrl] [Alt] [M] Export all (全部导出) 执行所有三个表格的导出功能。键盘快捷方式 — [Ctrl] [Alt] [R]。 参数: Name — 它是一个文本字段,给出了电源转换器的名称。仅用于注释。允许的最多字符数是 16。默认该字段填充的名称为“Converter x”。 Nominal Voltage — 它是转换器标称输出电压。仅用于注释。额定电压的量程为 0.001 65.535 V。默认情况下,填充该字段的值为 2.25。 Voltage measurement type — 该参数确定电源转换器电压测量值的类型。选项为 Single Ended 或 Differential。如果选择 Differential 选项,则电源转换器放弃电流测量。此时,符号 将显示名为“rtn”的端,可将其连接到接地参考点来测量差分电压。 UV fault threshold — 该参数用于设置指定电源转换器的欠压(UV)故障阈值。允许的故障阈 值范围为 0.001-65.535 V。默认情况下,组件将使用该阈值范围。使用所提供的 API,用户可 以在运行时间更改欠压故障阈值。更多信息,请参考 API 部分。 UV warning threshold — 该参数用于设置指定电源转换器的欠压(UV)警报阈值。允许的警 报阈值范围为 0.001-65.535 V。默认情况下,组件将使用该阈值范围。使用所提供的 API,用 户可以在运行时间更改欠压警报阈值。更多信息,请参考 API 部分。 OV warning threshold — 该参数用于设置指定电源转换器的过压(OV)警报阈值。允许的警 报阈值范围为 0.001-65.535 V。默认情况下,组件将使用该阈值范围。通过使用所提供的 API,用户可以在运行时间更改过压警报阈值。更多信息,请参考 API 部分。 OV fault threshold — 该参数用于设置指定电源转换器的过压(OV)故障阈值。允许的故障阈 值范围为 0.001-65.535 V。默认情况下,组件将使用该阈值范围。通过使用所提供的 API,用 户可以在运行时间更改过压故障阈值。更多信息,请参考 API 部分。 Document Number: 001-88517 Rev. *B 页 13/40 Power Monitor ® PSoC Creator™ Component Datasheet Input scaling factor — 该参数设置指定电源转换器的输入电压比例系数。该比例系数给出适 用于 PSoC 外部转换器输出电压的衰减量。允许的范围是 0.001- 1.000。默认值为 1.000。 Power Converter Currents 选项卡 该选项卡使用户能描述系统中的电源转换器负载电流。下图显示了电流选项卡,其中将“General ”选项卡上的“Number of converters”(转换器数量)设置为 8。 参数: 该选项卡很多方面继承了 Power Converter Voltages 选项卡的特性。下面是受影响的参数: Name 列中显示的是输入 Power Converter Voltages 选项卡的参数,用以进行前向传播。 Nominal voltage 列中显示的是输入 Power Converter Voltages 选项卡的参数,用以进行前 向传播。 任何转换器如果在“Power Converter Voltages”选项卡中将“Voltage measurement type”设置 为“Differential”,均将失去测量电流的功能。表格中相应的行会变灰,而“Current measurement type”(电流测量类型)列条目将被设为“None”。 Current measurement type — 该参数设置指定电源转换器的电流测量类型。选项下有 None、Direct 和 CSA 可选项。 OC warning threshold — 该参数设置过流(OC)警报阈值。如果对应的 Current measurement type 被设置为 None,则该条目将变灰。 页 14/40 Document Number: 001-88517 Rev. *B ® PSoC Creator™ Component Datasheet Power Monitor OC fault threshold — 该参数设置过流(OC) 故障阈值。如果对应的 Current measurement type 被设置为 None,则该条目将变灰。 Shunt resistor value — 该参数设置分流电阻的值。允许的范围是 0.01 – 2500.00 mΩ。如果 对应的 Current measurement type 被设置为 None,则该条目将变灰。 CSA gain — 该参数设置 CSA 差分 - 单端增益。允许的范围是 1.00 – 500.00。如果对应的 Current measurement type 被设置为 None 或 Direct, 则该条目将变灰。 Auxiliary Voltages 选项卡 “Auxiliary Voltages”(辅助电压)选项卡使用户能够描述系统中的辅助电压输入。该选项卡上显 示的行数量,取决于输入“General”选项卡中的辅助通道的数量。 参数: Aux input name — 它是一个文本字段,用以指出辅助通道的名称。仅用于注释。默认情况 下,该字段为空白的。 Voltage measurement type — 该参数选择辅助电压测量值的类型。包含的选项为: “Single Ended: 0-4.096 V”或“Single Ended: 0-2.048 V”,取决于在“General”选 项卡中所设置的 ADC 电压检测量程参数。 “Differential: +/- 2.048 V” “Differential: +/- 64 mV”或“Differential: +/- 128 mV”,取决于在“General”选项卡 中所设置的 ADC 电压检测量程参数。 Document Number: 001-88517 Rev. *B 页 15/40 ® Power Monitor PSoC Creator™ Component Datasheet 应用编程接口 通过应用编程接口(API),您可以使用软件对组件进行配置。下表列出了每个函数的接口,并对 它们进行了说明。以下各节将更详细地介绍每个函数。 默认情况下,PSoC Creator 将实例名“PowerMonitor_1”分配给指定设计中组件的第一个实例。 您可以将其重新命名为符合标识符语法规则的任何唯一值。实例名称会成为每个全局函数名称、变 量和常量符号的前缀。为达到更好的可读性,下表中使用的实例名为“PowerMonitor”。 注意:在使用 PSoC3 silicon 时,应创建一个“Keil .cyre”重入文件,并向该文件添加 CyIntSetVector()、CyIntSetPriority()、PowerMonitor_PM_AMux_Current_Unset()和 PowerMonitor_PM_AMux_Voltage_Unset()等 API,以避免在进行项目编译过程中出现与重入相关 的警报。 函数 说明 PowerMonitor_Start() 使用默认定制器各值初始化功耗监控器。 PowerMonitor_Stop () 禁用该组件。ADC采样停止。 PowerMonitor_Init() 初始化组件。包括自校准运行。 PowerMonitor_Enable() 使能组件内的硬件模块,并开始扫描。 PowerMonitor_EnableFault() 使能故障信号生成。 PowerMonitor_DisableFault() 禁用故障信号生成。 PowerMonitor_SetFaultMode() 配置来自组件的故障源。 PowerMonitor_GetFaultMode() 返回已使能的来自组件的故障源。 PowerMonitor_SetFaultMask() 使能或禁用通过掩码来自各电源转换器的故障。 PowerMonitor_GetFaultMask() 返回各电源转换器的故障掩码状态。 PowerMonitor_GetFaultSource() 返回挂起的来自组件的故障源。 PowerMonitor_GetOVFaultStatus() 返回各电源转换器的过压故障状态。无论故障掩码如何,均报告状态。 PowerMonitor_GetUVFaultStatus() 返回各电源转换器的欠压故障状态。无论故障掩码如何,均报告状态。 PowerMonitor_GetOCFaultStatus() 返回各电源转换器的过流故障状态。无论故障掩码如何,均报告状态。 PowerMonitor_EnableWarn() 使能警报信号生成。 PowerMonitor_DisableWarn() 禁用警报信号生成。 PowerMonitor_SetWarnMode() 配置来自组件的警报源。 PowerMonitor_GetWarnMode() 返回来自组件的已使能的警报源。 PowerMonitor_SetWarnMask() 通过掩码使能或禁用来自各电源转换器的警报。 PowerMonitor_GetWarnMask() 返回各电源转换器的警报掩码状态。 页 16/40 Document Number: 001-88517 Rev. *B ® Power Monitor PSoC Creator™ Component Datasheet 函数 说明 PowerMonitor_GetWarnSource() 返回来自组件的挂起的警报源。 PowerMonitor_GetOVWarnStatus() 返回各电源转换器的过压警报状态。无论警报掩码如何,均报告状态。 PowerMonitor_GetUVWarnStatus() 返回各电源转换器的欠压警报状态。无论警报掩码如何,均报告状态。 PowerMonitor_GetOCWarnStatus() 返回各电源转换器的过流警报状态。无论警报掩码如何,均报告状态。 PowerMonitor_SetUVWarnThreshold() 设定指定电源转换器的电源转换器欠压警报阈值。 PowerMonitor_GetUVWarnThreshold() 返回指定电源转换器的电源转换器欠压警报阈值。 PowerMonitor_SetOVWarnThreshold() 设定指定电源转换器的电源转换器过压警报阈值。 PowerMonitor_GetOVWarnThreshold() 返回指定电源转换器的电源转换器过压警报阈值。 PowerMonitor_SetUVFaultThreshold() 设定指定电源转换器的电源转换器欠压故障阈值。 PowerMonitor_GetUVFaultThreshold() 返回指定电源转换器的电源转换器欠压故障阈值。 PowerMonitor_GetOVFaultThreshold() 设定指定电源转换器的电源转换器过压故障阈值。 PowerMonitor_GetOVFaultThreshold() 返回指定电源转换器的电源转换器过压故障阈值。 PowerMonitor_SetOCWarnThreshold() 设定指定电源转换器的电源转换器过流警报阈值。 PowerMonitor_GetOCWarnThreshold() 返回指定电源转换器的电源转换器过流警报阈值。 PowerMonitor_SetOCFaultThreshold() 设定指定电源转换器的电源转换器过流故障阈值。 PowerMonitor_GetOCFaultThreshold() 返回指定电源转换器的电源转换器过流故障阈值。 PowerMonitor_GetConverterVoltage() 返回指定电源转换器的电源转换器输出电压。 PowerMonitor_GetConverterCurrent() 返回指定电源转换器的电源转换器负载电流。 PowerMonitor_GetAuxiliaryVoltage() 返回辅助输入的电压。 PowerMonitor_Calibrate() 校准各范围设置的ADC。 PowerMonitor_SetAuxiliarySampleMode 设定选中辅助输入的ADC采样模式。 () PowerMonitor_GetAuxiliarySampleMode 返回选中辅助输入的ADC采样模式。 () PowerMonitor_RequestAuxiliarySample( 请求并返回一个单一的未经过滤的按需采样结果(该结果由指定的辅助输 ) 入产生)。 全局变量 变量 PowerMonitor_initVar Document Number: 001-88517 Rev. *B 说明 该全局变量用于显示“PowerMonitor”是否已经被初始化。 页 17/40 ® Power Monitor PSoC Creator™ Component Datasheet 变量 说明 PowerMonitor_initThreshold 该全局变量用于显示“PowerMonitor”阈值范围是否已经被初始化。请参考 “PowerMonitor”组件的数据手册,了解更详细的说明。 PowerMonitor_iirInit 该全局变量用于显示“PowerMonitor”校准滤波器是否已经被初始化。请参 考“PowerMonitor”组件的数据手册,了解更详细的说明。 PowerMonitor_warnWin 该结构变量用于保持用户所提供的各电源转换器的过压、欠压和过流警报阈 值。 PowerMonitor_faultWin 该结构变量用于保持用户所提供的各电源转换器的过压、欠压和过流故障阈 值。 PowerMonitor_adcConvNow 该全局变量显示正在进行转换的电源转换器。 PowerMonitor_adcConvNext 该全局变量显示预定进行下一次转换的电源转换器。 PowerMonitor_adcConvNextPreCal 如有要求,该全局变量在切换到校准过程之前保持下一个转换器编号。 PowerMonitor_adcConvCallType 显示正在进行的校准类型。 PowerMonitor_faultMask 保持各电源转换器的故障掩码值。 PowerMonitor_warnMask 保持各电源转换器的警报掩码值。 PowerMonitor_faultEnable 保持组件的故障使能/禁用状态。 PowerMonitor_warnEnable 保持组件的警报使能/禁用状态。 PowerMonitor_warnSources 保持为组件设定的警报源。 PowerMonitor_faultSources 保持为组件设定的警报源。 PowerMonitor_OVWarnStatus 保持各电源转换器的过压警报状态。 PowerMonitor_UVWarnStatus 保持各电源转换器的欠压警报状态。 PowerMonitor_OCWarnStatus 保持各电源转换器的过流警报状态。 PowerMonitor_OVFaultStatus 保持各电源转换器的过压故障状态。 PowerMonitor_UVFaultStatus 保持各电源转换器的欠压故障状态。 PowerMonitor_OCFaultStatus 保持各电源转换器的过流故障状态。 可用常量 常量 说明 PowerMonitor_NUM_CONVERTERS 需要监控的转换器数量。范围:1至32。 PowerMonitor_NUM_AUX_INPUTS 页 18/40 测量的辅助输入电压的数量。范围:0至4。 Document Number: 001-88517 Rev. *B ® PSoC Creator™ Component Datasheet Power Monitor void PowerMonitor_Start(void) 说明: 使能组件。如果组件之前未初始化,则请调用Init() API。调用Enable() API。该API需要 CPU内核中所使能的全局中断。要使能全局中断,调用PowerMonitor_Start() API前,请 在main.c文件中调用使能全局中断宏“CyGlobalIntEnable”。 参数: 无 返回值: 无 副作用: 无 void PowerMonitor_Stop (void) 说明: 禁用组件。ADC采样停止。 参数: 无 返回值: 无 副作用: 电源正常、警报、故障和eoc输出被解除激活。 void PowerMonitor_Init(void) 说明: 初始化组件。包括运行自校准 参数: 无 返回值: 无 副作用: 无 void PowerMonitor_Enable(void) 说明: 使能组件内的硬件模块,并开始扫描。 参数: 无 返回值: 无 副作用: 无 Document Number: 001-88517 Rev. *B 页 19/40 ® Power Monitor PSoC Creator™ Component Datasheet void PowerMonitor_EnableFault(void) 说明: 使能故障信号生成。具体来说,通过利用PowerMonitor_SetFaultMode()和 PowerMonitor_SetFaultMask()等各API,进行配置需要使能的故障源。Init()可以自动启用故 障信号生成。 参数: 无 返回值: 无 副作用: 无 void PowerMonitor_DisableFault(void) 说明: 禁用故障信号生成。 参数: 无 返回值: 无 副作用: 故障输出被解除激活 void PowerMonitor_SetFaultMode(uint8 faultMode) 说明: 配置来自组件的故障源。三个可用的故障源包括:OV(过压)、UV(欠压)和OC(过 流)。通过Init()设为自定义程序的设置。 参数: uint8 faultMode 位字段 返回值: 无 副作用: 无 页 20/40 使能故障源 0: OV_FAULT 1 = 使能过压故障 1: UV_FAULT 1 = 使能欠压故障 2: OC_FAULT 1 = 使能过流故障 7:3 已保留。全部写为零 Document Number: 001-88517 Rev. *B ® Power Monitor PSoC Creator™ Component Datasheet uint8 PowerMonitor_GetFaultMode(void) 说明: 返回来自组件的已使能故障源 参数: 无 返回值: 位字段 副作用: 信息 0: OV_FAULT 1 = 过压故障已使能 1: UV_FAULT 1 = 欠压故障已使能 2: OC_FAULT 1 = 过流故障已使能 7:3 已保留。返回所有零 无 void PowerMonitor_SetFaultMask(uint32 faultMask) 说明: 使能或禁用通过掩码来自各电源转换器的故障。掩码适用于所有故障源。掩码适用于“故 障”生成以及“电源正常”生成。默认所有电源转换器都有各自的已使能的故障掩码。 参数: uint32 faultMask 位字段 返回值: 无 副作用: 无 已使能故障源 0 1 = 使能来自电源转换器1的故障 1 1 = 使能来自电源转换器2的故障 … … 31 1 = 使能来自电源转换器32的故障 Document Number: 001-88517 Rev. *B 页 21/40 ® Power Monitor PSoC Creator™ Component Datasheet uint32 PowerMonitor_GetFaultMask(void) 说明: 返回各电源转换器的故障掩码状态。掩码适用于所有的故障源。 参数: 无 返回值: uint32 alertMask 位字段 副作用: 已使能故障源 0 1 = 来自电源转换器1的故障已使能 1 1 = 来自电源转换器2的故障已使能 … … 31 1 = 来自电源转换器32的故障已使能 无 uint8 PowerMonitor_GetFaultSource(void) 说明: 返回来自组件的挂起故障源。该API可用于轮询组件的故障状态。此外,如果故障引脚用 于对PSoC的CPU内核生成中断,那么中断子程序也可以使用该API来确定该故障的来源。 无论在哪种情况下,当该API返回非零值时, GetOVFaultStatus()、GetUVFaultStatus()和 GetOCFaultStatus()等API即可以进一步明确是哪个电源转换器引起了故障。故障源位是粘 滞位,只有通过调用相关的Get Status API才可以清除它们。 参数: 无 返回值: 位字段 副作用: 页 22/40 故障源 0: OV_FAULT 1 = 过压故障已发生 1: UV_FAULT 1 = 欠压故障已发生 2: OC_FAULT 1 = 过流故障已发生 7:3 已保留。返回所有零 无 Document Number: 001-88517 Rev. *B ® Power Monitor PSoC Creator™ Component Datasheet uint32 PowerMonitor_GetOVFaultStatus(void) 说明: 返回各电源转换器的过压故障状态。无论故障掩码如何,均报告状态。 参数: 无 返回值: uint32 ovFaultStatus 位字段 副作用: 过压故障状态 0 1 = 电源转换器1上的过压故障状况 1 1 = 电源转换器2上的过压故障状况 … … 31 1 = 电源转换器32上的过压故障状况 调用该API可清除故障状况源粘滞位。如果该状况继续存在,则该位将在下次扫描后重新 被设定。 uint32 PowerMonitor_GetUVFaultStatus(void) 说明: 返回各电源转换器的欠压故障状态。无论故障掩码如何,均报告状态。 参数: 无 返回值: uint32 uvFaultStatus 位字段 副作用: 欠压故障状态 0 1 = 电源转换器1上的欠压故障状况 1 1 = 电源转换器2上的欠压故障状况 … … 31 1 = 电源转换器32上的欠压故障状况 调用该API可清除故障状况源粘滞位。如果该状况继续存在,则该位将在下次扫描后重新 被设定。 Document Number: 001-88517 Rev. *B 页 23/40 ® Power Monitor PSoC Creator™ Component Datasheet uint32 PowerMonitor_GetOCFaultStatus(void) 说明: 返回各电源转换器的过流故障状态。无论故障掩码如何,均报告状态。 参数: 无 返回值: uint32 ocFaultStatus 位字段 副作用: 过流故障状态 0 1 = 电源转换器1上的过流故障状况 1 1 = 电源转换器2上的过流故障状况 … … 31 1 = 电源转换器32上的过流故障状况 调用该API可清除故障状况源粘滞位。如果该状况继续存在,则该位将在下次扫描后重新 被设定。 void PowerMonitor_EnableWarn(void) 说明: 使能警报信号生成。具体来说,利用 PowerMonitor_SetWarnMode()和 PowerMonitor_SetWarnMask()等API来配置要使能哪些警报源。Init()可以自动使能警报信 号生成。 参数: 无 返回值: 无 副作用: 无 void PowerMonitor_DisableWarn(void) 说明: 禁用警报信号生成。 参数: 无 返回值: 无 副作用: 警报输出被解除激活 页 24/40 Document Number: 001-88517 Rev. *B ® Power Monitor PSoC Creator™ Component Datasheet void PowerMonitor_SetWarnMode(uint8 warnMode) 说明: 配置来自组件的警报源。三个可用的警报源包括:OV(过压)、UV(欠压)和OC(过 流)。通过Init()设为自定义程序的设置。 参数: uint8 warnMode 位字段 返回值: 无 副作用: 无 已使能警报源 0: OV_WARN 1 = 使能过压警报 1: UV_WARN 1 = 使能欠压警报 2: OC_WARN 1 = 使能过流警报 7:3 已保留。全部写为零 uint8 PowerMonitor_GetWarnMode(void) 说明: 返回来自组件的已使能警报源 参数: 无 返回值: 位字段 副作用: 信息 0: OV_WARN 1 = 过压警报已使能 1: UV_WARN 1 = 欠压警报已使能 2: OC_WARN 1 = 过流警报已使能 7:3 已保留。返回所有零 无 Document Number: 001-88517 Rev. *B 页 25/40 ® Power Monitor PSoC Creator™ Component Datasheet void PowerMonitor_SetWarnMask(uint32 warnMask) 说明: 通过掩码使能或禁用来自各电源转换器的警报。掩码适用于所有警报源。默认所有电源转 换器都有各自的已使能警报掩码。 参数: uint32 warnMask 位字段 返回值: 无 副作用: 无 已使能警报源 0 1 = 使能来自电源转换器1的警报 1 1 = 使能来自电源转换器2的警报 … … 31 1 = 使能来自电源转换器32的警报 uint32 PowerMonitor_GetWarnMask(void) 说明: 返回各电源转换器的警报掩码状态。掩码适用于所有警报源。 参数: 无 返回值: uint32 warnMask 位字段 副作用: 页 26/40 已使能警报源 0 1 = 来自电源转换器1的警报已使能 1 1 = 来自电源转换器2的警报已使能 … … 31 1 = 来自电源转换器32的警报已使能 无 Document Number: 001-88517 Rev. *B ® Power Monitor PSoC Creator™ Component Datasheet uint8 PowerMonitor_GetWarnSource(void) 说明: 返回来自组件的挂起警报源。该API可用于轮询组件的警报状态。此外,如果警报引脚用 于对PSoC的CPU内核生成中断,那么中断服务子程序也可以使用该API来确定该警报的来 源。无论在哪种情况下,当该API返回非零值时,GetOVWarnStatus()、 GetUVWarnStatus()和GetOCWarnStatus()等API即可以进一步明确是哪个电源转换器引 起了警报。 参数: 无 返回值: 副作用: 位字段 警报源 0: OV_WARN 1 = 过压警报已发生 1: UV_ WARN 1 = 欠压警报已发生 2: OC_ WARN 1 = 过流警报已发生 7:3 已保留。返回所有零 无 uint32 PowerMonitor_GetOVWarnStatus(void) 说明: 返回各电源转换器的过压警报状态。无论警报掩码如何,均报告状态。 参数: 无 返回值: uint32 ovWarnStatus 位字段 副作用: 过压警报状态 0 1 = 电源转换器1上的过压警报状况 1 1 = 电源转换器2上的过压警报状况 … … 31 1 = 电源转换器32上的过压警报状况 调用该API可以清除警报状况源的粘滞位如果该状况继续存在,则该位将在下次扫描后重 新被设定。 Document Number: 001-88517 Rev. *B 页 27/40 ® Power Monitor PSoC Creator™ Component Datasheet uint32 PowerMonitor_GetUVWarnStatus(void) 说明: 返回各电源转换器的欠压警报状态。无论警报掩码如何,均报告状态。 参数: 无 返回值: uint32 uvWarnStatus 位字段 副作用: 欠压故障状态 0 1 = 电源转换器1上的欠压警报状况 1 1 = 电源转换器2上的欠压警报状况 … … 31 1 = 电源转换器32上的欠压警报状况 调用该API可以清除警报状况源的粘滞位如果该状况继续存在,则该位将在下次扫描后重 新被设定。 uint32 PowerMonitor_GetOCWarnStatus(void) 说明: 返回各电源转换器的过流警报状态。无论警报掩码如何,均报告状态。 参数: 无 返回值: uint32 ocWarnStatus 位字段 副作用: 页 28/40 过流警报状态 0 1 = 电源转换器1上的过流警报状况 1 1 = 电源转换器2上的过流警报状况 … … 31 1 = 电源转换器32上的过流警报状况 调用该API可以清除警报状况源的粘滞位如果该状况继续存在,则该位将在下次扫描后重 新被设定。 Document Number: 001-88517 Rev. *B ® PSoC Creator™ Component Datasheet Power Monitor void PowerMonitor_SetUVWarnThreshold(uint8 converterNum, uint16 uvWarnThreshold) 说明: 设定指定电源转换器的电源转换器欠压警报阈值 参数: uint8 converterNum 指定转换器编号 有效范围:1至32 uint16 uvWarnThreshold 指定欠压警报阈值,单位为mV。 该值的取值范围可在运行时间检查。如果该值超过了最大值,则API将无效。可以使用API PowerMonitor_GetUVWarnThreshold来检查有效的阈值。 返回值: 无 副作用: 无 uint16 PowerMonitor_GetUVWarnThreshold(uint8 converterNum) 说明: 返回指定电源转换器的电源转换器欠压警报阈值 参数: uint8 converterNum 指定转换器编号 有效范围:1至32 返回值: uint16 uvWarnThreshold 欠电压警报阈值,单位为 mV 副作用: 无 Document Number: 001-88517 Rev. *B 页 29/40 ® Power Monitor PSoC Creator™ Component Datasheet void PowerMonitor_SetOVWarnThreshold(uint8 converterNum, uint16 ovWarnThreshold) 说明: 设定指定电源转换器的电源转换器过压警报阈值 参数: uint8 converterNum 指定转换器编号 有效范围:1至32 uint16 ovWarnThreshold 指定过压警报阈值,单位为mV 该值的取值范围可在运行时间检查。如果该值超过了最大值,则API将无效。可使用API PowerMonitor_GetOVWarnThreshold来检查有效阈值。 返回值: 无 副作用: 无 uint16 PowerMonitor_GetOVWarnThreshold(uint8 converterNum) 说明: 返回指定电源转换器的电源转换器欠压警报阈值 参数: uint8 converterNum 指定转换器编号 有效范围:1至32 返回值: uint16 ovWarnThreshold 过压警报阈值,单位为mV。 副作用: 无 页 30/40 Document Number: 001-88517 Rev. *B ® PSoC Creator™ Component Datasheet Power Monitor void PowerMonitor_SetUVFaultThreshold(uint8 converterNum, uint16 uvFaultThreshold) 说明: 设定指定电源转换器的电源转换器欠压故障阈值 参数: uint8 converterNum 指定转换器编号 有效范围:1至32 uint16 uvFaultThreshold 指定欠压故障阈值,单位为mV 该值的取值范围可在运行时间检查。如果该值超过了最大值,则API将无效。可以使用API PowerMonitor_GetUVWarnThreshold赖检查有效的阈值。 返回值: 无 副作用: 无 uint16 PowerMonitor_GetUVFaultThreshold(uint8 converterNum) 说明: 返回指定电源转换器的电源转换器欠压故障阈值 参数: uint8 converterNum 指定转换器编号 有效范围:1至32 返回值: uint16 uvFaultThreshold 欠压故障阈值,单位为mV 副作用: 无 void PowerMonitor_SetOVFaultThreshold(uint8 converterNum, uint16 ovFaultThreshold) 说明: 设定指定电源转换器的电源转换器过压故障阈值 参数: uint8 converterNum 指定转换器编号 有效范围:1至32 uint16 ovFaultThreshold 指定过压故障阈值,单位为mV 该值的取值范围可在运行时间检查。如果该值超过了最大值,则API将无效。可将API PowerMonitor_GetOVFaultThreshold用于检查有效阈值。 返回值: 无 副作用: 无 Document Number: 001-88517 Rev. *B 页 31/40 ® Power Monitor PSoC Creator™ Component Datasheet uint16 PowerMonitor_GetOVFaultThreshold(uint8 converterNum) 说明: 返回指定电源转换器的电源转换器欠压故障阈值 参数: uint8 converterNum 指定转换器编号 有效范围:1至32 返回值: uint16 ovFaultThreshold 过压故障阈值,单位为mV 副作用: 无 void PowerMonitor_SetOCWarnThreshold(uint8 converterNum, float ocWarnThreshold) 说明: 设定指定电源转换器的电源转换器过流警报阈值 参数: uint8 converterNum 指定转换器编号 有效范围:1至32 float ocWarnThreshold 指定过流警报阈值,单位为安培。 该值的取值范围可在运行时间检查。如果该值超过了最大值,则API将无效。可将API PowerMonitor_GetOCWarnThreshold用于检查有效阈值。 返回值: 无 副作用: 无 float PowerMonitor_GetOCWarnThreshold(uint8 converterNum) 说明: 返回指定电源转换器的电源转换器过流警报阈值 参数: uint8 converterNum 指定转换器编号 有效范围:1至32 返回值: float ocWarnThreshold 过流警报阈值,单位为安培 副作用: 无 页 32/40 Document Number: 001-88517 Rev. *B ® PSoC Creator™ Component Datasheet Power Monitor void PowerMonitor_SetOCFaultThreshold(uint8 converterNum, float ocFaultThreshold) 说明: 设定指定电源转换器的电源转换器过流故障阈值 参数: uint8 converterNum 指定转换器编号 有效范围:1至32 float ocFaultThreshold 指定过流故障阈值,单位为安培 该值的取值范围可在运行时间检查。如果该值超过最大值,API将无效。可将API PowerMonitor_GetOCFaultThreshold用于检查有效的阈值。 返回值: 无 副作用: 无 float PowerMonitor_GetOCFaultThreshold(uint8 converterNum) 说明: 返回指定电源转换器的电源转换器过流故障阈值 参数: uint8 converterNum 指定转换器编号 有效范围:1至32 返回值: float ocFaultThreshold 过流故障阈值,单位为安培。 副作用: 无 uint16 PowerMonitor_GetConverterVoltage(uint8 converterNum) 说明: 返回指定电源转换器的电源转换器输出电压。如果使能了平均值,返回的值即为平均值。 参数: uint8 converterNum 指定转换器编号 有效范围:1至32 返回值: uint16 converterVoltage 转换器输出电压,单位为毫伏 副作用: 无 Document Number: 001-88517 Rev. *B 页 33/40 ® Power Monitor PSoC Creator™ Component Datasheet float PowerMonitor_GetConverterCurrent(uint8 converterNum) 说明: 返回指定电源转换器的电源转换器负载电流。如果使能了平均值,返回的值即为平均 值。 参数: uint8 converterNum 指定转换器编号 有效范围:1至32 返回值: float converterCurrent 转换器输出电流浮点值,单位为安培。 副作用: 无 float PowerMonitor_GetAuxiliaryVoltage(uint8 auxNum) 说明: 返回 辅助输入的电压,单位为伏 (V),独立于辅助输入的ADC范围设置。 参数: uint8 auxNum 指定转换器编号 有效范围:1至4 返回值: float auxVoltage 辅助电压,单位为伏 (V) 。 副作用: 无 void PowerMonitor_Calibrate(void) 说明: 校准各范围设置的ADC。如果出现 “cal”(校准)输入引脚,即向该输入引脚输入一个 有效电压。校准电压不得超过“General”选项卡窗口中所指定的ADC范围(+/-64 mV或 +/-128 mV)的100%。该电压将用于校准ADC低范围(+/-64 mV或+/-128 mV)的配置。 参数: 无 返回值: 无 副作用: 在本操作过程中,暂停ADC电压和电流的测量。 页 34/40 Document Number: 001-88517 Rev. *B ® Power Monitor PSoC Creator™ Component Datasheet void PowerMonitor SetAuxiliarySampleMode(uint8 auxNum, uint8 sampleMode) 说明: 设定选中辅助输入的ADC采样模式。注意:默认情况下,所有辅助输入均被设置为连续采 样模式。 参数: uint8 auxNum 指定辅助电压输入编号 有效范围:1至4 uint8 sampleMode 指定采样模式 值 说明 0 “Continuous”(连续采样模式) 1 “On Demand”(按需提供的采样模式) 返回值: 无 副作用: 当选中“On Demand”(按需提供)采样时,将禁用辅助输入的滤波 辅助输入采样模式的变化将影响电源转换器的总体采样率 uint8 PowerMonitor GetAuxiliarySampleMode(uint8 auxNum) 说明: 返回选中辅助输入的ADC的采样模式。 参数: uint8 auxNum 指定辅助电压输入编号 有效范围:1至4 返回值: uint8 sampleMode 指定采样模式 值 副作用: 说明 0 “Continuous”(连续采样模式) 1 “On Demand”(按需提供的采样模式) 无 Document Number: 001-88517 Rev. *B 页 35/40 ® Power Monitor PSoC Creator™ Component Datasheet float PowerMonitor RequestAuxiliarySample(uint8 auxNum) 说明: 请求并返回一个单一的未经过滤的按需采样结果(该结果由指定的辅助输入产生)。调用 该API会中断ADC转换的正常序列,旨在尽快获取所要求的样本。当辅助输入采样模式被 设为连续采样模式时,也会调用API。但它不会影响到连续采样模式下辅助输入的测量。 参数: uint8 auxNum 指定辅助电压输入编号 有效范围:1至4 返回值: 浮点值表示未过滤的四个辅助输入之一的输出电压。 副作用: 调用该API会影响到电源转换器的总体采样率。 MISRA 合规性 本节介绍了MISRA-C:2004合规性和本组件的偏差情况。有两种差异的类型,如下定义: 项目偏差 — 适用于所有 PSoC Creator 组件的偏差 特定偏差 — 仅适用于此组件的偏差 本节提供了有关组件特定偏差的信息。《系统参考指南》中“MISRA 合规性”章节介绍了项目偏 差以及有关 MISRA 合规性验证环境的信息。 尚未根据 MISRA-C:2004 编码准则合规性,验证“PowerMonitor”(功耗监控器)组件源代码。 固件源代码示例 在 Find Example Project 对话框中,PSoC Creator 提供了大量的示例项目,包括原理图和示例代 码。要获取组件示例,请打开组件目录中的对话框或原理图中的组件实例。要查看通用样例,请打 开“Start Page”或 File 菜单中的对话框。根据要求,可以通过使用对话框中的 Filter Options 项 来限定可选的项目列表。 有关更多信息,请参考 PSoC Creator 帮助中的“Find Example Project”(查找示例项目)主题。 页 36/40 Document Number: 001-88517 Rev. *B ® Power Monitor PSoC Creator™ Component Datasheet 功能说明 功耗监控器组件适合快速、便捷地设计一项功能齐全的电源监控器,有了该组件,他们无需学习 PSoC 模拟子系统低级别的细节内容,也不用手动建立和配置 ADC、配置模拟输入复用器或担心校 准问题。用户使用该组件自定义程序,用可通过图形的方式,准确地为其应用配置所需的功能。该 组件将自动为您管理实现细节。 该器件使用 1.024 V 内部高精度参考电压,并利用 PGA 将其乘以 2,生成一个 2.048 V 的偏移,由 此产生一个使用 DelSigADC 模块的单端电压测量范围:0 - 4.096 V。差分电压测量范围为+/- 64 mV 或 128 mV。 该组件支持自校准。初始化过程中以及随后在固件做出要求的任何时候,都将进行校准。经过设 计,在进行校准时,可最大程度减少对电源转换器采样过程的干扰。 电压测量和电流测量都支持得出测量结果的平均值。该平均值计算为连续扫描得到的平均值,每次 扫描后都产生一个新的平均值,即之前所进行的 N 次扫描的平均值。使能平均值后,当需要测量值 (故障、警报、电源正常和读取 API 的测量值)时,即使用该平均值。 资源 该组件主要在固件中实现。所消耗的硬件模块只包括:DelSigADC、控制寄存器以及用于生成单端 测量内部参考的 PGA。 该组件通过一项经常被调用的、具有中等优先级的中断服务子程序,作为一项背景任务运行。设计 者使用该组件应明白,API 或从 main()或固件其它地方调用的功能等无中断任务,运行速度可能比 预期的要慢。因此,建议 CPU 时钟应至少设定为 24 MHz,确保有充足的执行时间。如果在同一 项设计中需要其它时间性很强的中断资源,那么它们可设定为更高权限,满足系统性能目标。 资源类型 配置 默认值 PGA ADC_DelSig 宏单元 控制单元 中断 1 1 4 2 1 API 存储器大小 根据不同编译器、器件、所使用的 API 数量以及组件的配置情况,组件所用的存储空间大小也不一 样。下表提供了给定组件配置所有 API 的存储器使用大小。 通过使用“释放”模式下相应的编译器,可以完成测量操作。在该模式下,存储器的大小得到优 化。对于特定的设计,分析编译器生成的映射文件后可以确定存储器的使用情况。 Document Number: 001-88517 Rev. *B 页 37/40 ® Power Monitor PSoC Creator™ Component Datasheet 配置 PSoC 3 (Keil_PK51) 闪存大小 (字节) 默认值 8952 SRAM大小 (字节) 1064 PSoC 5LP (GCC) 闪存大小 (字节) 7994 SRAM大小 (字节) 379 直流和交流电气特性 除非另有说明,否则这些规范的适用条件是:-40°C ≤ TA ≤ 85 °C 且 TJ ≤ 100 °C。除非另有说明, 否则这些规范的适用范围为 1.71 V 到 5.5 V。 参数 说明 条件 最小值 典型值 最大值 单位 ADCAcc ADC测量精度 定期调用校准API以及使用cal模拟输入 时,整个工作温度范围上的PSoC内部错 误来源。必须保证外部组件的精度,以使 整个系统都保持精度 _ 0.26 _ % TCONV ADC每次测量的转换 CPU和组建时钟被设定为最大频率时每次 时间 测量的平均转换时间,包括ADC重新配置 时间(如单端差分)。 _ 150 300 μs 页 38/40 Document Number: 001-88517 Rev. *B ® Power Monitor PSoC Creator™ Component Datasheet 组件的更改 本节列出了各版本中主要组件的更改内容。 版本 更改说明 更改原因/影响 1.50.b 增加了如下注意内容:调用Start() API 前,必须先使能全局中断。 如果尚未使能全局中断,初始化组件时会出现问题。 1.50.a 删除了PSoC 5引用的内容。 将PSoC 5替换为PSoC 5LP。 1.50 通过修改路由算法,确定了校准步骤。 用于校准的路由不准确,导致了精度损失。更新的实施将使 结果更加准确。 新增了“状态”变量的初始化值。 所添加的初始化值用于移除编译器警报。 添加了“Load / Save configuration”(加 载/保存配置)指令。 可用性增强。 新增了SetAuxiliarySampleMode()、 GetAuxiliarySampleMode()、 RequestAuxiliarySample()等应用编程接 口(API)。 这些API允许您可移除/添加从扫描序列中的辅助通道,而不 常测量辅助通道。 添加了ADC电压检测缓冲区模式选项,用 以选择“Level Shift”(默认情况下)或 者“Bypass Buffer”模式。 “Bypass Buffer”模式有助于表示测量的信号。 可配置EOC输出。 用户可以指定在每次ADC测量后(Complete Cycles),或者 只在一次测量后(当一个样本已被采取自每一个模拟输入) (Per Sample),会确认该脉冲。 1.30 已添加了MISRA合规性章节。 此器件未进行MISRA合规性验证。 1.20 已添加了NUMBER_OF_CONVERTERS 定义 1.40 如果选择“Bypass Buffer”模式,缓冲区将被禁用,以降低 总功耗。 已添加了全局变量“iirInit”和 “initThreshold” 已将组件宏更改为8、16、32通道 添加了中断管理的宏 添加了未选中来源时故障/警报引脚的隐 藏。添加了未选中故障/警报源时的灰色输 出列。 更正了对Verilog寄存器的定义 确认了组件输出信号启动条件 添加了单端电压测量阈值(0-2.048 V) Document Number: 001-88517 Rev. *B 页 39/40 ® Power Monitor 版本 PSoC Creator™ Component Datasheet 更改说明 更改原因/影响 添加URL到在线数据手册 1.10 添加了PSoC5 LP芯片的支持 更新数据手册中的资源部分。 ©赛普拉斯半导体公司,2013。此处,所包含的信息可能会随时更改,恕不另行通知。除赛普拉斯产品的内嵌电路之外,赛普拉斯半导体公司不对任何其他电路的使用承担任何责任。也不根据专利 或其他权利以明示或暗示的方式授予任何许可。除非与赛普拉斯签订了明确的书面协议,否则赛普拉斯产品不保证产品能够用于或适用于医疗、生命支持、救生、关键控制或安全应用领域。此外, 对于可能发生运转异常和故障并对用户造成严重伤害的生命支持系统,赛普拉斯不授权将其产品用作此类系统的关键组件。若将赛普拉斯产品用于生命支持系统中,则表示制造商将承担因此类使用 而招致的所有风险,并确保赛普拉斯免于因此而受到任何指控。 PSoC®是赛普拉斯半导体公司的注册商标,PSoC Creator™和可编程片上系统(Programmable System-on-Chip™)是赛普拉斯半导体公司的商标。此处引用的所有其他商标或注册商标归其各自 所有者所有。 所有源代码(软件和/或固件)均归赛普拉斯半导体公司(赛普拉斯)所有,并受全球专利法规(美国和美国以外的专利法规)、美国版权法以及国际条约规定的保护和约束。赛普拉斯据此向获许可 者授予适用于个人的、非独占性、不可转让的许可,用以复制、使用、修改、创建赛普拉斯源代码的派生作品、编译赛普拉斯源代码和派生作品,并且其目的只能是创建自定义软件和/或固件,以支 持获许可者仅将其获得的产品依照适用协议规定的方式与赛普拉斯集成电路配合使用。除上述指定用途外,未经赛普拉斯的明确书面许可,不得对此类源代码进行任何复制、修改、转换、编译或演 示。 免责声明:赛普拉斯不针对此材料提供任何类型的明示或暗示保证,包括(但不仅限于)针对特定用途的适销性和适用性的暗示保证。赛普拉斯保留在不做出通知的情况下对此处所述材料进行更改 的权利。赛普拉斯不对此处所述之任何产品或电路的应用或使用承担任何责任。对于合理的预计可能发生运转异常和故障,并对用户造成严重伤害的生命支持系统,赛普拉斯不授权将其产品用作此 类系统的关键组件。若将赛普拉斯产品用于生命支持系统,则表示制造商将承担因此类使用而招致的所有风险,并确保赛普拉斯免于因此而受到任何指控。 产品使用可能受相应的赛普拉斯软件许可协议限制。 页 40/40 Document Number: 001-88517 Rev. *B