您好!
根据 TRM、 SDFLT1CMPHx 是15位寄存器、SDCDATAx 是16位寄存器。
SDCDATAx 的内容是否用于直接与 SDFLT1CMPHx 进行比较? 如何工作?
如果是这种情况、我们如何将 SDFLT1CMPHx 配置为满量程、作为过正确检测?
此致、
卢克
This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
您好!
根据 TRM、 SDFLT1CMPHx 是15位寄存器、SDCDATAx 是16位寄存器。
SDCDATAx 的内容是否用于直接与 SDFLT1CMPHx 进行比较? 如何工作?
如果是这种情况、我们如何将 SDFLT1CMPHx 配置为满量程、作为过正确检测?
此致、
卢克
Luke、您好!
感谢您的耐心等待。
比较器滤波器单元的输出 直接与三个编程的阈值电平进行比较、以检测高于阈值和低于阈值的情况。 这些阈值电平在高电平和低电平 阈值寄存器以及过零阈值寄存器 (SDFLT1CMPHx、SDFLT1CMPLx 和 SDFLT1CMPHZ )中进行编程。
然后、COMPHx/Lx 信号设置 希费尔格 当满足下表所示的条件时、COMPZx 信号将设置 SDCTL 寄存器的相应位:
条件 |
启用者 |
锁存寄存器 |
数据>= COMPHx |
IEH |
正在处理此问题。 IFHx 置位 |
数据<= COMPLx |
IEL |
正在处理此问题。 IFLX 套件 |
数据> COMPZx |
ZCEN |
SDCTL。 ZCx 置位 |
图1. 比较器单元结构。
要回答您的问题、要配置 SDFLT1CMPHx、 您需要在 SDCPARMx 寄存器中启用 IEH。 现在、对于从比较器单元的滤波器传入的新数据、将其与阈值寄存器进行比较、并设置 SDIFLG 中的一个位。 如果满足表中给出的第一个条件、则触发 SDINT 中断输出。
即使比较器滤波器输出以16位无符号格式表示、 比较器滤波器也会将低输入信号转换为‘0'、将高输入信号转换为‘1'。 换句话说、 在最大设置 COSR=32时、比较器滤波器输出可以提供一个32,768的最大15位输出宽度。
此致、
哈迪
Hadi,
即使比较器滤波器输出以16位无符号格式表示、 比较器滤波器也 会将低输入信号转换为‘0'、将高输入信号转换为‘1'。 换句话说、 在最大设置 COSR=32时、比较器滤波器输出可以提供一个32,768的最大15位输出宽度。
我不明白、由于比较器滤波器输出是16位无符号格式、为什么比较器滤波器输出最大15位的数据? 我之所以提出这个问题、是因为在我的客户用例中、她将高电平阈值设置为0x7CCC 并在发生 OC 事件时读取 SDCDATA2寄存器的内容、SDCDATA2数据为0xD468、是一个16位数据。
我的客户想知道比较器滤波器如何将此16位数据与15位阈值设置进行比较、请建议、谢谢。
此致、
卢克
Hadi,
在数据表中、我们在使用 GPIO 异步选项时有 SDFM 时序要求。 当我们使用 SDFM 输入限定时、我们应将 SDFM SD-Cx 和 SD-Dx 引脚配置为异步选项、正确吗?
我的客户使用 SDFM 输入资格、他还配置了 SDFM SD-Cx 和 SD-Dx 引脚来同步选项、到目前为止测试结果看起来不错、意味着 还没有发生虚假过流。 用户是否可以同时启用 GPIO SYNC 选项和 SDFM 输入限定? 使用 GPIO 异步和 SYNC 选项时、时序要求有何差异?
此致、
卢克
Hadi,
我想反复提出的问题会引起混淆、让我总结一下下面的问题、并简化一些操作。
请建议、感谢您的帮助。
此致、
卢克
Hadi、您好!
当我的客户使用 SDFM GPIO 同步或3样片选项时、SDFM 运行良好、到目前为止没有发生虚假过流事件。
但是、我们仍然感到好奇、以下是一些问题。
此致、
卢克
Luke、
TRM 中有一个注释、可以解释客户为什么会在 SDFM 同步模式和 GPIO 3采样模式下看到不同的行为。
我们需要确认客户满足设置+保持时间要求。 请向我们提供 SDFM 数据/时钟线的波形。
此致、
哈迪