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

 
 
> запустим GUI emWin вместе?, запуск полноценной графической оболочки на LPC1788
Dunduk
сообщение Nov 22 2012, 13:19
Сообщение #1


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

Группа: Участник
Сообщений: 87
Регистрация: 15-08-09
Пользователь №: 51 904



Всем привет!
Пытаюсь запустить графическую оболочку emWin на микроконтроллере LPC1788 и 7-ми дюймовом TFT. Библиотека emWin для нас, пользователей NXP уже более года как стала бесплатной. Так давайте же ей воспользуемся!
Итак, идея моя такова. Я создал проект с нуля, запустил SDRAM и TFT, пользуясь примерами производителя платы. Теперь хочу запустить emWin, но не знаю как. Я буду выкладывать сюда проекты вплоть до того момента, когда все заработает. Если кто-то из профессионалов подскажет как запустить GUI быстро и правильно, я буду очень благодарен. Так или иначе, в результате у участников форума будет готовый, хорошо комментированный проект. Можно брать и пользоваться.
Железо. Пользуюсь платой Starterkit под названием SK-MLPC1788 и дисплеем SK-ATM0700D4, 7 дюймов, 800*480 точек.
Компилятор Keil MDK-ARM 4.60. Русский язык, кстати, у меня уже поддерживается. Могу рассказать как это сделать.
Отладчик - клон J-link с firmware v.8.
На данный момент проект содержит: все необходимые настройки проекта, включая подключение внешней памяти, опции отладчика и т.д., инициализацию проца, инициализацию SDRAM, ее тестирование, инициализацию TFT контроллера и пробный вывод текстовой строки на дисплей. Все работает.
Далее, я подключил все (как мне кажется) по части emWin, но результата не видно. Видимо, что-то с конфигурированием библиотеки.
Буду рад любой помощи. Проект во вложении.

Прикрепленные файлы
Прикрепленный файл  emWin_test_221112.rar ( 2.14 мегабайт ) Кол-во скачиваний: 104
 
Go to the top of the page
 
+Quote Post
3 страниц V   1 2 3 >  
Start new topic
Ответов (1 - 14)
Cosmojam
сообщение Nov 23 2012, 09:19
Сообщение #2


Местный
***

Группа: Свой
Сообщений: 311
Регистрация: 12-01-11
Из: Калининград (Koenigsberg)
Пользователь №: 62 182



Это надо бы на хостинг проектов типа Github, Bitbucket и пр. Тогда проще взаимодействовать с другими разработчиками. А перекачка архивов быстро надоест


--------------------
typedef enum { no, yes, maybe } bool; | блог тут
Go to the top of the page
 
+Quote Post
Lotor
сообщение Nov 23 2012, 10:13
Сообщение #3


Местный
***

Группа: Свой
Сообщений: 476
Регистрация: 3-07-07
Из: Санкт-Петербург
Пользователь №: 28 866



Надеюсь автор топика слышал про lpcware.com


--------------------
Ковырял чукча отверткой в ухе, звук в телевизоре и пропал.
Go to the top of the page
 
+Quote Post
Dunduk
сообщение Nov 23 2012, 10:34
Сообщение #4


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

Группа: Участник
Сообщений: 87
Регистрация: 15-08-09
Пользователь №: 51 904



Цитата(Lotor @ Nov 23 2012, 14:13) *
Надеюсь автор топика слышал про lpcware.com

Да, конечно. Я располагаю большим количеством примеров. Пишу в приглядку. Тем не менее, пока результата нет. Хотя кое-какие ошибки обнаружил.
В любом случае, результат (рабочая GUI) будет сюда выложена.
На данный момент затык очень простой - исключение HardFault_Handler. Причина не ясна. Исключение возникает при вызове GUI_Init(). Буду рад, если кто-нибудь подскажет, на что обратить внимание. Я с исключениями сталкивался только однажды. Была попытка работы с периферией, которая была отключена. Здесь - что-то другое.

Сообщение отредактировал Dunduk - Nov 23 2012, 11:20
Go to the top of the page
 
+Quote Post
AlexandrY
сообщение Nov 23 2012, 11:33
Сообщение #5


Ally
******

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



Цитата(Dunduk @ Nov 22 2012, 15:19) *
Всем привет!
Пытаюсь запустить графическую оболочку emWin на микроконтроллере LPC1788 и 7-ми дюймовом TFT. Библиотека emWin для нас, пользователей NXP уже более года как стала бесплатной. Так давайте же ей воспользуемся!


Это же просто библиотека без исходников! Мало смысла с ней иметь дело.
Эта GUI достаточно глючная и слабодокументрованная , чтобы не браться за нее без исходников.

Больше смысла будет взять доступную версию uC/GUI, и делать на ее базе расширения вроде подключения TTF шрифтов или новых виджетов.
Go to the top of the page
 
+Quote Post
_Pasha
сообщение Nov 23 2012, 11:43
Сообщение #6


;
******

Группа: Участник
Сообщений: 5 646
Регистрация: 1-08-07
Пользователь №: 29 509



Цитата
GUI Development Made Easy with NXP's Free MCU Graphics Library

Что означает "free" применительно к закрытой либе, которая продается и имеет licence agreement далекий от GPL?
Go to the top of the page
 
+Quote Post
Dunduk
сообщение Nov 23 2012, 11:45
Сообщение #7


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

Группа: Участник
Сообщений: 87
Регистрация: 15-08-09
Пользователь №: 51 904



Цитата(AlexandrY @ Nov 23 2012, 15:33) *
Это же просто библиотека без исходников! Мало смысла с ней иметь дело.

Я знаю, вы на GUI уже собаку съели. Скажите, что значит "без исходников" с точки зрения ее использования? Я смогу подключать свои шрифты? Видоизменять виджеты? Если нет, конечно, я лучше возьму micrium. Вроде была она где-то версии 3.98, кажется.
Впрочем, процесс инициализации там очень похож. А значит, все те же вопросы у меня возникнут и там.
Go to the top of the page
 
+Quote Post
Dunduk
сообщение Nov 30 2012, 11:31
Сообщение #8


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

Группа: Участник
Сообщений: 87
Регистрация: 15-08-09
Пользователь №: 51 904



не прошло и полгода как появились первые признаки жизни emWin. Выкладываю.
Причины, почему не работало: Мне не удалось правильно передать GUI адрес для видеобуфера. Пришлось сделать это также криво как в одном из фирменных (NXP+Segger) примерах, а именно (см LCDConf.c)
Код
#define VRAM_ADDR_PHYS  (U32)&_aVRAM[0]
__align(8) static U32 _aVRAM[XSIZE_PHYS * YSIZE_PHYS / (4 / PIXEL_WIDTH)] __attribute__ ((section ("VRAM"), zero_init));

и еще см. GUIConf.c:
Код
U32 static _aMemory[GUI_NUMBYTES / 4] __attribute__ ((section ("GUI_RAM"), zero_init));
//...
  GUI_ALLOC_AssignMemory(_aMemory, GUI_NUMBYTES);

Конечно, при этом необходимо чтобы линкер знал, что такое VRAM и GUI_RAM. Потому что эта собака прекрасный линкер не ругается в том случае, если эти значения не определены. Поэтому Scatter-файл необходимо изменить, т.е. определить то место куда кладется буфер.
Все пока. На очереди - запуск системного тика для GUI (TimeMS) и потом подключаем тачскрин.
До связи!

Сообщение отредактировал Dunduk - Nov 30 2012, 11:33
Прикрепленные файлы
Прикрепленный файл  emWin_test_301112.rar ( 2.17 мегабайт ) Кол-во скачиваний: 109
 
Go to the top of the page
 
+Quote Post
haker_fox
сообщение Nov 30 2012, 13:15
Сообщение #9


Познающий...
******

Группа: Свой
Сообщений: 2 963
Регистрация: 1-09-05
Из: г. Иркутск
Пользователь №: 8 125



Dunduk, спасибо за труд! Новичкам Ваши труды могту очень даже пригодиться!!! Я отношу себя к новичкам.


--------------------
Выбор.
Go to the top of the page
 
+Quote Post
Vetal-Soft
сообщение Dec 25 2012, 14:52
Сообщение #10


Участник
*

Группа: Участник
Сообщений: 60
Регистрация: 16-06-05
Пользователь №: 6 074



В Keil MDK-ARM 4.60 встроена emWin.
Цитата
emWin is delivered as an add-on product to MDK-ARM
Go to the top of the page
 
+Quote Post
haker_fox
сообщение Dec 27 2012, 12:13
Сообщение #11


Познающий...
******

Группа: Свой
Сообщений: 2 963
Регистрация: 1-09-05
Из: г. Иркутск
Пользователь №: 8 125



QUOTE (Vetal-Soft @ Dec 25 2012, 23:52) *
В Keil MDK-ARM 4.60 встроена emWin.

Да, но его нужно конфигурировать)


--------------------
Выбор.
Go to the top of the page
 
+Quote Post
Vetal-Soft
сообщение Dec 31 2012, 07:16
Сообщение #12


Участник
*

Группа: Участник
Сообщений: 60
Регистрация: 16-06-05
Пользователь №: 6 074



Цитата(haker_fox @ Dec 27 2012, 17:13) *
Да, но его нужно конфигурировать)

Да, думаю хелпа и примеров должно хватить. После праздников буду этим заниматся.

Go to the top of the page
 
+Quote Post
haker_fox
сообщение Dec 31 2012, 09:34
Сообщение #13


Познающий...
******

Группа: Свой
Сообщений: 2 963
Регистрация: 1-09-05
Из: г. Иркутск
Пользователь №: 8 125



QUOTE (Vetal-Soft @ Dec 31 2012, 16:16) *
Да, думаю хелпа и примеров должно хватить.

Практика говорит об обратном rolleyes.gif


--------------------
Выбор.
Go to the top of the page
 
+Quote Post
skyv
сообщение Jan 3 2013, 12:15
Сообщение #14


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

Группа: Участник
Сообщений: 181
Регистрация: 26-07-10
Пользователь №: 58 606



Цитата(Dunduk @ Nov 30 2012, 15:31) *
не прошло и полгода как появились первые признаки жизни emWin. Выкладываю.
...


Спасибо.
Хочу для себя оценить удобства и недостатки emWin.
Имею аналогичное железо (SK-MLPC1788 и TFT 7”).

Несколько вопросов по настройке LCD в проекте emWin_test_301112
(файл TFT_ATM07_drv.h )

1. Из каких соображений выбираются значения:
#define C_GLCD_H_PULSE 60

#define C_GLCD_V_PULSE 1

2. Где в проекте используются или для чего определяются:
#define C_GLCD_CLK_PER_LINE ….
#define C_GLCD_LINES_PER_FRAME ….
#define C_GLCD_PIX_CLK …..

3. Какой частотой мы тактируем данные пикселей?
4. Какая частота обновления экрана?
5. Почему LPC_IOCON->P2_1 = 0x20; ,а не =0x27 (файл TFT_ATM07_drv.c)?

Сообщение отредактировал skyv - Jan 3 2013, 13:20
Go to the top of the page
 
+Quote Post
Dunduk
сообщение Jan 3 2013, 12:21
Сообщение #15


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

Группа: Участник
Сообщений: 87
Регистрация: 15-08-09
Пользователь №: 51 904



Цитата(skyv @ Jan 3 2013, 16:15) *
Несколько вопросов по настройке LCD в проекте emWin_test_301112


Погодите, щас на рыбалку собираюсь, после праздников расскажу. Я сам мало чего там писал, мой метод - осознанный copy-paste. cranky.gif
Go to the top of the page
 
+Quote Post

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

 


RSS Текстовая версия Сейчас: 22nd July 2025 - 22:35
Рейтинг@Mail.ru


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