Vladimir_T
Jan 25 2008, 16:05
Здравствуйте, уважаемые коллеги, посмотрите на картинку и подскажите как избавиться от этой грязи. Исходные данные: АРМ STR911, LCD контроллер S1D13705, 320х240 пассивная панель 8-ми битный интерфейс. Частота кадровая ок. 75 ГЦ, тактовая частота S1D13705 - 16 мГЦ. Пробовал настраивать VNDP, HNDP - не помогает. В видеопамяти мусора нет. Всегда верхние строки отбрасывают тень на нижние, тянутся шлейфы. Регулировка напряжения контраста не устраняет шлейфы. Как это победить?
ttsltd
Jan 26 2008, 08:21
Цитата(Vladimir_T @ Jan 25 2008, 19:05)

Здравствуйте, уважаемые коллеги, посмотрите на картинку и подскажите как избавиться от этой грязи. Исходные данные: АРМ STR911, LCD контроллер S1D13705, 320х240 пассивная панель 8-ми битный интерфейс. Частота кадровая ок. 75 ГЦ, тактовая частота S1D13705 - 16 мГЦ. Пробовал настраивать VNDP, HNDP - не помогает. В видеопамяти мусора нет. Всегда верхние строки отбрасывают тень на нижние, тянутся шлейфы. Регулировка напряжения контраста не устраняет шлейфы. Как это победить?
Желательно посмотреть текст установки регистров контролера.
Vladimir_T
Jan 28 2008, 08:36
Вот такие установки. У меня, правда, BCLK = CLKI = 6 мГц, думаю, что эти входы допустимо соединять вместе.
//**********************************************************
// Mode for S1D13705: Color , Format 2, 4 bpp, CLKI =6mHz
// PCLK =6mHz, LUT = 16; Widht of Word = 4 bit
//**********************************************************
static S1D_REGS aS1DRegs[] =
{
{ 0x00, 0x24 }, // Revision Code Register
{ 0x01, 0x27 }, // Mode Register 0 Register
{ 0x02, 0x80 }, // Mode Register 1 Register
{ 0x03, 0x03 }, // Mode Register 2 Register
{ 0x04, 0x27 }, // Horizontal Panel Size Register
{ 0x05, 0xEF }, // Vertical Panel Size Register (LSB)
{ 0x06, 0x00 }, // Vertical Panel Size Register (MSB)
{ 0x07, 0x00 }, // FPLINE Start Position Register
{ 0x08, 0x00 }, // Horizontal Non-Display Period Register
{ 0x09, 0x00 }, // FPFRAME Start Position Register
{ 0x0A, 0x00 }, // Vertical Non-Display Period Register
{ 0x0B, 0x00 }, // MOD Rate Register
{ 0x0C, 0x00 }, // Screen 1 Start Address Register (LSB)
{ 0x0D, 0x00 }, // Screen 1 Start Address Register (MSB)
{ 0x0E, 0x00 }, // Screen 2 Start Address Register (LSB)
{ 0x0F, 0x00 }, // Screen 2 Start Address Register (MSB)
{ 0x10, 0x00 }, // Screen Start Address Overflow Register
{ 0x11, 0x00 }, // Memory Address Offset Register
{ 0x12, 0xFF }, // Screen 1 Vertical Size Register (LSB)
{ 0x13, 0x03 }, // Screen 1 Vertical Size Register (MSB)
{ 0x14, 0x00 }, // Not Used
{ 0x15, 0x00 }, // Look-Up Table Address Register
{ 0x16, 0x00 }, // Not Used
{ 0x17, 0x00 }, // Look-Up Table Data Register
{ 0x18, 0x00 }, // GPIO Configuration Control Register
{ 0x19, 0x00 }, // GPIO Status/Control Register
{ 0x1A, 0x00 }, // Scratch Pad Register
{ 0x1B, 0x00 }, // SwivelView Mode Register
{ 0x1C, 0x00 }, // Line Byte Count Register
{ 0x1D, 0x00 }, // Not Used
{ 0x1E, 0x00 }, // Not Used
{ 0x1F, 0x00 }, // Not Used
};
lebiga
Jan 28 2008, 09:31
Что-то не понял, программка 13705cfg.exe для 16 Мгц показывает 142 Гц кадровую.
Поробуй сделать все так, как рассчитает программка, да и качество картинки будет выше, чем самостоятельно по теории поставить.
Эта тема уже подымалась, пользуйтесь поиском
Vladimir_T
Jan 28 2008, 11:41
Этой утилитой пользовался, но она не помогает. Как отобразится первая строка, так и тянется от нее шлейф, который и портит картину.
lebiga
Jan 28 2008, 12:12
Цитата(Vladimir_T @ Jan 28 2008, 14:41)

Этой утилитой пользовался, но она не помогает. Как отобразится первая строка, так и тянется от нее шлейф, который и портит картину.
Какие параметры вводил - уточни!
а то данные в строках ниже разбегаются с описанными сначала. 4 бита - глубина цвета?
частота CLKI - 6 или 16 МГц? делится ли на 2? Как тестируешь - записал строку и стоп - смотрим на экран?
//**********************************************************
// Mode for S1D13705: Color , Format 2, 4 bpp, CLKI =6mHz
// PCLK =6mHz, LUT = 16; Widht of Word = 4 bit
//**********************************************************
Я BCLK и CLKI тоже соединял, но они у меня 25Мгц, и CLKI внутри делился на 2.
Введи свои данные в прогу и скажи - какая кадровая получилась?
Vladimir_T
Jan 28 2008, 13:15
Вот на этих параметрах остановился, их ввел в программу конфигурирования:
//Mode for S1D13705: Color , Format 2, 4 bpp, CLKI =12mHz
// PCLK =6mHz, LUT = 16; Widht of Word = 4 bit
4 бита - глубина цвета, утилита рассчитала кадровую f=53 Гц
{ 0x00, 0x24 }, // Revision Code Register
{ 0x01, 0x23 }, // Mode Register 0 Register
{ 0x02, 0xB0 }, // Mode Register 1 Register
{ 0x03, 0x03 }, // Mode Register 2 Register
{ 0x04, 0x27 }, // Horizontal Panel Size Register
{ 0x05, 0xEF }, // Vertical Panel Size Register (LSB)
{ 0x06, 0x00 }, // Vertical Panel Size Register (MSB)
{ 0x07, 0x05 }, // FPLINE Start Position Register
{ 0x08, 0x0C }, // Horizontal Non-Display Period Register
{ 0x09, 0x04 }, // FPFRAME Start Position Register
{ 0x0A, 0x0B }, // Vertical Non-Display Period Register
Тетирую так: вывожу последовательно друг за другом белые строки на всю длину экрана. Если мало строк ( до 50) - их почти не видно , когда их более 80, тогда все строки постепенно проявляются, когда их более 180, то весь экран постепенно тускнеет. Если делаю контраст по первым строкам, получаю после первых же строк белый экран, хотя он пустой. Если контраст по средним строкам, то наоборот, первых не видно.
lebiga
Jan 28 2008, 13:52
Цитата(Vladimir_T @ Jan 28 2008, 16:15)

Вот на этих параметрах остановился, их ввел в программу конфигурирования:
//Mode for S1D13705: Color , Format 2, 4 bpp, CLKI =12mHz
// PCLK =6mHz, LUT = 16; Widht of Word = 4 bit
У меня, если ставлю Data Width = 4, Format2 задать не могу! Поле скрыто!
Может прога старая у тебя? Воспользуйся той, что я выложил!
Еще проверь питание прямо на индикаторе - не проседает-ли...
Vladimir_T
Jan 28 2008, 14:21
У меня Data Width = 8,
а Widht of Word = 4 bit, это я длина слова в видеопамяти = глубина цвета.
Питание в норме, без просадок.
ttsltd
Jan 28 2008, 18:10
Цитата(Vladimir_T @ Jan 28 2008, 17:21)

У меня Data Width = 8,
а Widht of Word = 4 bit, это я длина слова в видеопамяти = глубина цвета.
Питание в норме, без просадок.
У меня кварц на понельки стоит менял с 16МГЦ до 40 панель СТН 8 бит клоки идут с одного кварца.Один контролер к Меге 128 подсоеденен.Другой к LPC2294 /И если генерить по приложеной проги все идет.
singlskv
Jan 28 2008, 20:50
Цитата(Vladimir_T @ Jan 25 2008, 19:05)

Здравствуйте, уважаемые коллеги, посмотрите на картинку и подскажите как избавиться от этой грязи.
А откуда выводите картинку ? Случайно не с SDRAM ?
Очень похоже на проблемы с какой то памятью, или проинициализированно
где то неправильно, или где то кто то не успевает.
Похожую картинку наблюдал при выводе с AVR32 AP7000 на TFT, оказалось бага в
апликейшене при инициализации SDRAM.
Типа пишу в память и тут же читаю, все Оk, пишу и делаю паузу перед чтением/проверкой
памяти и там мусор...
Vladimir_T
Jan 29 2008, 08:19
Спасибо всем за полезные советы и участие. Привезли другую такую же панель и с ней все сразу пошло: картина - маслом! А вот ту, первую, видать я сам погубил.
Для просмотра полной версии этой страницы, пожалуйста,
пройдите по ссылке.