|
3 / 3 / 0
Регистрация: 06.12.2016
Сообщений: 1,605
|
||||||
STemWin на STM32F4. Первый опыт. Вопросы.21.12.2013, 23:06. Показов 835323. Ответов 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 |
|
1 / 1 / 0
Регистрация: 19.07.2013
Сообщений: 423
|
|
| 13.01.2014, 23:02 | |
|
0
|
|
|
5 / 5 / 5
Регистрация: 20.11.2010
Сообщений: 173
|
|
| 13.01.2014, 23:49 | |
|
Похоже что чтения таки нет, просто затычка, поэтому такая хохлома и выходит...
0
|
|
|
3 / 3 / 0
Регистрация: 06.12.2016
Сообщений: 1,605
|
|
| 13.01.2014, 23:54 | |
|
Да, прикрыл я у себя _GetPyxitIndex (чтение пикселя) - тоже чёрный след пошёл.
0
|
|
|
1 / 1 / 0
Регистрация: 19.07.2013
Сообщений: 423
|
|
| 14.01.2014, 00:27 | |
|
Да, чтение не работает, функция LcdReadDataMultiple пишет нули в массив (
0
|
|
|
0 / 0 / 0
Регистрация: 23.08.2013
Сообщений: 206
|
|
| 14.01.2014, 01:35 | |
|
Поделитесь теперь примером как настроить тачскрин.
Тач контроллер XPT2046 подключен по SPI. Спасибо.
0
|
|
|
3 / 3 / 0
Регистрация: 06.12.2016
Сообщений: 1,605
|
||||||
| 14.01.2014, 11:14 | ||||||
|
Тач - легко. Ноги, SPI, контроллер инициализируете в main до запуска оболочки.
Драйвер тача пишете сами. Пишете где-то функции типа:
В GUIConf.h указать #define GUI_SUPPORT_TOUCH (1) // Support touchssreen
0
|
||||||
|
STmim
|
|
| 14.01.2014, 14:36 | |
|
удалось запустить emWin. но вот проблема после отрисовки экрана система падает в Hord Fault. в чем может быть трабла?
|
|
|
0 / 0 / 0
Регистрация: 26.01.2013
Сообщений: 208
|
||
| 14.01.2014, 16:13 | ||
0
|
||
|
1 / 1 / 0
Регистрация: 19.07.2013
Сообщений: 423
|
|
| 14.01.2014, 17:01 | |
|
Контроллер будет делать то, что вы в него отправите по spi. В приведенном выше примере используется периодический опрос контроллера т.н. поллинг.
0
|
|
|
0 / 0 / 0
Регистрация: 23.08.2013
Сообщений: 206
|
|
| 15.01.2014, 07:07 | |
|
Спасибо. Тач заработал.
Кстати хоть выше и писали что GUI_TOUCH_StoreStateEx необходимо вызывать постоянно в цикле, но я все таки считаю вариант, когда он вызывается только при условии (TS_State.Pressed == 1) более правильным.
0
|
|
|
3 / 3 / 0
Регистрация: 06.12.2016
Сообщений: 1,605
|
||
| 16.01.2014, 11:03 | ||
Попробуйте, если хотите :)
0
|
||
|
0 / 0 / 0
Регистрация: 30.09.2013
Сообщений: 210
|
||||||
| 16.01.2014, 12:13 | ||||||
|
попытался скомпилить исходник STemWinTest-Coosox_Test и получил кучу ошибок.
насколько я понимаю у меня что-то не подключено с компилятора. подскажите что не так
0
|
||||||
|
1 / 1 / 0
Регистрация: 11.01.2013
Сообщений: 5,479
|
||
| 16.01.2014, 13:30 | ||
Если выбираете последний вариант, то ещё в коде инициализации МК необходимо включить FPU-сопроцессор. Посмотрите, есть ли у Вас код, активирующий биты в регистре CPACR.
0
|
||
|
0 / 0 / 0
Регистрация: 23.08.2013
Сообщений: 206
|
||
| 16.01.2014, 13:50 | ||
Попробуйте, если хотите :) Тогда вызывать GUI_TOUCH_StoreStateEx только когда есть касание и при отпускании. Тачпад это не мышь. У меня например когда нет касания контроллер тача выдает координату 320, 0 .
0
|
||
|
0 / 0 / 0
Регистрация: 30.09.2013
Сообщений: 210
|
|
| 16.01.2014, 14:20 | |
|
я брал исходник, что выкладывал в начале HD44780
в конфигурации FPU HARD включен, т.к. видимо прописан в проекте
0
|
|
|
1 / 1 / 0
Регистрация: 11.01.2013
Сообщений: 5,479
|
||
| 16.01.2014, 14:46 | ||
Да и файла проекта я там не нашёл. И ни одного использования ftoot не видно. Если лень разбираться - попробуйте просто изменить на "не использовать FPU" в свойствах проекта.
0
|
||
|
0 / 0 / 0
Регистрация: 30.09.2013
Сообщений: 210
|
|
| 16.01.2014, 15:17 | |
|
полный проект был на 2-й странице
всё норм. просто переподключил в конфиге libm.a заново и всё скомпилилось
0
|
|
|
1 / 1 / 0
Регистрация: 11.01.2013
Сообщений: 5,479
|
||
| 16.01.2014, 15:47 | ||
А дефайн __TARGET_FPU_VFP у Вас определён?
0
|
||
|
3 / 3 / 0
Регистрация: 06.12.2016
Сообщений: 1,605
|
|
| 17.01.2014, 23:03 | |
|
Как у DROPDOWN задать высоту выпадающего списка? Мелкий зараза, полторы строчки видно всего :(
В самом DROPDOWN функций таких не нашёл, как впрочем и в LISTBOX, если получить его через DROPDOWN_GetListbox ... PS. FPU я сам не включал в коде. Файлы стартапа стандартные, я только макросы написал нужные в конфиге проекта и всё...
0
|
|
|
0 / 0 / 0
Регистрация: 26.01.2013
Сообщений: 208
|
||
| 21.01.2014, 02:40 | ||
19 - LED-A pull-up 1-10k Подскажите, вы какой резистор на LED-A ставили? дискавери по току потянет дисплей питать? или отдельный стабилизатор ставить на +Vcc?
0
|
||
| 21.01.2014, 02:40 | |
|
STM32F4-Discovery(подключение и глупые вопросы) STM32F4+ETH(Вопросы по PHY KSZ8863) [решено]stm32f4 ethernet phy вопросы Первый опыт Первый опыт Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Копировать Windows на новый диск на UEFI
damix 17.10.2026
https:/ / uriesk. wordpress. com/ 2016/ 11/ 01/ move-window-10-to-ssd-on-a-uefi-dualboot-system-with-basic-linux-tools/
TL DR
Вставляем диск, а старый подключаем через переходник, грузимся с лайва. . .
|
ИИ не может найти нужный язык в списке
Supersumestria 05.10.2026
Я ему даю вот такое изображение и прошу найти и подчеркнуть немецкий язык.
Возвращает он вот это:
https:/ / i. **********/ vqBWLe2. png
Нужную строчку в 3й колонке просто выдумал. .
Это. . .
|
Новая последняя моя музыка в SUNO
zorxor 05.10.2026
Здравствуйте, дорогие мои друзья! С большой радостью я хотел бы представить вам свою новую последнею музыку, которую сгенерировала мне по моей просьбе нейросеть SUNO. С уважением, zorxor.
Это. . .
|
Программный домашний кинотеатр
russiannick 27.09.2026
Сподобился на программный домашний кинотеатр. В качестве ЯВУ по традиции выбрал js.
В помощники взял Яндекс-Алису.
Было создано три зала на разные интересы.
исторические и ретро
сериал Хичкок. . .
|
|
Беседа с ИИ о программистах, недопускающих к созданию и правке кода генеративные ИИ и причины этого
zorxor 21.09.2026
Раньше я радовался или получал некоторые эмоции, пусть небольшие, но всё же, от самого процесса написания кода, рекомпиляции и запуска, видя постепенное развитие программы и прочее. А теперь лень. . .
|
Мобильное приложение ColorStep
pavlinmavlin 17.09.2026
Реализовал приложение Красный, Зеленый, Синий в Unity3d + c#.
Название изменил на ColorStep.
Приложение прошло модерацию и теперь доступно для скачивания. Делал его сам, шаг за шагом — и вот,. . .
|
Запрет дублирования строк в табличной части
Maks 13.09.2026
Реализация из решения ниже выполнена на нетиповом справочнике "Нормы ТО" с табличной часть "Виды ТО", разработанного в КА2, со следующими реквизитами:
- ВидТО (СправочникСсылка. ВидыТО);
- ВидГСМ. . .
|
Скрипты Tampermonkey для CyberForum, ChatGPT, Claude и пр.
Jin X 06.09.2026
Скрипты Tampermonkey для CyberForum, ChatGPT, Claude и пр.
Работая с форумом и нейросетями в браузере часто хочется что-то подкорректировать или добавить какого-то функционала.
Ниже прикреплён. . .
|