|
3 / 3 / 0
Регистрация: 06.12.2016
Сообщений: 1,605
|
||||||
STemWin на STM32F4. Первый опыт. Вопросы.21.12.2013, 23:06. Показов 835834. Ответов 1103
Метки нет (Все метки)
Вот, задумавшись о GUI, решил попробовать эту либу.
Моё железо - STM32F4 (Dyscovery) и дисплей с Ebay разрешением 800х480 на контроллере SSD1963 с 16-битным интерфейсом. Эта аппаратная связка давно обкатана и работает. Под это дело я писал свои драйверы и библиотеки. Работал с дисплеем через DMA и без него. Всё прекрасно. Т.к. никаких заводских плат со встроенными дисплеями у меня нет, мне пришлось править и переписывать под себя конфигурационные модули STemWin. Для старта взял стандартный пример из ST-шного архива. Дальше стартовой заставки я не продвинулся, т.к. там нужен тач, а я пока не разобрался, как туда подключить мой драйвер тача. Но и тут проблемы. В итоге получилось 2 варианта - на драйвере FlexColor (штатный драйвер STemWin, поддерживающий SSD1963) и мой собственный. Оба прилагаю. В целом оба варианта запустились в общем-то с пол-оборота, но есть ряд непоняток: 1. На драйвере FlexColor некоторые строчки текста на экране выглядят как некий мусор. Я понимаю, что я мог где-то ошибиться, но тогда бы не работало ни-че-го, т.к. пользовательский драйвер для Flex-Color представляет собой 4 функции - запись команды/данных и запись/чтения блока. По сути это функции работы с FSMC. Плюс функция низкоуровневой инициализации SSD1963. 2. На моём драйвере все строчки рисуются нормально, но нету стрелочки курсора мыши, который есть на FlexColor. Подозреваю, что это из-за отсутствия функции вывода картинки на дисплей. В драйвере дисплея она у меня есть, но я не понял, куда её запихать в ST-шную прослойку. Да и тормозит заметно в сравнении с FlexColor. Если кто разбирался, подскажите пожалуйста. Если надо, я выложу полные проекты на кокосе. Блок CRC включён (просто знаю, что на этом многие ловятся, но это не мой случай). Ещё один вопрос про память для GUI. Я видел конструкцию
Внешней памяти у меня нет, в силу урезанности FSMC на 100-ногих процах. Или что, оно работает только на 429-Dyscovery, где стоит 8-метровый чип SDROM? Охренеть... Дал ей пока 64К, но рекомендаций по этим объёмам я не нашёл. Сколько ей надо? Спасибо. [23.93 Кб] [18.45 Кб]
1
|
||||||
| 21.12.2013, 23:06 | |
|
Ответы с готовыми решениями:
1103
Измерение уровней звука. Вопросы. Первый опыт. Сравнительно мистический баг в Coocox: stemwin и stm32f4 Вопросы по STM32F4 |
|
0 / 0 / 0
Регистрация: 19.04.2016
Сообщений: 26
|
||
| 26.09.2016, 18:22 | ||
Форумчане, кто может выложить файл STemWin532_CM3_Keil.lib, у меня в репозиторие присутствуют: под F1 - v5.28, под F4 - v5.32 (но только под CM4)?
0
|
||
|
3 / 3 / 0
Регистрация: 06.12.2016
Сообщений: 1,605
|
||
| 26.09.2016, 20:52 | ||
0
|
||
|
0 / 0 / 0
Регистрация: 19.04.2016
Сообщений: 26
|
||
| 26.09.2016, 23:51 | ||
Видел в предыдущих постах упоминания о STemWin532_CM3_Keil.lib, кто смог раздобыть, прошу выложить или подсказать как раздобыть самому?
0
|
||
|
0 / 0 / 0
Регистрация: 11.09.2016
Сообщений: 78
|
||
| 27.09.2016, 16:49 | ||
Положено сюда http://www.fayloobmennik.net/6590438
0
|
||
|
0 / 0 / 0
Регистрация: 11.09.2016
Сообщений: 78
|
|||||||||||
| 27.09.2016, 16:55 | |||||||||||
|
Может кто-нибудь знает как прозрачность настроить? Пробовал так
0
|
|||||||||||
|
0 / 0 / 0
Регистрация: 19.04.2016
Сообщений: 26
|
|||||||
| 27.09.2016, 23:34 | |||||||
У меня Alpha blending работает так:
0
|
|||||||
|
0 / 0 / 0
Регистрация: 16.09.2016
Сообщений: 33
|
||
| 28.09.2016, 20:12 | ||
Добрый человек не мог бы поделиться этим файлом GUIDRV_FlexColor под ili9341 spi?
0
|
||
|
0 / 0 / 0
Регистрация: 16.09.2016
Сообщений: 33
|
||
| 08.10.2016, 20:34 | ||
Ну хоть что пихать сюда скажи, елки палки, GUIDRV_FlexColor_SetFunc(pDevice, &PortAPI, GUIDRV_FLEXCOLOR_F66709, GUIDRV_FLEXCOLOR_M16C0B16); Сделал, как оказалось, там не сложно было поменять FSMC на SPI, всем спасибо, особенно жадному Omdriy3885. Пока только в 8ми битном режиме запустил, в 16 битном не хочет, хотя должен и быстрее работать будет. GUIDRV_FlexColor_SetFunc(pDevice, &PortAPI, GUIDRV_FLEXCOLOR_F66709, GUIDRV_FLEXCOLOR_M16C0B5);
0
|
||
|
0 / 0 / 0
Регистрация: 16.09.2016
Сообщений: 33
|
|
| 10.10.2016, 21:42 | |
|
Добрый день.
От указателя мышки черный след. Чтение вроде правильно настроено и должно работать, если драйвер с ним дружит вообще. Что может быть еще кроме косячно реализованного чтения?
0
|
|
|
0 / 0 / 0
Регистрация: 30.09.2013
Сообщений: 210
|
||||||
| 10.10.2016, 22:56 | ||||||
|
было такое на ssd1289. проблема решилась настройкой таймингов.
сейчас такие
0
|
||||||
|
1 / 1 / 0
Регистрация: 19.07.2013
Сообщений: 423
|
||
| 11.10.2016, 10:35 | ||
Пробовал запускать emWIN с ним, чтения так и не было
0
|
||
|
0 / 0 / 0
Регистрация: 30.09.2013
Сообщений: 210
|
|
| 11.10.2016, 19:16 | |
|
вот видео, как видно чтение пашет. хвостов чёрных за рыбами нет :)
https://www.youtube.com/watch?... e=youtu.be вот полностью проект в Coosox. Версия emwin 5.22. Сейчас перешёл на 5.32 http://my-files.ru/mzktl7
0
|
|
|
1 / 1 / 0
Регистрация: 19.07.2013
Сообщений: 423
|
|
| 26.10.2016, 13:47 | |
|
Вопросы к гуру этого гуя (hd44780 etc).
Какой контроллер резистивного тачскрина вы используете (hd44780 вроде без него обходится)? Какой метод калибровки тача (сколько точек)? Пробовали использовать драйвер для ads7846, встроенный в гуй? Можно ли уместить нормальное меню в контроллер с 256кб флеша и 40кб озу или ставить сразу sdram? Как вы создаете собственно интерфейс? Правите код из GUIBuilder?
0
|
|
|
3 / 3 / 0
Регистрация: 06.12.2016
Сообщений: 1,605
|
|||||
| 26.10.2016, 15:03 | |||||
Но в своём далёком советском детстве я немного баловался резистивными тачами. Контроллеры ADS7843 и XPT2046. Помнится, разницы вообще не заметил. Калибровку не делал. Но Вы можете глянуть исходники демки к STM32F429Dyscovery (есть в кубе) - там вроде 3 точки. Но я не уверен.
0
|
|||||
|
1 / 1 / 0
Регистрация: 19.07.2013
Сообщений: 423
|
||
| 26.10.2016, 16:15 | ||
|
Спасибо за наводку. Калибровка у них конечно упрощенная довольно (2 точки).
Еще есть в примерах для stm32 Embeddid GUI по 5 точкам калибровка. Нашел откуда китайцы берут методику калибровки для своих плат (3 точки) Sortos E. Vidotis How to cotybrate touch ssreens 2002 Нормальное меню в моем представлении это рабочий экран и один-два экрана с настройками. Про
0
|
||
|
0 / 0 / 0
Регистрация: 16.09.2016
Сообщений: 33
|
||||||
| 11.11.2016, 00:03 | ||||||
|
Воюю с меню, никак колбек подключить не могу, меню тыкается и работает, но как свои функции к нему присобачить?
Вот пример нашел, но нихрена не понятно как заставить меню отправлять события в мой колбек который создан WM_HWIN CreateWymdow1(void) { WM_HWIN hWin; hWin = GUI_CreateDialogBox(_aDialogCreate1, GUI_COUNTOF(_aDialogCreate1), _cbDialog1, WM_HBKWIN, 0, 0); return hWin; }
0
|
||||||
|
3 / 3 / 0
Регистрация: 06.12.2016
Сообщений: 1,605
|
|
| 11.11.2016, 09:34 | |
|
Точно не подскажу, меню я не делал, но посмотрите на сообщение WM_MENU. Оно приходит в Ваш _cbDialog. В доке даже есть какой-то кусок кода с ним.
Также пошарьте по сеггеровским примерам - https://www.segger.com/emwin-samples.html Может найдёте что-то подходящее.
0
|
|
|
0 / 0 / 0
Регистрация: 16.09.2016
Сообщений: 33
|
||||||||||||||||
| 11.11.2016, 15:28 | ||||||||||||||||
|
да по примерам я шарил. Непонятно. У меня интерфейс создан в GUIBuilder, меню тоже, но при инициализации я дорисовал в него пунктов. В обработчике есть родное меню, но сообщения и туда не приходят, я думал по ID там смотреть и от новых пунктов но тоже нет ничего, вешать пытался сам колбек - тогда вообще черное меню и его нет. неужели никто не делал меню, с остальными проблем нет все приходит.
И еще мой интерфейс перекрывает все на свете и просто писать на экране уже нельзя да и многое делать нельзя, можно ли мой интерфейс на нижний слой перетащить чтобы я мог писать хотя бы через библиотеку а не внаглую напрямую.
0
|
||||||||||||||||
|
0 / 0 / 0
Регистрация: 16.09.2016
Сообщений: 33
|
|
| 11.11.2016, 23:57 | |
|
Никто меню что ли не делал, а что тогда вы применяете елки палки? меню это основное после кнопок...
0
|
|
|
0 / 0 / 0
Регистрация: 16.09.2016
Сообщений: 33
|
|
| 12.11.2016, 16:35 | |
|
Разобрался с меню.
0
|
|
| 12.11.2016, 16:35 | |
|
STM32F4-Discovery(подключение и глупые вопросы) STM32F4+ETH(Вопросы по PHY KSZ8863) [решено]stm32f4 ethernet phy вопросы Первый опыт Первый опыт Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Вступаем в новую фазу генерации favicons, векторную.
russiannick 02.11.2026
Теперь нет нужды скрывать что используется простой svg. Исходный код изображения помещаем в поле и жмем кнопку. Исходник преобразуется в вид корректный для помещения в favicon или в url(). Нажатие. . .
|
Генератор паролей (вариант №4)
Maks 01.11.2026
После публикации 3-го варианта генератора паролей, разослал его своим коллегам (с целью оценки), в итоге были получены следующие рекомендации:
1. Вернуть возможность использования знаков | 1 l I;. . .
|
Генератор паролей (вариант №3)
Maks 30.10.2026
Финальная версия генератора паролей 1С.
Доработка решения в этот раз коснулась только визуальной части, а именно, добавлен реквизит ДопПараметры (тип Булево), который скрывает/ отображает реквизиты:. . .
|
Магическое мышление и магия, современная наука не отличима от магии (говорит ИИ Джемени)
zorxor 30.10.2026
Джемени, расскажи, пожалуйста, что такое магическое мышление, что такое магия, почему современная наука чем-то напоминает магию?
Фраза «Любая достаточно развитая технология неотличима от магии». . .
|
|
За какое время ИИ может подобрать пароль по хешу (рассказывает Джемени ИИ)
zorxor 30.10.2026
Расскажи, Джемени, если известен хэш МД5, например, за сколько ИИ сможет подобрать соответствующий пароль?
Искусственный интеллект (ИИ) может подобрать простой или средний по сложности пароль по. . .
|
Кто убил Suno? Почему наше солнышко погасло? (диалог с ИИ Джемени)
zorxor 30.10.2026
Как убивали Suno. Хронология.
«Убийство» музыкальной нейросети Suno — это затяжной процесс, в котором технологический хайп стартапа разбился о жесткую реальность судебных исков от гигантов. . .
|
Генератор паролей (вариант №2)
Maks 30.10.2026
Обновленная версия ранее созданной обработки.
Добавлены следующие реквизиты типа Булево:
- Буквы;
- Цифры;
- Символы.
Изменена логика команды "Сгенерировать" и процедуры "ПриОткрытии":. . .
|
Генератор паролей (вариант №1)
Maks 29.10.2026
Реализация из решения ниже выполнена исключительно по моей инициативе, дабы облегчить себе работу в создании паролей для администрируемых мною сервисов и пользователей.
Самым главным критерием для. . .
|