Найти тему
Forlinx Embedded

Методы отладки экрана макетной платы Forlinx OK7110-C

Для синхронизации экрана OK7110 -C требуется специальный инструмент расчета starFive_DSI_Tool.exe, который хранится в папке Tools/dsi_tool профиля пользователя.

Методы работы:

01 Конфигурация параметров

Измените файл input.ini, который используется для настройки параметров экрана; Ниже приведены конкретные параметры конфигурации:

hactive: эффективная длина экрана

Vactive: эффективная ширина экрана

Bpp: бит на пиксель Глубина пикселя

fps: кадров в секунду Частота кадров

Pixellock_source: источник тактовой частоты пикселей. Поскольку частота пикселей делится на целочисленную частоту JH7110 PLL2, здесь необходимо ввести частоту PLL2; VF2 составляет 1188 МГц.

dlanes: mipi dsi Количество каналов

ref_pixclk: тактовая частота опорного пикселя; согласно таблице данных экрана, чтобы узнать его тактовую частоту эталонного пикселя или диапазон тактовой частоты эталонного пикселя. Если это диапазон, лучше написать здесь нижнюю границу; этот параметр может быть заполнен значением 0, чтобы указать, что эталонная тактовая частота не используется в расчетах или необходимо вычислить синхронизацию других частот кадров.

nr_timing_generated: количество временных рядов, которые будут сгенерированы.

Например

02 Бег

Вам необходимо установить git в Windows. Откройте каталог инструмента DSI _ с помощью git bash.

-2

Запускаем скрипт. Ш.

#!/bin/bash
output=$1
if [ "$output" == "" ]; then
output=output.txt
fi
./StarFive_DSI_Tool.exe < input.ini > $output

Используйте команду./run. Ш.

-3

Используйте команду./run. Ш. Время, генерируемое инструментом, рассчитывается на основе input.ini.

Например:

Welcome to use StarFive DSI timing generation tool v1.0
{
.dpi_timing = { //1024x600, 24 bits, 49.93 Hz
    .pixelclock   = 49500000,
    .hactive      = 1024    ,
    .hfront_porch = 475     ,
    .hback_porch  = 5       ,
    .hsync_len    = 5       ,
    .vactive      = 600     ,
    .vfront_porch = 47      ,
    .vback_porch  = 5       ,
    .vsync_len    = 5       ,
},
.dsi_timing = {
    .dlanes       = 4        ,
    .bitrate      = 380000000,
    .hsa          = 910      ,
    .hbp          = 908      ,
    .hfp          = 902      ,
    .hact         = 3072     ,
},
},

Количество сгенерированных таймингов определяется параметром nr_timing_generated в input.ini.

Обратите внимание: если файл output.txt создается в нескольких группах, не каждая группа будет работать правильно. Необходимо попробовать их поочередно, чтобы выбрать правильный тайминг для экрана.

Пример времени:

{
.dpi_timing = { //1024x600, 24 bits, 49.93 Hz
    .pixelclock   = 49500000,
    .hactive      = 1024    ,
    .hfront_porch = 475     ,
    .hback_porch  = 5       ,
    .hsync_len    = 5       ,
    .vactive      = 600     ,
    .vfront_porch = 47      ,
    .vback_porch  = 5       ,
    .vsync_len    = 5       ,
},
.dsi_timing = {
    .dlanes       = 4        ,
    .bitrate      = 380000000,
    .hsa          = 910      ,
    .hbp          = 908      ,
    .hfp          = 902      ,
    .hact         = 3072     ,
},

Внесите изменения в файл дерева устройств OK7110-C.dts:

1. Измените точкуsee_plane:

dlanes: Измените в соответствии с количеством каналов, используемых на экране.

ширина-мм, высота-мм, отображение данных: Измените в соответствии с фактической информацией на экране.

2. Измените узел mipi_dsi:

Битрейт, hsa, hbp, hfp; измените в соответствии с соответствующими значениями в Generation_timing.dsi_timing

3. Тайминг панели: данные тайминга панели, hactive и vactive заполняются в соответствии с фактическим значением экрана; остальная часть тайминга панели изменяется в соответствии с соответствующим содержимым в последовательности генерации Sequence.dpi_timing. панель-тайминг. Изменения заключаются в следующем:

panel-timing {
clock-frequency =;
hactive =;
vactive =;
hsync-len =;
hfront-porch =;
hback-porch =;
vfront-porch =;
vback-porch =;
vsync-len =;
};

После внесения изменений запишите новое дерево устройств в устройство и посмотрите, сможет ли оно отображаться правильно.

Если его не удается отобразить нормально, используйте оставшиеся тайминги в файле output.txt и продолжайте попытки в соответствии с описанными выше шагами; если его можно отобразить нормально, экранная адаптация завершена.

Первоначально опубликовано на www.forlinx.net.