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

 
 
4 страниц V   1 2 3 > »   
Reply to this topicStart new topic
> EP9307, настройка видеоадаптера
metalkain
сообщение Sep 14 2006, 07:36
Сообщение #1


Участник
*

Группа: Новичок
Сообщений: 42
Регистрация: 14-09-06
Из: Москва
Пользователь №: 20 373



Здравствуйте!

Не могу достичь вывода информации на монитор.
Измеряю сигналы на контактах с помощью осциллографа - все статичны (на мой взгляд, никакой информации на монитор не поступает).
Настраиваю следующие регистры всевозможными образами, но эффекта никакого:
VidClkDiv
VLinesTotal
VSynStrtStop
VActiveStrtStop
VBlankStrtStop
VClkStrtStop
HClkTotal
HSynStrtStop
HActiveStrtStop
HBlankStrtStop
HClkStrtStop
VideoAttribs
VidScrnPage
ScrnLines
LineLenght
VLineStep
PixelMode
Нужно ли настраивать регистры ClkSet1 и ClkSet2 для получения хоть каких-нибудь сигналов на разъеме?
Наверняка упустил какую-то тривиальную, но важную вещь...

Сообщение отредактировал metalkain - Sep 14 2006, 07:42


--------------------
Мне триста лет - я выполз из тьмы...
Go to the top of the page
 
+Quote Post
aaarrr
сообщение Sep 14 2006, 09:32
Сообщение #2


Гуру
******

Группа: Свой
Сообщений: 10 713
Регистрация: 11-12-04
Пользователь №: 1 448



Цитата(metalkain @ Sep 14 2006, 11:36) *
Нужно ли настраивать регистры ClkSet1 и ClkSet2 для получения хоть каких-нибудь сигналов на разъеме?

Если в качестве источника клока используется PLL1 или PLL2, очевидно, да.

Цитата(metalkain @ Sep 14 2006, 11:36) *
Не могу достичь вывода информации на монитор.

Проверьте, есть ли запись SysSWLock и RasterSWLock там, где это необходимо; сброшены ли биты RAS и EXVC в DeviceCfg.

Наверное, стоит опубликовать код инициализации.
Go to the top of the page
 
+Quote Post
metalkain
сообщение Sep 14 2006, 16:08
Сообщение #3


Участник
*

Группа: Новичок
Сообщений: 42
Регистрация: 14-09-06
Из: Москва
Пользователь №: 20 373



Благодарю, aaarrr. Именно в SysSWLock и RasterSWLock, похоже, и было дело, хоть и допер до этого независимо. Верно, телепатияsmile.gif


--------------------
Мне триста лет - я выполз из тьмы...
Go to the top of the page
 
+Quote Post
metalkain
сообщение Sep 21 2006, 14:47
Сообщение #4


Участник
*

Группа: Новичок
Сообщений: 42
Регистрация: 14-09-06
Из: Москва
Пользователь №: 20 373



Похоже, погорячился, сказав, что разобрался, в чем дело(
Задача прежняя: вывести хоть что-нибудь на монитор.
Какие системы необходимо настроить?
Надо ли настраивать SDRAM?

ClkSet1= 0x00039A67; //0000 0000 0000 0011 10011 010011 00111

for(int i=0;i<0xFFFF;i++){ asm("nop;");}
printf("Hello, Man!\n\n");

SysSWLock= 0xAA;
VidClkDiv= 0x0000C102; //0000 0000 0000 0000 1100 0001 0000 0010

//Setting up SDRAM
SDRAMDevCfg0= 0x01220008; //00000001 0010 0010 00000000 0000 10 00

for(int i=0;i<0xFFFF;i++){ asm("nop;");}//waiting for 200mks
GIConfig= 0x00000001; //00 00000000000000 00000000 000 000 01
RefrshTimr= 0x00000190; //400d - 16ms with 92,16MHz clock
GIConfig= 0x00000000; //00 00000000000000 00000000 000 000 00

/*640*480 4bpp video mode*/
RasterSWLock= 0xAA;
VideoAttribs= 0x0000C0AF; //0000 0000 0 00 0 0000 1100 0 000 1000 1111

VidScrnPage=(unsigned long)&VideoPage[0];
ScrnLines= 479;
LineLength= 0x4F;
VLineStep= 0x4F;

RasterSWLock= 0xAA;
VSyncStrtStop= 0x01DF01DC;
RasterSWLock= 0xAA;
VActiveStrtStop=0x01DA0006;
RasterSWLock= 0xAA;
VBlankStrtStop= 0x01DA0006;
RasterSWLock= 0xAA;
VClkStrtStop= 0x01D5000B;

RasterSWLock= 0xAA;
HSyncStrtStop= 0x02930290;
RasterSWLock= 0xAA;
HActiveStrtStop=0x029E0006;
RasterSWLock= 0xAA;
HBlankStrtStop= 0x029E0006;
RasterSWLock= 0xAA;
HClkStrtStop= 0x0299000B;

RasterSWLock= 0xAA;
VLinesTotal= 479;
RasterSWLock= 0xAA;
HClkTotal= 659;

Pixelmode= 0x1;


--------------------
Мне триста лет - я выполз из тьмы...
Go to the top of the page
 
+Quote Post
aaarrr
сообщение Sep 23 2006, 19:20
Сообщение #5


Гуру
******

Группа: Свой
Сообщений: 10 713
Регистрация: 11-12-04
Пользователь №: 1 448



Цитата(metalkain @ Sep 21 2006, 18:47) *
Похоже, погорячился, сказав, что разобрался, в чем дело(
Задача прежняя: вывести хоть что-нибудь на монитор.
Какие системы необходимо настроить?
Надо ли настраивать SDRAM?

SDRAM настраивать нужно. У Вас это делается не совсем корректно, но работать должно.
Также после записи ClkSet1 нужно добавить 5 nop'ов.

Регистр VLineStep должен иметь значение 0x50, а не 0x4F.

Для вывода в режиме 4 бита на точку должна быть загружена палитра в LUT.

Что сейчас происходит с сигналами синхронизации?
Go to the top of the page
 
+Quote Post
metalkain
сообщение Sep 25 2006, 07:57
Сообщение #6


Участник
*

Группа: Новичок
Сообщений: 42
Регистрация: 14-09-06
Из: Москва
Пользователь №: 20 373



Цитата
Для вывода в режиме 4 бита на точку должна быть загружена палитра в LUT.

Как это сделать?
1. Подозреваю, нужно в PixelMode установить бит C3 (Grayscale Palettes Enabled). Так ли это?
2. Нужно ли настраивать ColorLUT и GrySclLUTx регистры?

Сообщение отредактировал metalkain - Sep 25 2006, 08:23


--------------------
Мне триста лет - я выполз из тьмы...
Go to the top of the page
 
+Quote Post
aaarrr
сообщение Sep 25 2006, 12:20
Сообщение #7


Гуру
******

Группа: Свой
Сообщений: 10 713
Регистрация: 11-12-04
Пользователь №: 1 448



Цитата(metalkain @ Sep 25 2006, 11:57) *
Цитата

Для вывода в режиме 4 бита на точку должна быть загружена палитра в LUT.

Как это сделать?
1. Подозреваю, нужно в PixelMode установить бит C3 (Grayscale Palettes Enabled). Так ли это?
2. Нужно ли настраивать ColorLUT и GrySclLUTx регистры?

1. Нет. У Вас ведь TFT экран?
2. ColorLUT настраивать нужно.
Go to the top of the page
 
+Quote Post
metalkain
сообщение Sep 25 2006, 16:03
Сообщение #8


Участник
*

Группа: Новичок
Сообщений: 42
Регистрация: 14-09-06
Из: Москва
Пользователь №: 20 373



Цитата
1. Нет. У Вас ведь TFT экран?
2. ColorLUT настраивать нужно.

Благодарю, aaarrr. Но появляются новые вопросы
1. В том-то и дело, что CRT (Philips 105B). Потом вероятен переход на портативное индикаторное устройство, но на данный момент необходимо добиться результата на этом мониторе.
2. Как я понял, имеется по одному регистру GrySclLUTx для каждого цвета, которые названы в User's Guide'е "Grayscale Look-Up-Tables". Вопрос такой: как заполнять эти таблицы, если регистров всего лишь 3 (хотя написано, что их по 32 каждого)? Надо ли это делать вручную? Они (эти таблицы) уже существуют, или их надо создавать, основываясь на характеристиках монитора?
3. На чем основывается выбор между FRAME_CNT3 и FRAME_CNT4 и тд?
4. Зачем вообще нужен регистр (регистры? - я теперь совсем запутался: их тоже вроде 256) ColorLUT?

Сообщение отредактировал metalkain - Sep 25 2006, 16:05


--------------------
Мне триста лет - я выполз из тьмы...
Go to the top of the page
 
+Quote Post
metalkain
сообщение Sep 28 2006, 15:14
Сообщение #9


Участник
*

Группа: Новичок
Сообщений: 42
Регистрация: 14-09-06
Из: Москва
Пользователь №: 20 373



Загрузил LUTы. После этого обнаружил на выводах сигналы HSync (~310KHz), VSync (~74Hz). Монитор даже отреагировал на это, вспыхнув светодиодом другого цвета. Теперь недоумеваю, почему не видно информационных сигналов. Может это быть связано с установкой регистров развертки, регистра Brightness, неверной записью информации в память?


--------------------
Мне триста лет - я выполз из тьмы...
Go to the top of the page
 
+Quote Post
aaarrr
сообщение Sep 28 2006, 20:31
Сообщение #10


Гуру
******

Группа: Свой
Сообщений: 10 713
Регистрация: 11-12-04
Пользователь №: 1 448



Цитата(metalkain @ Sep 25 2006, 20:03) *
1. В том-то и дело, что CRT (Philips 105B).

CRT с точки зрения контроллера - почти то же самое, что и TFT LCD.

Цитата(metalkain @ Sep 25 2006, 20:03) *
2. Как я понял, имеется по одному регистру GrySclLUTx для каждого цвета, которые названы в User's Guide'е "Grayscale Look-Up-Tables". Вопрос такой: как заполнять эти таблицы, если регистров всего лишь 3 (хотя написано, что их по 32 каждого)? Надо ли это делать вручную? Они (эти таблицы) уже существуют, или их надо создавать, основываясь на характеристиках монитора?

3. На чем основывается выбор между FRAME_CNT3 и FRAME_CNT4 и тд?

Grayscale LUTs нужны для STN и CSTN экранов, для формирования полутонов при помощи FRC (своеобразный ШИМ). У Вас, как я понимаю, на выходе стоит нормальный ЦАП.

Цитата(metalkain @ Sep 25 2006, 20:03) *
4. Зачем вообще нужен регистр (регистры? - я теперь совсем запутался: их тоже вроде 256) ColorLUT?

Для формирования на выходе 15-, 16- или 24-бит цвета из данных размерностью 8 и менее бит.

Цитата(metalkain @ Sep 28 2006, 19:14) *
Загрузил LUTы. После этого обнаружил на выводах сигналы HSync (~310KHz), VSync (~74Hz). Монитор даже отреагировал на это, вспыхнув светодиодом другого цвета. Теперь недоумеваю, почему не видно информационных сигналов. Может это быть связано с установкой регистров развертки, регистра Brightness, неверной записью информации в память?

Очень странно. Никакой взаимосвязи между LUT и синхронизацией нет. Разве что монитор начал синхронизироваться по каналу зеленого.

HSync 310KHz - это далеко за рабочими пределами монитора. Опечатка?

Регистр Brightness управляет ШИМ'ом на соответствующем пине для регулировки яркости подсветки.



Настоятельно рекомендую внимательно почитать мануал на процессор и AN269 Using the EP93xx's Raster Engine.
Go to the top of the page
 
+Quote Post
metalkain
сообщение Sep 29 2006, 15:23
Сообщение #11


Участник
*

Группа: Новичок
Сообщений: 42
Регистрация: 14-09-06
Из: Москва
Пользователь №: 20 373



Вы правы, aaarrr, связи между синхронизацией и LUTами не оказалось. Я ошибся.
Частоты подправил. Теперь 77Hz, 37KHz.
Информационных сигналов нет по-прежнему.
Допустимо ли определение:
unsigned long VideoPage[38400];
VidScrnPage=(unsigned long)&VideoPage[0];?
Если предположить, что SDRAM настроена верно, как можно объяснить отсутствие сигналов RGB?

Сообщение отредактировал metalkain - Sep 29 2006, 15:26


--------------------
Мне триста лет - я выполз из тьмы...
Go to the top of the page
 
+Quote Post
aaarrr
сообщение Sep 29 2006, 16:59
Сообщение #12


Гуру
******

Группа: Свой
Сообщений: 10 713
Регистрация: 11-12-04
Пользователь №: 1 448



Цитата(metalkain @ Sep 29 2006, 19:23) *
Допустимо ли определение:
unsigned long VideoPage[38400];
VidScrnPage=(unsigned long)&VideoPage[0];?

Допустимо. У меня еще маскировались старшие 4 бита, но
не уверен, что это необходимо.

Цитата(metalkain @ Sep 29 2006, 19:23) *
Если предположить, что SDRAM настроена верно, как можно объяснить отсутствие сигналов RGB?

Вы не забыли после загрузки переключить SWTCH в LUTSwCtrl?
Go to the top of the page
 
+Quote Post
metalkain
сообщение Oct 6 2006, 15:21
Сообщение #13


Участник
*

Группа: Новичок
Сообщений: 42
Регистрация: 14-09-06
Из: Москва
Пользователь №: 20 373



Получил изображение. Но на экран выводится лишь 231 строка (при желаемых 480-ти). Как настроить V-регистры?

Сообщение отредактировал metalkain - Oct 6 2006, 16:06


--------------------
Мне триста лет - я выполз из тьмы...
Go to the top of the page
 
+Quote Post
aaarrr
сообщение Oct 6 2006, 16:30
Сообщение #14


Гуру
******

Группа: Свой
Сообщений: 10 713
Регистрация: 11-12-04
Пользователь №: 1 448



Цитата(metalkain @ Oct 6 2006, 19:21) *
Получил изображение. Но на экран выводится лишь 231 строка (при желаемых 480-ти). Как настроить V-регистры?


Выводится или наблюдается на экране? Откуда такая точность - 231?
Go to the top of the page
 
+Quote Post
metalkain
сообщение Oct 9 2006, 15:54
Сообщение #15


Участник
*

Группа: Новичок
Сообщений: 42
Регистрация: 14-09-06
Из: Москва
Пользователь №: 20 373



Цитата(aaarrr @ Oct 6 2006, 20:30) *
Выводится или наблюдается на экране? Откуда такая точность - 231?

На данный момент имею следующую картину.
1. Начало видеостраницы находится в левом верхнем углу.
2. В строке 80 слов (т.е. если выводить слова с номерами, кратными 80-ти, получается ровный вертикальный столбец), из которых отображаются 70 слов целиком и начало 70-го слова (считая с нуля).
3. На экране нормально отображается теперь 241 строка. Строки с 241-й по 350-ю не видны. Строки с номерами от 351-й и далее отображаются начиная с верха экрана со смещением 12 слов влево от нормального расположения.

При коде
VideoPage[0]= 0x66666666;
for(int i=0;i<480;i++)
VideoPage[i*80+20]= 0x77777777;
получаю примерно следующее изображение:

1....3..........2................................
......3..........2................................
......3..........2................................
......3..........2................................
..................2................................
..................2................................
..................2................................

где 1 - первое слово видеостраницы, 2 - слова [20; 240*80+20], 3 - слова [351*80+20; 480*80+20].

Сообщение отредактировал metalkain - Oct 9 2006, 15:57


--------------------
Мне триста лет - я выполз из тьмы...
Go to the top of the page
 
+Quote Post

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

 


RSS Текстовая версия Сейчас: 20th June 2025 - 12:45
Рейтинг@Mail.ru


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