“线程: 测试”中讨论的其它部件
您好,
我们正在使用 DP83TD510E,并且一直在读取0x0A85寄存器,然后将其转换为 SNR SNLA364A。 下面是我们使用的代码:
taskENTTER_critical ();
HAL_ETH_WritePHYRegister (&H,0x0D,0x001F);
HAL_ETH_WritePHYRegister (&H,0x0E,0x0A85);
HAL_ETH_WritePHYRegister (&H,0x0D,0x401F);
HAL_ETH_ReadPHYRegister (&heth,0x0E,&MSE); //读取 PHY DSP_REG_72寄存器。
taskexit_critical ();
Sig2Noise =-10.0 * log10 (((float) MSE/131072.0)-1.76;
但我们获得的 SNR 似乎很高。 例如,我们从一项测试中获得以下结果:
从 DP83TD510E 寄存器读取和计算, SNR = 28.5dB
信号的范围捕获如下所示:

因此,我们估计信号实际上大约是1.2V (捕获中看到的2.39V 的一半是全双工传输),噪声大约是10mV。
根据我们的估计,SNR ~ 10日志(1.2/0.01)=20.8dB
为什么我们的估计与 DP83TD510E 报告的 SNR 如此不同? 我们预期的最佳 SNR 是2.4V 信号=23.8dB。
感谢您的帮助,
赛鲁斯