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

 
 
2 страниц V   1 2 >  
Reply to this topicStart new topic
> stm32f429disco работа с экраном
domowoj
сообщение Jun 3 2015, 18:37
Сообщение #1


Профессионал
*****

Группа: Участник
Сообщений: 1 548
Регистрация: 20-12-07
Из: г.Новосибирск
Пользователь №: 33 486



Здравствуйте друзья!
Пришла мне наконец вышеупомянутая плата.
Но вот вопрос, что дальше и как?
Наверняка же существуют стандартные библиотеки
работы с ЛСД и тачскрином.
Ткните пожалуйста носом, где взять.


--------------------
И на камнях растут деревья!
Go to the top of the page
 
+Quote Post
adnega
сообщение Jun 3 2015, 19:14
Сообщение #2


Гуру
******

Группа: Свой
Сообщений: 2 724
Регистрация: 14-05-07
Из: Ярославль, Россия
Пользователь №: 27 702



Цитата(domowoj @ Jun 3 2015, 21:37) *
Ткните пожалуйста носом, где взять.
Тут смотрели?

CODE
ADC_DMA
ADC_DualModeInterleaved
ADC_TripleModeInterleaved
DAC_SignalsGeneration
DMA2D_MemToMemWithBlending
DMA2D_MemToMemWithPFC
EXTI_Example
FLASH_DualBoot
FLASH_Program
FLASH_WriteProtection
FMC_SDRAM
FMC_SDRAM_LowPower
IWDG_Example
LTDC_AnimatedPictureFromUSB
LTDC_ColorKeying
LTDC_Display_2Layers
MEMS_Example
PWR_CurrentConsumption
PWR_STANDBY
PWR_STOP
RCC_ClockConfig
RCC_CSS
SysTick_Example
TIM_PMWOutput
Touch_Panel
Go to the top of the page
 
+Quote Post
Эдди
сообщение Jun 4 2015, 04:48
Сообщение #3


Знающий
****

Группа: Участник
Сообщений: 825
Регистрация: 16-04-15
Из: КЧР, Нижний Архыз
Пользователь №: 86 250



Эти "стандартные" библиотеки — настолько индусокодная жесть, что лучше сразу свое писать, а туда даже не заглядывать!!!
Go to the top of the page
 
+Quote Post
mantech
сообщение Jun 4 2015, 05:23
Сообщение #4


Гуру
******

Группа: Участник
Сообщений: 2 219
Регистрация: 16-08-12
Из: Киров
Пользователь №: 73 143



Цитата(Эдди @ Jun 4 2015, 07:48) *
Эти "стандартные" библиотеки — настолько индусокодная жесть, что лучше сразу свое писать, а туда даже не заглядывать!!!


Ну да, к пенсии напишете biggrin.gif
А если серьезно - тупо копировать оттуда в рабочий проект - это глупо, а с доработками - самое оно!
Go to the top of the page
 
+Quote Post
adnega
сообщение Jun 4 2015, 06:21
Сообщение #5


Гуру
******

Группа: Свой
Сообщений: 2 724
Регистрация: 14-05-07
Из: Ярославль, Россия
Пользователь №: 27 702



Цитата(Эдди @ Jun 4 2015, 07:48) *
Эти "стандартные" библиотеки — настолько индусокодная жесть, что лучше сразу свое писать, а туда даже не заглядывать!!!

ТС просил стандартного. Если у вас есть библиотеки лучше, то дайте ссылочку ТС.

Цитата(mantech @ Jun 4 2015, 08:23) *
А если серьезно - тупо копировать оттуда в рабочий проект - это глупо, а с доработками - самое оно!

Можно даже не копировать, но заглядывать - обязательно!
Go to the top of the page
 
+Quote Post
Obam
сообщение Jun 4 2015, 07:37
Сообщение #6


Знающий
****

Группа: Участник
Сообщений: 756
Регистрация: 14-11-14
Пользователь №: 83 663



К плате нет никакой документации?
Тип дисплея, цоколёвка известны?

По собственному опыту я посоветовал бы обзавестись ДШ на дисплей и контроллер: хорошая точка старта.


--------------------
Пролетарий умственного труда.
Go to the top of the page
 
+Quote Post
SasaVitebsk
сообщение Jun 5 2015, 05:40
Сообщение #7


Гуру
******

Группа: Свой
Сообщений: 2 712
Регистрация: 28-11-05
Из: Беларусь, Витебск, Строителей 18-4-220
Пользователь №: 11 521



Цитата(Obam @ Jun 4 2015, 10:37) *
К плате нет никакой документации?

rolleyes.gif
Плата родная от ST. Куча примеров с исходниками лежит в кубе4. Оттуда брать и инициализацию дисплея, так как TFT с контролером каким-то.

2 mantech. Для некоторых дров особо альтернативы не просматривается. Например дрова Ethernet или USB.
[DELETED]

Сообщение отредактировал IgorKossak - Jun 5 2015, 11:16
Go to the top of the page
 
+Quote Post
Genadi Zawidowsk...
сообщение Jun 5 2015, 17:50
Сообщение #8


Профессионал
*****

Группа: Участник
Сообщений: 1 620
Регистрация: 22-06-07
Из: Санкт-Петербург, Россия
Пользователь №: 28 634



Дисплей там с контроллером ILI9341, можно работать по SPI а можно после инициализации переключить в RGB MODE и работать с тем, что ему выдаёт LTDC процессора.
Работая с 8 или 16 бит цветом, вполне можно обойтись внутренней памятью процессора, не инициализируя SDRAM.
На схеме указан тип дисплейного модуля, он вполне гуглится.
Go to the top of the page
 
+Quote Post
domowoj
сообщение Jun 13 2015, 14:14
Сообщение #9


Профессионал
*****

Группа: Участник
Сообщений: 1 548
Регистрация: 20-12-07
Из: г.Новосибирск
Пользователь №: 33 486



Цитата(Genadi Zawidowski @ Jun 5 2015, 23:50) *
Дисплей там с контроллером ILI9341...

Посмотрел даташит на ILI9341, что-то слабо мне с ним справиться.
Попробовал стандарну библиотеку для LCD из пакета stm32f429disco,
а у меня демо версия Кейла и 32К, разрешенных мне, не хватает.
Что делать?
Урезать библиотеку под свои цели?
Поискать в инете что-нибудь?
Купить Кейл-жеба давит.
Найти кряк - ...?
Что посоветуете.


--------------------
И на камнях растут деревья!
Go to the top of the page
 
+Quote Post
mantech
сообщение Jun 13 2015, 16:11
Сообщение #10


Гуру
******

Группа: Участник
Сообщений: 2 219
Регистрация: 16-08-12
Из: Киров
Пользователь №: 73 143



Цитата(domowoj @ Jun 13 2015, 17:14) *
Найти кряк - ...?
Что посоветуете.


Ясно дело biggrin.gif Пока не купил иар для серьезных проектов, так и пользовался...
Go to the top of the page
 
+Quote Post
Genadi Zawidowsk...
сообщение Jun 13 2015, 23:00
Сообщение #11


Профессионал
*****

Группа: Участник
Сообщений: 1 620
Регистрация: 22-06-07
Из: Санкт-Петербург, Россия
Пользователь №: 28 634



Цитата(domowoj @ Jun 13 2015, 17:14) *
Посмотрел даташит на ILI9341, что-то слабо мне с ним справиться.
Попробовал стандарну библиотеку для LCD из пакета stm32f429disco,
а у меня демо версия Кейла и 32К, разрешенных мне, не хватает.
Что делать?
Урезать библиотеку под свои цели?
Поискать в инете что-нибудь?
Купить Кейл-жеба давит.
Найти кряк - ...?
Что посоветуете.


В даташит можете не очень внимательно смотреть - в исходниках десяток строк инициализации дисплея и перевод его в RGB MODE - после этого в него через LTDC идут пиксели, сопровождвемсые клоком, строчной и кадровой синхронизацией.
Если надо БЕЗ ltdc, тогда да - даташит или мои исходники (у меня и "выжимка" из ST-шного примра по работе с LTDC).
https://188.134.5.254/browser/hfreceiver/trunk/st7735.c - инициализация ILI9341
https://188.134.5.254/browser/hfreceiver/trunk/graphltdc.c - инициализация LTDC
https://188.134.5.254/browser/hfreceiver/trunk/display.c - работа с фреймбуфером - вывдод текста

По поводу компилятора - посоветую использовать https://launchpad.net/gcc-arm-embedded

Сообщение отредактировал Genadi Zawidowski - Jun 13 2015, 23:01
Go to the top of the page
 
+Quote Post
Мур
сообщение Oct 29 2015, 13:26
Сообщение #12


Знающий
****

Группа: Свой
Сообщений: 815
Регистрация: 7-06-06
Из: Харьков
Пользователь №: 17 847



Забавный прикол наблюдаю...
Вывожу на экран строки символов и вижу, что по центру экрана 800*480 живет эмблема фирмы STMicroelectronics....
https://upload.wikimedia.org/wikipedia/id/t...electronics.png

Наверняка тут много народа это проходило! Как от этого избавиться? В каком месте подгружается этот слой? Что это за файл? ( Уж не STM32F429\Projects\Demonstration\Core\Demo\Res\background.c?)
C конвертированием своей эмблемы я сам разберусь...
Цитата


Спасибо!
Go to the top of the page
 
+Quote Post
Мур
сообщение Oct 30 2015, 14:09
Сообщение #13


Знающий
****

Группа: Свой
Сообщений: 815
Регистрация: 7-06-06
Из: Харьков
Пользователь №: 17 847



Нет, это не background.с...
Go to the top of the page
 
+Quote Post
Мур
сообщение Nov 9 2015, 11:28
Сообщение #14


Знающий
****

Группа: Свой
Сообщений: 815
Регистрация: 7-06-06
Из: Харьков
Пользователь №: 17 847



static GUI_CONST_STORAGE unsigned long _acSTLogo[] = {...}
В файле startup_res.c
Go to the top of the page
 
+Quote Post
Lagman
сообщение Nov 10 2015, 12:02
Сообщение #15


Знающий
****

Группа: Свой
Сообщений: 875
Регистрация: 28-10-05
Пользователь №: 10 245



У компэла были семинары в 13 году, на сайте лежали демо проекты и презентации, по ним можно поучиться.
Сайт заработал вот сслыка http://www.compel.ru/lib/seminar-materials...-sdram-pamyatyu
Go to the top of the page
 
+Quote Post
Мур
сообщение Jan 22 2016, 15:02
Сообщение #16


Знающий
****

Группа: Свой
Сообщений: 815
Регистрация: 7-06-06
Из: Харьков
Пользователь №: 17 847



Кто подскажет, мужики, что это может быть?...
Модифицирую код, написанный до меня с применением emWIN и вижу странность...
Квадратики и круги, что я рисую с цветным заполнением, при вызове функций, каждый раз меняют свой цвет по насыщенности и даже оттенку. Через 4-5 вызовов цвет стабилизируется. Откуда ноги растут? Какая настройка на это влияет?
Может кто-то сталкивался? Спасибо!
Go to the top of the page
 
+Quote Post
Мур
сообщение Feb 2 2016, 12:57
Сообщение #17


Знающий
****

Группа: Свой
Сообщений: 815
Регистрация: 7-06-06
Из: Харьков
Пользователь №: 17 847



https://www.youtube.com/watch?v=u_TVAudWabI
Go to the top of the page
 
+Quote Post
Мур
сообщение Feb 12 2016, 12:35
Сообщение #18


Знающий
****

Группа: Свой
Сообщений: 815
Регистрация: 7-06-06
Из: Харьков
Пользователь №: 17 847



Цитата(Мур @ Jan 22 2016, 19:02) *
Кто подскажет, мужики, что это может быть?...
Квадратики и круги, что я рисую с цветным заполнением, при вызове функций, каждый раз меняют свой цвет по насыщенности и даже оттенку. Через 4-5 вызовов цвет стабилизируется.

GUI_SetAlpha(0); - убирает этот эффект
Go to the top of the page
 
+Quote Post
Мур
сообщение Mar 24 2016, 12:54
Сообщение #19


Знающий
****

Группа: Свой
Сообщений: 815
Регистрация: 7-06-06
Из: Харьков
Пользователь №: 17 847



Мужики! Банальная задача - очистка экрана... help.gif
По быстренькому...
Такой прямой функции не обнаружил, потому сделал "в лоб".
GUI_SelectLayer(0);
GUI_SetColor(0x00ffffff);
GUI_FillRect(0,0,800,480);

Ага.... Очистило, но не все.
Повтор того же набора с GUI_SelectLayer(1); не помогает...

Остаются хвосты от PROGBAR_SetValue (....). Там какая-то защита есть на очистку? Что за хрень? Может кто изучал вопрос? Все изображения на экране исчезают, ..кроме этих "квадратов Прогресса"...
Как очистить ВЕСЬ экран?

Заранее спасибо! tort.gif
Go to the top of the page
 
+Quote Post
scifi
сообщение Mar 24 2016, 13:15
Сообщение #20


Гуру
******

Группа: Свой
Сообщений: 3 020
Регистрация: 7-02-07
Пользователь №: 25 136



Цитата(Мур @ Mar 24 2016, 15:54) *
GUI_FillRect(0,0,800,480);

Не по теме вопроса, просто придирка: а разве не так нужно писать "GUI_FillRect(0,0,799,479);"?
Go to the top of the page
 
+Quote Post
Мур
сообщение Mar 24 2016, 13:28
Сообщение #21


Знающий
****

Группа: Свой
Сообщений: 815
Регистрация: 7-06-06
Из: Харьков
Пользователь №: 17 847



Цитата(scifi @ Mar 24 2016, 17:15) *
Не по теме вопроса, просто придирка: а разве не так нужно писать "GUI_FillRect(0,0,799,479);"?


... да лишь бы вытирало!... Не критично (Я и раньше делал такие ошибки(синдром 1)). Видимо аппаратно это защищено...

Повторил с вашим замечанием. Все аналогично! (((
Go to the top of the page
 
+Quote Post
hd44780
сообщение Mar 24 2016, 16:58
Сообщение #22


Профессионал
*****

Группа: Свой
Сообщений: 1 202
Регистрация: 26-08-05
Из: Донецк, ДНР
Пользователь №: 7 980



А попробуйте видеобуфер в лоб очищать, каким-нибудь memset-ом ...


--------------------
Чтобы возить такого пассажира, необходим лимузин другого класса.
(с) Мария Эдуарда
Go to the top of the page
 
+Quote Post
scifi
сообщение Mar 24 2016, 17:33
Сообщение #23


Гуру
******

Группа: Свой
Сообщений: 3 020
Регистрация: 7-02-07
Пользователь №: 25 136



Цитата(hd44780 @ Mar 24 2016, 19:58) *
А попробуйте видеобуфер в лоб очищать, каким-нибудь memset-ом ...

Коли так, фтопку эту блюмблюатеку. Накодить самому. Во всяком случае, у меня так и сделано. Ничего сверхъестественного там нет: прямоугольник, картинка, текст. Во всяком случае, всё понятно, никаких танцев с бубном. И летает.
Кстати, а по какому случаю танцуем? Мануала совсем нет что ли? Или толмач в отпуске?
Go to the top of the page
 
+Quote Post
SasaVitebsk
сообщение Mar 25 2016, 05:40
Сообщение #24


Гуру
******

Группа: Свой
Сообщений: 2 712
Регистрация: 28-11-05
Из: Беларусь, Витебск, Строителей 18-4-220
Пользователь №: 11 521



Цитата(scifi @ Mar 24 2016, 20:33) *
Кстати, а по какому случаю танцуем? Мануала совсем нет что ли? Или толмач в отпуске?

lol.gif
Я уже приводил хомут в примерах ST. На сколько я понимаю, там ничего не может быть "защищено". Нет там такой функции в железе. Есть понятие "водяной знак", это когда возникает прерывание при обращении в определённую область видеобуфера. Но прерывание то обработать нужно. Скорее всего происходит какая-то потеря информации при транзакции DMA2D.
Go to the top of the page
 
+Quote Post
pvo125
сообщение Mar 25 2016, 15:32
Сообщение #25


Участник
*

Группа: Участник
Сообщений: 37
Регистрация: 9-04-14
Из: Черногорск Хакасия
Пользователь №: 81 299



Цитата
Остаются хвосты от PROGBAR_SetValue (....). Там какая-то защита есть на очистку? Что за хрень? Может кто изучал вопрос? Все изображения на экране исчезают, ..кроме этих "квадратов Прогресса"...
Как очистить ВЕСЬ экран?


Не совсем понятно что такое хвосты от PROGBAR_SetValue (....) (Вроде функция по установке значения для PROGBARa) Так как PROGBAR это виджет и он перерисовывается Window Managerom то попробуйте перед очисткой удалять этот виджет или закрывать его .
Код
WM_HWIN  hWin;
hWin=WM_GetDialogItem(WM_HWIN hDialog, int Id);

WM_HideWindow(hWin);  // Скрыть окно
WM_DeleteWindow(hWin);  // Удалить окно


Затем уже пробуйте очищать GUI_FillRect(0,0,800,480);

WM_HWIN hDialog это Handle родительского окна в котором вы создали PROGBAR ( ну или так WM_HBKWIN). Лучше сначала скрывать очищать и снова показывать этот виджет если он нужен (WM_Show Window()wink.gif
Go to the top of the page
 
+Quote Post

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

 


RSS Текстовая версия Сейчас: 31st July 2025 - 00:57
Рейтинг@Mail.ru


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