Это все не то. Проблема вот в этом
рассчитывается сдвиг по такой формуле
offset = (DWORD)32768 * div * 2 * _DPLL_N_CODE * stDisplayInfo.DHTotal / aclkcnt * stDisplayInfo.DVHeight / mcode;
а потом делается так:
offset = 32768 - offset;
т.е. offset не должно быть больше 32768, а в случае вашей платы оно получается 33080, и после второй операции получается не то что должно быть.
в логе видно что сильно отличается aclkcnt. Оно берется из этого регистра синхропроцессора.
Address: 59 MEAS_ACTIVE_REGION_H (Active Region Measured by CRSTL_CLK Result)
, кроме этого отличается mcode, оно берется отсюда:
Address: BF DPLL_M (DPLL M Divider Register)
Подскажите, там полярность синхроимпульсов у вас на чип приходит правильная?
|