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

 
 
> uC/GUI, нужна документация
Shedon
сообщение May 3 2005, 12:27
Сообщение #1


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

Группа: Свой
Сообщений: 110
Регистрация: 30-11-04
Из: Nizhny Novgorod
Пользователь №: 1 262



Кто имеет сабж, поделитесь плиз, особенно, интересуют главы посвящённые WM.

E-mail: shedon[at]mail.ru

Заранее спасибо!
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
qVlad
сообщение Feb 3 2011, 12:17
Сообщение #2


Участник
*

Группа: Участник
Сообщений: 41
Регистрация: 10-01-11
Из: Санкт-Петербург
Пользователь №: 62 125



Кто пробовал использовать эту библиотеку для дисплей без контроллера? Нужна помощь
Go to the top of the page
 
+Quote Post
AlexandrY
сообщение Feb 3 2011, 14:16
Сообщение #3


Ally
******

Группа: Модераторы
Сообщений: 6 232
Регистрация: 19-01-05
Пользователь №: 2 050



Цитата(qVlad @ Feb 3 2011, 14:17) *
Кто пробовал использовать эту библиотеку для дисплей без контроллера? Нужна помощь


Библиотека не имеет отношения к контроллерам.
Go to the top of the page
 
+Quote Post
qVlad
сообщение Feb 4 2011, 09:27
Сообщение #4


Участник
*

Группа: Участник
Сообщений: 41
Регистрация: 10-01-11
Из: Санкт-Петербург
Пользователь №: 62 125



Цитата(AlexandrY @ Feb 3 2011, 17:16) *
Библиотека не имеет отношения к контроллерам.


Как это не имеет она конфигурируется под определенный контроллер дисплея, файл LCDConf. При работе с дисплеями без контроллера, необходима самостоятельная разработка базовых операций, как я понимаю.
Поделитесь файлом LCDMemc.c если у кого есть.

Сообщение отредактировал qVlad - Feb 4 2011, 09:30
Go to the top of the page
 
+Quote Post
scorp2011
сообщение Feb 4 2011, 23:11
Сообщение #5


Участник
*

Группа: Участник
Сообщений: 72
Регистрация: 29-01-11
Пользователь №: 62 559



Если Вы имеете в виду без конроллера это когда контроллер LCD находится в микроконтроллере, например в АРМе LPC3250 и дисплей подключен к RGB VSYNC HSYNC то тогда не нужно ничего дополнительно. Установите драйвер типа ...LIN_24... не помню сейчас полное название. Ему не нужны базовые операции, он пишет сразу в память которая является видео памятью в микроконтроллере.
Go to the top of the page
 
+Quote Post
qVlad
сообщение Feb 7 2011, 11:02
Сообщение #6


Участник
*

Группа: Участник
Сообщений: 41
Регистрация: 10-01-11
Из: Санкт-Петербург
Пользователь №: 62 125



Цитата(scorp2011 @ Feb 5 2011, 02:11) *
Если Вы имеете в виду без конроллера это когда контроллер LCD находится в микроконтроллере, например в АРМе LPC3250 и дисплей подключен к RGB VSYNC HSYNC то тогда не нужно ничего дополнительно. Установите драйвер типа ...LIN_24... не помню сейчас полное название. Ему не нужны базовые операции, он пишет сразу в память которая является видео памятью в микроконтроллере.


Да, именно это я и имел ввиду. У кого-нибудь есть LCDLin32 поддерживающий 32bpp??
Go to the top of the page
 
+Quote Post
scorp2011
сообщение Feb 7 2011, 13:32
Сообщение #7


Участник
*

Группа: Участник
Сообщений: 72
Регистрация: 29-01-11
Пользователь №: 62 559



Цитата(qVlad @ Feb 7 2011, 15:02) *
Да, именно это я и имел ввиду. У кого-нибудь есть LCDLin32 поддерживающий 32bpp??

Не нужно вам ничего.
__no_init static UNS_32 LCD_VRAM[VRAM_SIZE];
void LCD_X_Config(void)
{

GUI_DEVICE_CreateAndLink( GUIDRV_LIN_32, LCD_FIXEDPALETTE, 0, 0);

LCD_SetSizeEx(0, LCD_XSIZE, LCD_YSIZE); // Physical display size in pixels
LCD_SetVSizeEx(0, LCD_XSIZE, LCD_YSIZE); // Virtual display size in pixels
LCD_SetVRAMAddrEx(0, (void *)LCD_VRAM); // Video RAM start address

}
Берёте любои образец и в нём редактируете эту функцию. LCD_VRAM это ваша видео память в ОЗУ. Она будет разворачиваться на дисплеи. Ну а все функции рисования будут рисовать в нее напрямую
Go to the top of the page
 
+Quote Post
qVlad
сообщение Feb 7 2011, 13:41
Сообщение #8


Участник
*

Группа: Участник
Сообщений: 41
Регистрация: 10-01-11
Из: Санкт-Петербург
Пользователь №: 62 125



Цитата(scorp2011 @ Feb 7 2011, 16:32) *
Не нужно вам ничего.
__no_init static UNS_32 LCD_VRAM[VRAM_SIZE];
void LCD_X_Config(void)
{

GUI_DEVICE_CreateAndLink( GUIDRV_LIN_32, LCD_FIXEDPALETTE, 0, 0);

LCD_SetSizeEx(0, LCD_XSIZE, LCD_YSIZE); // Physical display size in pixels
LCD_SetVSizeEx(0, LCD_XSIZE, LCD_YSIZE); // Virtual display size in pixels
LCD_SetVRAMAddrEx(0, (void *)LCD_VRAM); // Video RAM start address

}
Берёте любои образец и в нём редактируете эту функцию. LCD_VRAM это ваша видео память в ОЗУ. Она будет разворачиваться на дисплеи. Ну а все функции рисования будут рисовать в нее напрямую


Я использовал LCDLin32 и конфиг для него, включил нужные значения. прописал необходимый адрес видео памяти. Картинку я получил, но мой вариант LCDLin32 не поддерживает 32-битные цвета. И картинка почему-то в четверть экрана получилась.
Любой образец чего брать? Нигде не нашел используемых вами функций.
Go to the top of the page
 
+Quote Post
scorp2011
сообщение Feb 7 2011, 14:17
Сообщение #9


Участник
*

Группа: Участник
Сообщений: 72
Регистрация: 29-01-11
Пользователь №: 62 559



Цитата(qVlad @ Feb 7 2011, 16:41) *
Я использовал LCDLin32 и конфиг для него, включил нужные значения. прописал необходимый адрес видео памяти. Картинку я получил, но мой вариант LCDLin32 не поддерживает 32-битные цвета. И картинка почему-то в четверть экрана получилась.
Любой образец чего брать? Нигде не нашел используемых вами функций.

Может вы сам видеоконтроллер не правильно запрограмировали на развёртку?
Go to the top of the page
 
+Quote Post
qVlad
сообщение Feb 7 2011, 14:36
Сообщение #10


Участник
*

Группа: Участник
Сообщений: 41
Регистрация: 10-01-11
Из: Санкт-Петербург
Пользователь №: 62 125



Цитата(scorp2011 @ Feb 7 2011, 17:17) *
Может вы сам видеоконтроллер не правильно запрограмировали на развёртку?

Нет, контроллер настроен правильно, но он рассчитан на 32 bpp, а конфиг прописан на 16, так как в тех исходниках которые у меня есть не реализована поддержка 32 bpp вот я и получил 4 экрана.
Какая у вас версия GUI?
Go to the top of the page
 
+Quote Post
scorp2011
сообщение Feb 7 2011, 16:00
Сообщение #11


Участник
*

Группа: Участник
Сообщений: 72
Регистрация: 29-01-11
Пользователь №: 62 559



Цитата(qVlad @ Feb 7 2011, 17:36) *
Нет, контроллер настроен правильно, но он рассчитан на 32 bpp, а конфиг прописан на 16, так как в тех исходниках которые у меня есть не реализована поддержка 32 bpp вот я и получил 4 экрана.
Какая у вас версия GUI?

2.31 ARM

Вы вызываете GUI_DEVICE_CreateAndLink( GUIDRV_LIN_32...) ?
Go to the top of the page
 
+Quote Post
qVlad
сообщение Feb 7 2011, 16:37
Сообщение #12


Участник
*

Группа: Участник
Сообщений: 41
Регистрация: 10-01-11
Из: Санкт-Петербург
Пользователь №: 62 125



Цитата(scorp2011 @ Feb 7 2011, 19:00) *
2.31 ARM

Вы вызываете GUI_DEVICE_CreateAndLink( GUIDRV_LIN_32...) ?


Извините, я вас не понимаю, наверное. Где я это должен был вызвать? Могу приложить LCDConf файл.

Go to the top of the page
 
+Quote Post
scorp2011
сообщение Feb 7 2011, 17:35
Сообщение #13


Участник
*

Группа: Участник
Сообщений: 72
Регистрация: 29-01-11
Пользователь №: 62 559



Цитата(qVlad @ Feb 7 2011, 19:37) *
Извините, я вас не понимаю, наверное. Где я это должен был вызвать? Могу приложить LCDConf файл.

мне тяжело транслитом писать. черз час из дома напишу
Go to the top of the page
 
+Quote Post
qVlad
сообщение Feb 7 2011, 17:41
Сообщение #14


Участник
*

Группа: Участник
Сообщений: 41
Регистрация: 10-01-11
Из: Санкт-Петербург
Пользователь №: 62 125



Цитата(scorp2011 @ Feb 7 2011, 20:35) *
мне тяжело транслитом писать. черз час из дома напишу

Хорошо
Go to the top of the page
 
+Quote Post
scorp2011
сообщение Feb 7 2011, 19:01
Сообщение #15


Участник
*

Группа: Участник
Сообщений: 72
Регистрация: 29-01-11
Пользователь №: 62 559



Вообщем LCDConf.c должен в себе иметь void LCD_X_Config(void) в которой вы и указываете какой драйвер использовать и какие настройки у него будут. Мой пример void LCD_X_Config(void) уже имеет GUIDRV_LIN_32, тоесть вызывая GUI_DEVICE_CreateAndLink вы указываете тип драйвера. GUIDRV_LIN_32 это простой драйвер который использует ОЗУ, никакие дополнительные функции низкого уровня не нужны. Но для нормальной раьоты нужно указать еще палитру. У меня в примере это моя константа LCD_FIXEDPALETTE. Я 32bpp не использовал но думаю палитра GUICC_888 должна работать. Задайте поиск в h файлах какие палитры существуют и на месте разберётесь.
void LCD_X_Config(void) должет кроме указания драйвера вызывать
LCD_SetSizeEx(0, LCD_XSIZE, LCD_YSIZE); // Physical display size in pixels
LCD_SetVSizeEx(0, LCD_XSIZE, LCD_YSIZE); // Virtual display size in pixels
LCD_SetVRAMAddrEx(0, (void *)LCD_VRAM); // Video RAM start address
Таким образом вы создаете свою LCD_X_Config.
Всё это, хоть и не очень подробно, описано в PowerPac_GUI.ENU.pdf.
Еще есть LCD_X_DisplayDriver(). Её вызывает GUI_Init() несколько раз с разными параметрами команды, смотри стр 620 описания. Тоесть вы создаете свою LCD_X_DisplayDriver() и определяете какая команда пришла и уже конфигурируете свой контроллер и сам дисплей на низком уровне(а не гдето отдельно от GUI).
Кстати на странице 624 пример использования драйверов GUIDRV_LIN_х
Если я опять не в тему написал, то выкладывайте свой LCDConf.c
Go to the top of the page
 
+Quote Post
qVlad
сообщение Feb 7 2011, 19:08
Сообщение #16


Участник
*

Группа: Участник
Сообщений: 41
Регистрация: 10-01-11
Из: Санкт-Петербург
Пользователь №: 62 125



Цитата(scorp2011 @ Feb 7 2011, 22:01) *
Вообщем LCDConf.c должен в себе иметь void LCD_X_Config(void) в которой вы и указываете какой драйвер использовать и какие настройки у него будут. Мой пример void LCD_X_Config(void) уже имеет GUIDRV_LIN_32, тоесть вызывая GUI_DEVICE_CreateAndLink вы указываете тип драйвера. GUIDRV_LIN_32 это простой драйвер который использует ОЗУ, никакие дополнительные функции низкого уровня не нужны. Но для нормальной раьоты нужно указать еще палитру. У меня в примере это моя константа LCD_FIXEDPALETTE. Я 32bpp не использовал но думаю палитра GUICC_888 должна работать. Задайте поиск в h файлах какие палитры существуют и на месте разберётесь.
void LCD_X_Config(void) должет кроме указания драйвера вызывать
LCD_SetSizeEx(0, LCD_XSIZE, LCD_YSIZE); // Physical display size in pixels
LCD_SetVSizeEx(0, LCD_XSIZE, LCD_YSIZE); // Virtual display size in pixels
LCD_SetVRAMAddrEx(0, (void *)LCD_VRAM); // Video RAM start address
Таким образом вы создаете свою LCD_X_Config.
Всё это, хоть и не очень подробно, описано в PowerPac_GUI.ENU.pdf.
Еще есть LCD_X_DisplayDriver(). Её вызывает GUI_Init() несколько раз с разными параметрами команды, смотри стр 620 описания. Тоесть вы создаете свою LCD_X_DisplayDriver() и определяете какая команда пришла и уже конфигурируете свой контроллер и сам дисплей на низком уровне(а не гдето отдельно от GUI).
Кстати на странице 624 пример использования драйверов GUIDRV_LIN_х
Если я опять не в тему написал, то выкладывайте свой LCDConf.c


Теперь все ясно, мы с вами описываем одни и те же действия только разными способами. А где вы указываете сколько битов на точку используется? Можете найти у себя файл с названием LCDLin32.с должен быть в папке LCDDrivers и посмотреть поддерживает ли он LCD_BITSPERPIXEL = 32
Go to the top of the page
 
+Quote Post
scorp2011
сообщение Feb 7 2011, 19:20
Сообщение #17


Участник
*

Группа: Участник
Сообщений: 72
Регистрация: 29-01-11
Пользователь №: 62 559



Цитата(qVlad @ Feb 7 2011, 23:08) *
Теперь все ясно, мы с вами описываем одни и те же действия только разными способами. А где вы указываете сколько битов на точку используется? Можете найти у себя файл с названием LCDLin32.с должен быть в папке LCDDrivers и посмотреть поддерживает ли он LCD_BITSPERPIXEL = 32

Ну как я уже писал, 32 я не использовал, только 24. Надеюсь что поддерживает. Это легко проверить. Очистите экран, тоесть видео память, а потом выполните команду типа DrawPixel определлённого цвета. В дебагере остановитесь и посмотрите в каком формате GUI запишет точку. Потом вторую. Ну чтоб короче понять как дравер пишет. Тут одно из двух, или драйвер не правильно данные в видео память кладет, или конроллер не так память разворачивает. Кстати, а видеопамять куда поставили, в iRAM или SDRAM? Я пока в iRAM, а то картинка подёргивается. Думаю с ABH приоритетами подрулить чтоб контроллер имел доступ к памяти наивысшего приоритета.
Go to the top of the page
 
+Quote Post
qVlad
сообщение Feb 7 2011, 19:24
Сообщение #18


Участник
*

Группа: Участник
Сообщений: 41
Регистрация: 10-01-11
Из: Санкт-Петербург
Пользователь №: 62 125



Цитата(scorp2011 @ Feb 7 2011, 22:20) *
Ну как я уже писал, 32 я не использовал, только 24. Надеюсь что поддерживает. Это легко проверить. Очистите экран, тоесть видео память, а потом выполните команду типа DrawPixel определлённого цвета. В дебагере остановитесь и посмотрите в каком формате GUI запишет точку. Потом вторую. Ну чтоб короче понять как дравер пишет. Тут одно из двух, или драйвер не правильно данные в видео память кладет, или конроллер не так память разворачивает. Кстати, а видеопамять куда поставили, в iRAM или SDRAM? Я пока в iRAM, а то картинка подёргивается. Думаю с ABH приоритетами подрулить чтоб контроллер имел доступ к памяти наивысшего приоритета.


Ну я так и определил, что у меня не поддерживается и прошу дать мне файлик, в котором поддержка реализована. Я использую SDRAM и отключаю кеширование для участка видео памяти. Все хорош ничего не дергается.
Если не сложно вышлите сюда файлик vipryn@gmail.com
Go to the top of the page
 
+Quote Post
scorp2011
сообщение Feb 7 2011, 19:27
Сообщение #19


Участник
*

Группа: Участник
Сообщений: 72
Регистрация: 29-01-11
Пользователь №: 62 559



Цитата(qVlad @ Feb 7 2011, 23:24) *
Ну я так и определил, что у меня не поддерживается и прошу дать мне файлик, в котором поддержка реализована. Я использую SDRAM и отключаю кеширование для участка видео памяти. Все хорош ничего не дергается.
Если не сложно вышлите сюда файлик vipryn@gmail.com

завтра поищу. А как кэширование отключаете?
Go to the top of the page
 
+Quote Post
scorp2011
сообщение Feb 8 2011, 08:58
Сообщение #20


Участник
*

Группа: Участник
Сообщений: 72
Регистрация: 29-01-11
Пользователь №: 62 559



Цитата(scorp2011 @ Feb 7 2011, 22:27) *
завтра поищу. А как кэширование отключаете?

не нашел я такого фаила. думаиу ети драивера зашити в библиотеки. сколько баит на пиксел получается сеичас?
Go to the top of the page
 
+Quote Post
qVlad
сообщение Feb 8 2011, 09:04
Сообщение #21


Участник
*

Группа: Участник
Сообщений: 41
Регистрация: 10-01-11
Из: Санкт-Петербург
Пользователь №: 62 125



Цитата(scorp2011 @ Feb 8 2011, 11:58) *
не нашел я такого фаила. думаиу ети драивера зашити в библиотеки. сколько баит на пиксел получается сеичас?


Так у вас уже собранная либа без исходников что ли?
По вашему методу не удалось собрать либу, при компиляции выдает ошибку, что не знает что это такое GUIDRV_LIN_32.
Go to the top of the page
 
+Quote Post
scorp2011
сообщение Feb 8 2011, 09:14
Сообщение #22


Участник
*

Группа: Участник
Сообщений: 72
Регистрация: 29-01-11
Пользователь №: 62 559



Цитата(qVlad @ Feb 8 2011, 12:04) *
Так у вас уже собранная либа без исходников что ли?
По вашему методу не удалось собрать либу, при компиляции выдает ошибку, что не знает что это такое GUIDRV_LIN_32.

у меня без исходников
#define GUIDRV_LIN_32 &GUIDRV_Lin_32_API
находится в C:\Program Files\IAR Systems\Embedded Workbench 5.4\arm\PowerPac\GUI\Inc
library GUIv5_5t_al__.a
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- Shedon   uC/GUI   May 3 2005, 12:27
- - Dr.Alex   Сказали бы какую версию Послал 3.26, новее нет Н...   May 3 2005, 13:05
|- - Dr.Alex   На случай если не будет распаковываться - винрар 3...   May 3 2005, 13:26
|- - KuzmaPrytkov   Цитата(Dr.Alex @ May 3 2005, 17:05)Послал 3.2...   Jul 18 2005, 10:02
- - Shedon   Dr.Alex, спасибо. Версия 3,32а, но и это пойдёт, ...   May 3 2005, 13:23
- - Shedon   Распоковалось, с помощью 7-Zip'а, другими не п...   May 3 2005, 16:36
- - Yra   Обьясните, что это такое (и дока бы тоже не помеша...   May 14 2005, 14:01
- - _i8088_   Ребяты дайте исходники uC/GUI ;-) Сам пишу график...   Jul 20 2005, 09:40
- - _i8088_   Нашел! Вот если кому надо: http://briefcase...   Jul 20 2005, 10:45
|- - Krom   Цитата(_i8088_ @ Jul 20 2005, 13:45)Нашел...   Jul 21 2005, 06:03
|- - Hercules   Цитата(Krom @ Jul 21 2005, 09:03)Цитата(_i808...   Jul 21 2005, 11:43
|- - Johny   Цитата(Hercules @ Jul 21 2005, 14:43) Вот...   Nov 8 2005, 16:30
|- - Hercules   Цитата(Johny @ Nov 8 2005, 19:30) Цитата(...   Nov 9 2005, 07:05
- - Yra   Можете навести на цветные дисплейные модули (~300%...   Nov 9 2005, 20:03
- - mai   Ищу исходники uc/gui. Обыскал инет вдоль и поперек...   Feb 9 2008, 00:17
- - Itch   Плохо искали, вот версия 3.98 от китайцев: http://...   Feb 12 2008, 09:28
- - mai   Itch Спасибо за ответ. Этот файл я видел. В нем не...   Feb 12 2008, 10:22
- - Itch   Вот сборка версии 3.90 из различных источников. Ес...   Feb 13 2008, 09:34
|- - mai   Озаботился чем сделать кириллические шрифты для gu...   Feb 21 2008, 15:06
|- - Alex B._   Цитата(mai @ Feb 21 2008, 18:06) Озаботил...   Feb 21 2008, 20:06
|- - mai   Цитата(Alex B._ @ Feb 21 2008, 23:06) еще...   Feb 22 2008, 00:21
- - shkirenko   написал точку, сделал драйвер для TIC154 на PCF853...   Nov 3 2008, 10:32
- - limerix   Увидел свободно для скачивание user manua для uCGU...   Mar 7 2010, 14:39
- - sevstels   Может подскажет кто, где можно скачать полную верс...   Mar 24 2010, 02:23
- - ведущий_специалист   Пожалуй только на пудне и будет. Как уже писали, у...   May 23 2010, 08:16
- - sevstels   На сайте Микриум лежит усечённая демоверсия, отсут...   May 23 2010, 15:13
|- - 011119xx   Цитата(sevstels @ May 23 2010, 21:13) На ...   May 26 2010, 16:26
- - sevstels   Могу Вам прислать. Киньте в личку адрес. Ящик долж...   May 27 2010, 09:31
|- - BAT   А но основе какой версии сделали сборку ?   Jun 3 2010, 09:18
- - sevstels   На основе 3.98   Jun 3 2010, 09:22
- - diglook   Здравствуйте! Скачал порт для LPC2478 с оф. са...   Jun 10 2010, 17:28
- - BAT   Пытаюсь прикрутить к проекту GUI от PowerPac после...   Jun 18 2010, 08:30
- - sonycman   Никто не знает, где можно найти для этой GUI драйв...   Aug 17 2010, 14:05
- - Digi   Кто нибудь собирал GUI под NIOS. Уже 3й день сижу...   Sep 10 2010, 11:39
|- - qVlad   Цитата(scorp2011 @ Feb 7 2011, 22:27) зав...   Feb 7 2011, 19:32
|- - qVlad   Цитата(scorp2011 @ Feb 8 2011, 12:14) у м...   Feb 8 2011, 09:18
|- - scorp2011   Цитата(qVlad @ Feb 8 2011, 12:18) Не знае...   Feb 8 2011, 09:53
|- - qVlad   Цитата(scorp2011 @ Feb 8 2011, 12:53) тяж...   Feb 8 2011, 10:50
|- - scorp2011   Цитата(qVlad @ Feb 8 2011, 13:50) Доступ ...   Feb 8 2011, 14:00
|- - qVlad   Цитата(scorp2011 @ Feb 8 2011, 17:00) Да,...   Feb 8 2011, 14:02
|- - ig_z   L_C_D_Lin_32   Feb 9 2011, 09:17
|- - qVlad   Цитата(ig_z @ Feb 9 2011, 12:17) L_C_D_Li...   Feb 9 2011, 10:05
- - skaarj   Доброго всем времени суток! Подскажите пожалуй...   Feb 11 2012, 11:01


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

 


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


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