在平均功率读取(READ_EIN)期间、采样计数在相同的测量延迟时间内返回不同的值。
在第7.6.2.14章中、数据表建议使用寄存器前后读数来计算平均功耗。
计算得出的功率似乎是正确的、但如果之前发出了 READ_VIN 命令、则在预发布和 POST 之间的任何延迟时间内、采样数始终在1000到1500之间。
READ_VIN 命令是否会以某种方式影响能量测量的采样计数值?
PRE 和 POST 之间的采样计数差异是否会受到平均 ADC 设置的影响?
自动重置累加器是否也会重置采样计数值?
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.
在平均功率读取(READ_EIN)期间、采样计数在相同的测量延迟时间内返回不同的值。
在第7.6.2.14章中、数据表建议使用寄存器前后读数来计算平均功耗。
计算得出的功率似乎是正确的、但如果之前发出了 READ_VIN 命令、则在预发布和 POST 之间的任何延迟时间内、采样数始终在1000到1500之间。
READ_VIN 命令是否会以某种方式影响能量测量的采样计数值?
PRE 和 POST 之间的采样计数差异是否会受到平均 ADC 设置的影响?
自动重置累加器是否也会重置采样计数值?
嗨、Th。 马希
READ_EIN 命令之间的时间间隔是多少? ADC 转换时间和平均值计算设置是多少?
如果在不精确的时间间隔发出 READ_EIN 命令、则累加器为每个 READ_EIN 命令处理的样本数将会有所变化。
READ_VIN 命令不应影响 READ_EIN 命令的采样计数。
如果您在 READ_EIN 读数之间更改 ADC 平均设置、则即使您以精确的时间间隔发出 READ_EIN 命令、这也会影响采样数。
最棒的
Peter
你(们)好
我在100ms 和1秒之间改变 READ_EIN 命令之间的时间间隔。
时间间隔不是很精确、但如果之前发出了 READ_VIN 命令、则采样计数会非常不同。
目前、我不使用平均值和1ms 转换时间。 ADC 设置仅在应用程序开始时完成
如果未使用 READ_VIN 命令、则1秒时间间隔的采样计数约为120'000。
但使用 READ_VIN 命令时,样本计数也取决于 READ_VIN 命令和 PRE READ_EIN 命令(延迟1)之间的时间 。
我要执行的步骤:
READ_VIN
延迟1
READ_EIN (PRE)
延迟2.
READ_EIN (POST)->采样计数= DIFF (POST - PRE)
您好!
我在代码中发现一个错误、我未正确提取24位流。 现在工作正常、但我仍然有问题、那就是能量测量受标准寄存器读取的影响。
采样时间为1100ms、未求平均值时、采样计数约为时间的1/2、以 ms 为单位、因此对于1000ms 的延迟、我得到480个采样
ADC 配置命令如下:0xd0、0x27、0x01
我在更改延迟1但恒定延迟2时进行了更多测试。
这表明采样计数=到0.48 *延迟1、与延迟2无关
然后、我在两个样本读数之间放置读取 READ_VIN 命令、如下所示
READ_EIN (PRE)
READ_VIN
延迟2.
READ_EIN (POST)->采样计数= DIFF (POST - PRE)
在此配置中、我始终独立于延迟2测量约18个样本
我还将 READ_VIN 与 READ_MFR_ID 交换、但结果相同
到目前为止、我没有更改 MFR_DEVICE_CONFIG 寄存器并将其保留为默认值。
但是、当我启用 Read_EIN 自动清除功能时、我将读取比后测量更高的预值、并且独立于延迟2、后测量值始终为17左右
10次循环{READ_EIN (PRE)-> READ_VIN ->延迟2 -> READ_EIN (POST)->采样计数= DIFF (POST - PRE)}、延迟2从100到1000、步长为100
对于超过200ms 的延迟、预测量约为0.48 *延迟2
后测量在16和18之间非常恒定
您好 Th。 马希
感谢您的介绍。 在您描述的这个循环中、您是否在发出 READ_EIN (POST)命令后执行任何其他操作? 处理器是否有任何时间用于确定和存储预后= N =采样计数? 实际上、这不是必需的、因为您在 D5h 中设置了 EIN_AUTO 清零位。
此器件使用的从器件地址是什么?
为什么要尝试向 MFR_ADC_CONFIG (寄存器0x27)的位14写入0位? 该位始终为0。
您从 Read_EIN 读回哪些值? 您是否正在考虑翻转字节?
D5h 的 EIN_STATUS 位是什么?
您将 D4H (MFR_CALIBRATION)校准到什么位置?
感谢您的耐心等待。
此致、
Peter
采样计数应该是 delay1的一半(或从一个 READ_EIN 到下一个的时间)。
你(们)好
我认为、我所描述的行为是预期行为、但遗憾的是、数据表中未对此进行描述。
每次向控制器发送命令(例如 READ_VIN)时、采样计数和累加器都会复制到输出寄存器中。
使用 READ_EIN 读取此输出寄存器将在发送 READ_VIN 命令时读取采样计数和累加器。 这样、输入电压(READ_VIN)和功率(READ_EIN)将同步(同时采样)。 在内部、采样计数和累加器将继续递增。
因此、下一次读取 READ_EIN (之前未发送 READ_VIN 命令)将读取实际采样数和累加器。
对于我来说、案例可以关闭、借助上述知识、可以轻松准确测量功率和能量。 但如果您能在数据表或应用手册中添加更详细的说明、我将不胜感激。
谢谢
Thomas