LINUX.ORG.RU

Тайминги монитора.

 , ,


0

1

Столкнулся со следующей задачей. Дано:

  1. монитор NL10276BC13-01C
  2. Одноплатный компьютер МВ7707 (ОС Linux).

Одномодульный компьютер имеет строго заданные значения разрешения. К сожалению, ни одно разрешение в МВ7707 не подходит для монитора NL10276BC13-01C (1024х768). Есть возможность изменять разрешения в МВ7707, путем изменения таймингов разрешения в исходном коде драйвера [GitHub] (https://github.com/RC-MODULE/linux-3.10.x/blob/k1879-3.10.28/drivers/video/module_vdu_core.c#L138) . Но есть одно большое НО:

  1. Pixeclock может принимать только два значения 74250000 или 27000000.
  2. Максимальное значение принимаемых Pixeclock по горизонтали - 1344, по вертикали - от 780 до 806.

На основе двух вышеизложенных разрешений, необходимо сгенерировать тайминги для разрешения 1024х768 (на счет fps ничего не могу сказать), в формате

[MVDU_MODE_HD_720_P_60] = {
	.width = 1280,
	.height = 720,
	.vmode = MVDU_MODE_PROGRESSIVE,
	.pixclock = 74250000,
	.mode = 0x16,
	.h_blank = 362,
	.h_active = 1280,
	.h_total = 1650,
	.hs_start = 110,
	.hs_len = 40,
	.hs_delay = 220,
	.v_blank_beg = 25,
	.v_active = 720,
	.v_total = 750,
	.v_blank_end = 5,
	.vs_start = 0,
	.vs_len = 5,
	.vs_p = 1,
	}

Не понял это:

Максимальное значение принимаемых Pixeclock по горизонтали - 1344, по вертикали - от 780 до 806.

Если это про h_active и v_active, то в вашем примере v_active = 720 и это меньше 780.

Так, значения h_active, h_total, hs_start, hs_len, hs_delay вроде понятны, а что такое h_blank мне не понятно.

mky ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.