реклама на сайте
подробности

 
 
> Управление ЖКИ, управление контроллером SPFD5408
Anatoly_P
сообщение Jun 5 2008, 11:07
Сообщение #1


Участник
*

Группа: Участник
Сообщений: 32
Регистрация: 3-05-08
Из: Minsk
Пользователь №: 37 240



привет всем! Люди добрые помогите кто чем может. Есть ЖКИ с контроллером SPDF5408. В даташите контроллера нашел таблицу кода инициализации, запрограммировал, В результате после инициализации на экране появляется шум. Вроде значить система работает ( были подозрения, что сжег). Но никак не могу точку или последовательность точек вывести. Загоняю данные в память ЖКИ через регистр R22h, а этот гребанный ЖКИ нифига не отображает. Уже третий день на месте стою, может кто подскажет куда копать.
ARM LPC2468. Плату под него сами разрабатывали.
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
kovz
сообщение Feb 3 2009, 08:03
Сообщение #2


Частый гость
**

Группа: Участник
Сообщений: 105
Регистрация: 25-07-05
Пользователь №: 7 079



Извини было много работы, некогда было отписаться.
Есть несколько вопросов:
1. Где настройка PLL, скорости памяти и тд.?(Надеюсь вынесено в low_level_init)
2. #define BUFFER_ADDR 0xA0000000 это хорошо, но как ты собираешся формировать там изображение. Тебе нужно выделить массив размером 240*320*2 байт, а точнее два таких массива. Пока из одного будет выводится картинка, ты во второй пишеш новую, а потом меняеш указатель из какого масива выводить.
3. Для чего задержки for(i=0;i<50000;i++);

А по поводу вывода на экран нет ничего проще! Отведите 307200(0x4B000) байт видеопамяти начая с адреса 0xA0000000 и разбейте на две части размером 320*240*2 байт, тоесть столько сколько необходимо на один экран. Далее используя Next base address update interrupt(введи в поиске по usermanual на LPC2478), подсовываеш ему то 0xA0000000, то 0xA0025800 в регистр LCD_UPBASE. А сам в это время в другой части буфера формируй изображение.

Если совсем просто, выведи статическую картинку, выдели в рам массив unsigned short LCD_Frame[76800] забей его чем нибуть осмысленным, и передай на вывод LCD контроллеру в LPC : LCD_UPBASE = &LCD_Frame[0];

Далее микроконтроллер сам выплюнет всё в экран.

Сообщение отредактировал kovz - Feb 3 2009, 08:04
Go to the top of the page
 
+Quote Post
Anatrulij
сообщение Feb 3 2009, 17:48
Сообщение #3


Участник
*

Группа: Новичок
Сообщений: 64
Регистрация: 7-11-08
Пользователь №: 41 437



Цитата(kovz @ Feb 3 2009, 12:03) *
Извини было много работы, некогда было отписаться.
Есть несколько вопросов:
1. Где настройка PLL, скорости памяти и тд.?(Надеюсь вынесено в low_level_init)
2. #define BUFFER_ADDR 0xA0000000 это хорошо, но как ты собираешся формировать там изображение. Тебе нужно выделить массив размером 240*320*2 байт, а точнее два таких массива. Пока из одного будет выводится картинка, ты во второй пишеш новую, а потом меняеш указатель из какого масива выводить.
3. Для чего задержки for(i=0;i<50000;i++);


Я уже заждался. biggrin.gif .

По поводу заданных вопросов:
1. PLL не использую, настройка памяти есть(запись, чтение проходит успешно)
2. Для видеобуфера использую SRAM, начиная с адреса 0х80000000.
3. Часть кода брал из другого источника, который сам уже и коректировал, там и была данная задержка. Если она не нужна, то я уберу?

Как выводить изображение вроде разобрался, но проблема в настройках развертки - выводит не то что хотелось бы.

Цитата(kovz @ Feb 3 2009, 12:03) *
7:2 PPL = 0x140(320) количество пикселей данных

В ДШ к контроллеру (как я понял) написано, что (320/16)-1 = 19

Так что я щас мучаюсь с настройкой LCD_TIMH, LCD_TIMV.
Если будут советы, то с удовольствием выслушаю biggrin.gif
Go to the top of the page
 
+Quote Post
kovz
сообщение Feb 4 2009, 13:00
Сообщение #4


Частый гость
**

Группа: Участник
Сообщений: 105
Регистрация: 25-07-05
Пользователь №: 7 079



Цитата(Anatrulij @ Feb 3 2009, 19:48) *
Как выводить изображение вроде разобрался, но проблема в настройках развертки - выводит не то что хотелось бы.


В ДШ к контроллеру (как я понял) написано, что (320/16)-1 = 19

Так что я щас мучаюсь с настройкой LCD_TIMH, LCD_TIMV.
Если будут советы, то с удовольствием выслушаю biggrin.gif

Опиши что выводит и что хочется. В чём именно проблема синхронизации? и по поводу установки количества точек в линии ты прав, я не досмотрел.
Go to the top of the page
 
+Quote Post
Anatrulij
сообщение Feb 5 2009, 06:07
Сообщение #5


Участник
*

Группа: Новичок
Сообщений: 64
Регистрация: 7-11-08
Пользователь №: 41 437



Цитата(kovz @ Feb 4 2009, 17:00) *
Опиши что выводит и что хочется. В чём именно проблема синхронизации? и по поводу установки количества точек в линии ты прав, я не досмотрел.


Уже выводит куда я хочу. НО!!! Я вывожу белый квадратик на черном фоне в центре экрана, а выводит светло желтый квадратик на феолетовом.
в чем может быть причина такого безобразия. Люди говорят, что дело в настройках LCD_TIMH, LCD_TIMV. Значение данных регистров я изменяю, а реакции ноль.
Go to the top of the page
 
+Quote Post
kovz
сообщение Feb 5 2009, 13:18
Сообщение #6


Частый гость
**

Группа: Участник
Сообщений: 105
Регистрация: 25-07-05
Пользователь №: 7 079



Цитата(Anatrulij @ Feb 5 2009, 08:07) *
Уже выводит куда я хочу. НО!!! Я вывожу белый квадратик на черном фоне в центре экрана, а выводит светло желтый квадратик на феолетовом.
в чем может быть причина такого безобразия. Люди говорят, что дело в настройках LCD_TIMH, LCD_TIMV. Значение данных регистров я изменяю, а реакции ноль.

Тут не подскажу, но мне кажеться копать нужно в направлении представлений цветов
поиграйся в регистре LCD_CTRL с настройками битов LcdBpp(3:1).
LCD_CTRL = ((1<<5) | (6<<1)); в этой строке замени 6 на 4

Сообщение отредактировал kovz - Feb 5 2009, 13:27
Go to the top of the page
 
+Quote Post
Anatrulij
сообщение Feb 5 2009, 14:44
Сообщение #7


Участник
*

Группа: Новичок
Сообщений: 64
Регистрация: 7-11-08
Пользователь №: 41 437



Цитата(kovz @ Feb 5 2009, 17:18) *
Тут не подскажу, но мне кажеться копать нужно в направлении представлений цветов
поиграйся в регистре LCD_CTRL с настройками битов LcdBpp(3:1).
LCD_CTRL = ((1<<5) | (6<<1)); в этой строке замени 6 на 4


Да, дело в настройках цвета. буду копать дальше.
СПАСИБО за ответы
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- Anatoly_P   Управление ЖКИ   Jun 5 2008, 11:07
- - Liderr   Цитата(Anatoly_P @ Jun 5 2008, 14:07) при...   Jan 24 2009, 20:54
- - rezident   Liderr, обращаю ваше внимание, что Anatoly_P разме...   Jan 24 2009, 21:43
- - at90   Liderr, а экран от оригинальной N95 или от китайск...   Jan 25 2009, 10:18
- - Anatrulij   Здраствуйте. Щас разбираюсь с понелью G057QN01 V0....   Jan 28 2009, 08:49
|- - kovz   Цитата(Anatrulij @ Jan 28 2009, 10:49) Зд...   Jan 28 2009, 09:12
|- - Anatrulij   Цитата(kovz @ Jan 28 2009, 12:12) в инете...   Jan 28 2009, 09:35
|- - kovz   Цитата(Anatrulij @ Jan 28 2009, 11:35) Я ...   Jan 28 2009, 09:41
|- - Anatrulij   Цитата(kovz @ Jan 28 2009, 12:41) нет при...   Jan 28 2009, 09:58
|- - kovz   Цитата(Anatrulij @ Jan 28 2009, 11:58) Да...   Jan 28 2009, 10:36
|- - Anatrulij   Цитата(kovz @ Jan 28 2009, 13:36) да в эт...   Jan 28 2009, 11:16
|- - kovz   Цитата(Anatrulij @ Jan 28 2009, 13:16) Бу...   Jan 29 2009, 09:44
|- - Anatrulij   Цитата(kovz @ Jan 29 2009, 12:44) Если бу...   Jan 29 2009, 11:53
|- - Anatrulij   Цитата(kovz @ Jan 29 2009, 12:44) Если бу...   Jan 29 2009, 13:42
|- - Wano   Цитата(Anatrulij @ Feb 5 2009, 16:44) Да,...   Feb 5 2009, 21:42
- - Jurdens   Цитата(kovz @ Feb 3 2009, 12:03) Извини б...   Aug 11 2009, 02:25


Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 24th July 2025 - 15:43
Рейтинг@Mail.ru


Страница сгенерированна за 0.01379 секунд с 7
ELECTRONIX ©2004-2016