请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
部件号:LMH1219 尝试读取HEO / Veo以确定链路质量。 输入信号是SDI信号(速率不同...从SD到12G存在问题)。
我已经按照编程指南完成了
我预计,HEO的范围介于0和64之间(从十六进制转换后)。
目前,HEO的回读值要高得多(远高于64)。
这就是我正在做的事:
EOMdata_t eomData = {.HEO = 0, .VEO = 0}; uint8_t HEO, VEO; lmhRAW(0xFF, 0x04, 0x07); // Select CTLE/CDR Register Page lmhRAW(0x3E, 0x00, 0x80); // Disable Automatic HEO/VEO // lmhRAW(0x11, 0x00, 0xE0); // Enable EOM and set VEO granularity to 3.125 mV // lmhRAW(0x11, 0x80, 0xE0); // Enable EOM and set VEO granularity to 9.375mV lmhRAW(0x11, 0xC0, 0xE0); // Enable EOM and set VEO granularity to 12.5mV lmhRAW(0x23, 0x80, 0x80); // Acquire HEO and VEO when Reg 0x24[1] = 1 lmhRAW(0x24, 0x02, 0x02); // Get HEO and VEO measurement (self-clearing) while (((lmhRAR(0x24).data & 0x02) >> 1)) VEO = lmhRAR(0x27).data; HEO = lmhRAR(0x28).data; lmhRAW(0x3E, 0x80, 0x80); //Enable Automatic HEO/VEO lmhRAW(0x23, 0x00, 0x80); //Disable HEO and VEO override on Reg 0x24[1] lmhRAW(0x11, 0xE0, 0xE0); //Restore Reg 0x11[7:5] to default value eomData.HEO = HEO / 64.0f; // 0.00 - 1.00 percent eomData.VEO = VEO * 12.5f; // mV
我做错了什么?
此处帮助您获取更多信息(如果需要)。
谢谢