Easyelectronics.ru

Электроника для всех
Текущее время: 22 авг 2019, 20:55

Часовой пояс: UTC + 5 часов



JLCPCB – Прототипы печатных плат за $2/10pcs (Любой цвет!)
Крупнейший производитель печатных плат и прототипов. Более 600000 клиентов и свыше 10000 заказов в день!
Получите скидку на почтовую отправку при первом заказе в JLCPCB!

Начать новую тему Ответить на тему  [ Сообщений: 1239 ]  На страницу Пред.  1 ... 43, 44, 45, 46, 47, 48, 49, 50  След.
Автор Сообщение
 Заголовок сообщения: Re: STemWin на STM32F4. Первый опыт. Вопросы.
СообщениеДобавлено: 09 дек 2017, 15:38 
Заглядывает иногда

Зарегистрирован: 17 апр 2013, 21:00
Сообщения: 116
x893 писал(а):
Код конечно хорошо, но внешний вид удручает.

А что не так? Пробелов не хватает?
Покажите пример своего кода, посмотрим на стиль.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: STemWin на STM32F4. Первый опыт. Вопросы.
СообщениеДобавлено: 11 дек 2017, 12:25 
Старожил

Зарегистрирован: 16 ноя 2012, 07:47
Сообщения: 2847
Возник следующий вопрос, связан со скриншотами. К примеру, мне надо сделать скрин, когда изменяется состояние виджета Radio. Однако, как узнать что он уже перерисовался физически? RADIO_SetValue() не вызывает сиюминутную перерисовку. Можно, конечно, сделать 1-2 секунды паузы, и потом делать скрин, однако мне кажется это неверный путь. Пробовал по сообщению WM_POST_PAINT, однако тогда bmp-шка получается кривая, частично перерисованная, частично нет.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: STemWin на STM32F4. Первый опыт. Вопросы.
СообщениеДобавлено: 11 дек 2017, 13:15 
Заглядывает иногда

Зарегистрирован: 17 апр 2013, 21:00
Сообщения: 116
Где-то у вас есть запуск GUI_Exec(), вот после него и делать скрин.
Удалось интегрировать мой код и проверить скорость?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: STemWin на STM32F4. Первый опыт. Вопросы.
СообщениеДобавлено: 11 дек 2017, 14:03 
Старожил

Зарегистрирован: 16 ноя 2012, 07:47
Сообщения: 2847
Код сохранил, но пока не проверял.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: STemWin на STM32F4. Первый опыт. Вопросы.
СообщениеДобавлено: 12 фев 2018, 20:50 
Заглядывает иногда

Зарегистрирован: 14 авг 2012, 14:40
Сообщения: 70
ПРиветствую комрады. Пытаюсь запустить STemwin (5.32) на 429zi вместе с дисплеем 480х272 по RGB интерфейсу (LTDC). Сам дисплей без библиотеки работает нормально. Вывожу картинки без проблем. Но вот запустить библиотеку не получается. В модуле GUIConfig интересного особо ничего нет. единственное - памяти выделил 140кБайт во внутренней оперативе. А вот LCDconfig я взял из примеров stemwin. Файл называется LCDConf_stm324x9i_eval_MB1046.c. Поменял в нем то что касается дисплея: разрешение, тайминги, пины. и теперь пытаюсь запустить. Но проблема возникает следующая. Когда stemwin вызывает функцию LCD_X_DisplayDriver(unsigned LayerIndex, unsigned Cmd, void * pData) в первый раз приходит команда LCD_X_SETSIZE и указатель на указатель pData. Выполнение команды проходит как надо. Данные по этому указателю лежат какие и должны (480х272). Следующий вызов этой функции уже с командой LCD_X_SETVRAMADDR и опять верным указателем на указатель по которому я нахожу адрес моего видеобуффера. А вот дальше начинается что-то странное. Вызов этой функции продолжается в цикле с этой же командой при этом указатель на указатель начинает уменьшатся с шагом 0x38. Т.е. самый первый верный указатель на адрес буфера равен 0x10001FB0, далее он уменьшается с каждым вызовом пока не пересечет 0x10000000. и далее мы вываливаемся в HardFault. Пока происходят эти вызовы, других команд не приходит. только LCD_X_SETVRAMADDR. В чем может быть дело? Что я там сломал? Прикладываю используемый файл LCDConfig.


Вложения:
LCDConf_stm324x9i_eval_MB1063.c [52.16 Кб]
Скачиваний: 414
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: STemWin на STM32F4. Первый опыт. Вопросы.
СообщениеДобавлено: 14 фев 2018, 13:35 
Старожил
Аватара пользователя

Зарегистрирован: 23 янв 2013, 12:33
Сообщения: 1769
Откуда: Донецк, ДНР
Что-то Ваш LCDConf.c сложный какой-то. Я такого никогда не видел, потому не могу сказать, что там правильно, а что нет.
Прилагаю свой файл.

Там просто подключается встроенный LIN драйвер, входящий в состав STemWin. Инит дисплея (LTDC) я там не делаю, т.к. он у меня инитится раньше, до запуска гуя.
Вам там надо исправить разрешение дисплея (у меня 800x480) и значение VRAM_ADDR - адрес начала фреймбуфера LTDC.
#include "fmc_sdram.h" можете вообще выкинуть, всё что оттуда берётся это SDRAM_BASE - адрес начала SDRAM, где у меня лежит фреймбуфер.


Вложения:
LCDConf.c [8.02 Кб]
Скачиваний: 401
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: STemWin на STM32F4. Первый опыт. Вопросы.
СообщениеДобавлено: 14 фев 2018, 17:01 
Заглядывает иногда

Зарегистрирован: 14 авг 2012, 14:40
Сообщения: 70
То есть получается вы библиотеке не предоставляете ни какой связи с дисплеем. Единственная связь это библиотека складывает в видеобуфер, а LTDC достает из него? Так, ну с вашим конфигом все запускается и не зависает. Но ничего не получается вывести. Библиотека ничего не пишет в видеобуфер.
пытаюсь выполнить вот этот пример:
GUI_Init();
GUI_DispString("Hello world!");
При этом при инициализации GUI_Init() закрашивает весь экран каким-то салатовым цветом (0x78 в 8-битном исполнении). И еще дополнительно вопрос, память которая выделяется для библиотеки это сначала идет непосредственно видеобуфер и потом область для остальных нужд?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: STemWin на STM32F4. Первый опыт. Вопросы.
СообщениеДобавлено: 14 фев 2018, 21:35 
Старожил
Аватара пользователя

Зарегистрирован: 23 янв 2013, 12:33
Сообщения: 1769
Откуда: Донецк, ДНР
Ruslan-maniak писал(а):
То есть получается вы библиотеке не предоставляете ни какой связи с дисплеем. Единственная связь это библиотека складывает в видеобуфер, а LTDC достает из него?

Да. Любое рисование на LTDC дисплее - просто запись чего-то в его фреймбуфер. Это ж не SSD1963 какой-нибудь, где для вывода одной точки надо пульнуть в него 5 команд ..

Ruslan-maniak писал(а):
Но ничего не получается вывести. Библиотека ничего не пишет в видеобуфер.
пытаюсь выполнить вот этот пример:
GUI_Init();
GUI_DispString("Hello world!");
При этом при инициализации GUI_Init() закрашивает весь экран каким-то салатовым цветом (0x78 в 8-битном исполнении). И еще дополнительно вопрос, память которая выделяется для библиотеки это сначала идет непосредственно видеобуфер и потом область для остальных нужд?


Код:
    GUI_Init ( );
   WM_SetDesktopColor ( GUI_BLACK );
   // Очистка экрана
   GUI_Clear ( );

    GUI_DispString("Hello world!");

У меня всё прекрасно вывелось.
Попробуйте задать перед выводом шрифт для вывода:
Код:
  //
  // Set default font
  //
  GUI_SetDefaultFont(GUI_FONT_6X8);

У меня он задаётся в GUI_X_Config.c, там же, где и GUI_ALLOC_AssignMemory. По-моему это новшество для 5.40. В более ранних я такого не замечал.
Цвет для закраски задавайте явно. Хз, что там у них по умолчанию. Может и 0x78 ...

Ruslan-maniak писал(а):
И еще дополнительно вопрос, память которая выделяется для библиотеки это сначала идет непосредственно видеобуфер и потом область для остальных нужд?

Библиотеке всё равно. Для неё это 2 разных буфера.
Вызов LCD_SetVRAMAddrEx(0, (void *)VRAM_ADDR); задаёт адрес фреймбуфера LTDC, а GUI_ALLOC_AssignMemory в GUIConf.c задаёт буфер и его размер для остальных нужд.
А куда Вы их запихаете - Ваше личное дело.
У меня оба в SDRAM. Сперва фрейм, потом всё остальное.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: STemWin на STM32F4. Первый опыт. Вопросы.
СообщениеДобавлено: 15 фев 2018, 08:29 
Заглядывает иногда

Зарегистрирован: 14 авг 2012, 14:40
Сообщения: 70
Спасибо за разъяснение с буфером. В описании оно как-то не внятно разделено. Ок. Я создал 2 буфера:
Код:
uint8_t frameBuffer[480*272];

#define GUI_NUMBYTES  60000
U32 aMemory[GUI_NUMBYTES/4];

И вот все их использования
Код:
LTDC_Layer_InitStruct.LTDC_CFBStartAdress = (uint32_t)frameBuffer;

LCD_SetVRAMAddrEx(0, (void *)frameBuffer);

GUI_ALLOC_AssignMemory(aMemory, GUI_NUMBYTES);

Но после инициализации GUI и закрашивания при ней цветом 0х78 всего фрэймбуфера, библиотека не вносит абсолютно ни каких изменений в память фрэймбуфера какие бы функции библиотеки я не вызывал. В том числе которые вы предложили выше. Вручную память фрэймбуфера редактируется и это отображается на дисплее.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: STemWin на STM32F4. Первый опыт. Вопросы.
СообщениеДобавлено: 15 фев 2018, 09:29 
Старожил

Зарегистрирован: 16 ноя 2012, 07:47
Сообщения: 2847
а буфер не маловат? один байт на цвет? Какой режим RGB выставляете на LTDC?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: STemWin на STM32F4. Первый опыт. Вопросы.
СообщениеДобавлено: 15 фев 2018, 10:07 
Старожил

Зарегистрирован: 18 июл 2016, 21:17
Сообщения: 746
Однобайтный цвет можно использовать. Можно включить градации серого, тогда сразу работает. А если нужен цвет, то надо вручную заполнять перекодировочную таблицу, которая после сброса забита мусором.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: STemWin на STM32F4. Первый опыт. Вопросы.
СообщениеДобавлено: 15 фев 2018, 10:09 
Старожил

Зарегистрирован: 18 июл 2016, 21:17
Сообщения: 746
Hold писал(а):
а буфер не маловат? один байт на цвет? Какой режим RGB выставляете на LTDC?

А какая разница, если
Цитата:
Вручную память фрэймбуфера редактируется и это отображается на дисплее.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: STemWin на STM32F4. Первый опыт. Вопросы.
СообщениеДобавлено: 15 фев 2018, 10:37 
Заглядывает иногда

Зарегистрирован: 14 авг 2012, 14:40
Сообщения: 70
Цитата:
а буфер не маловат? один байт на цвет? Какой режим RGB выставляете на LTDC?

Фрэймбуфер? точно под размер. Используется однобайтный. LTDC_Layer_InitStruct.LTDC_PixelFormat = LTDC_Pixelformat_L8;
Цитата:
Однобайтный цвет можно использовать. Можно включить градации серого, тогда сразу работает. А если нужен цвет, то надо вручную заполнять перекодировочную таблицу, которая после сброса забита мусором.

Таблицу заполняю
Код:
    LTDC_CLUT_InitTypeDef  LTDC_CLUT_InitStruct;
    LTDC_CLUTCmd(LTDC_Layer1, ENABLE);
    for (uint32_t i = 0; i < 256; i++)
    {
        uint32_t Color = CLUT[i];
        LTDC_CLUT_InitStruct.LTDC_BlueValue   =  ((Color >> 16) & 0xff);
        LTDC_CLUT_InitStruct.LTDC_GreenValue  =  ((Color >>  8) & 0xff);
        LTDC_CLUT_InitStruct.LTDC_RedValue    =   (Color        & 0xff);
        LTDC_CLUT_InitStruct.LTDC_CLUTAdress  =  i;
        LTDC_CLUTInit(LTDC_Layer1, &LTDC_CLUT_InitStruct);
    }   

Цвета выводятся адекватно этой таблице. В этом проблем нет. Проблема именно в том что либа ничего не делает во фреймбуфере.
Дополню еще что в либе настроено
#define COLOR_CONVERSION GUICC_8666
#define DISPLAY_DRIVER GUIDRV_LIN_8


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: STemWin на STM32F4. Первый опыт. Вопросы.
СообщениеДобавлено: 15 фев 2018, 15:54 
Старожил

Зарегистрирован: 16 ноя 2012, 07:47
Сообщения: 2847
Прикладываю свой LcdConf. Проверял на ARGB888 и на RGB565, может чем поможет. Выдрал с какого-то примера


Вложения:
LCDConf.c [48.81 Кб]
Скачиваний: 403
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: STemWin на STM32F4. Первый опыт. Вопросы.
СообщениеДобавлено: 15 фев 2018, 20:21 
Заглядывает иногда

Зарегистрирован: 14 авг 2012, 14:40
Сообщения: 70
Hold писал(а):
Прикладываю свой LcdConf. Проверял на ARGB888 и на RGB565, может чем поможет. Выдрал с какого-то примера

Да, изначальный мой конфиг точно такой же. Но с ним та же байда. У меня кстати с ним не работало из-за неправильного распределения памяти. После разъяснений hd44780 я его починил. И с ним тоже перестало сваливаться в хардФолл. Но абсолютно также либа ничего не рисует во фрейм буфере. Даже не знаю что делать. На всякий случай выложу все конфиги от либы с которыми пытаюсь запустить.


Вложения:
GUIConf.h [4.01 Кб]
Скачиваний: 422
GUIConf.c [3.66 Кб]
Скачиваний: 380
GUI_X.c [4.51 Кб]
Скачиваний: 408
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: STemWin на STM32F4. Первый опыт. Вопросы.
СообщениеДобавлено: 15 фев 2018, 20:22 
Заглядывает иногда

Зарегистрирован: 14 авг 2012, 14:40
Сообщения: 70
Хидер для этого сорса используется стандартный лежащий в папке inc либы


Вложения:
LCDConf.c [8.06 Кб]
Скачиваний: 397
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: STemWin на STM32F4. Первый опыт. Вопросы.
СообщениеДобавлено: 17 фев 2018, 14:43 
Заглядывает иногда

Зарегистрирован: 14 авг 2012, 14:40
Сообщения: 70
Вроде все заработало. Но в чем была причина я так и не понял. Код в конфигах не менял. Появился такой вопрос. Если я не использую тачскрин и все управление идет с внешней клавиатуры, то единственный способ связать графику и то что происходит вне графики, это запустить таймер в окне и по этому таймеру смотреть что там в основной программе происходит и реагировать на это?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: STemWin на STM32F4. Первый опыт. Вопросы.
СообщениеДобавлено: 17 фев 2018, 21:25 
Старожил
Аватара пользователя

Зарегистрирован: 23 янв 2013, 12:33
Сообщения: 1769
Откуда: Донецк, ДНР
Поздравляю.

Ruslan-maniak писал(а):
все управление идет с внешней клавиатуры, то единственный способ связать графику и то что происходит вне графики, это запустить таймер в окне и по этому таймеру смотреть что там в основной программе происходит и реагировать на это?


Этого не понял. Вы хотите использовать что-то вместо тача или использовать клавиатуру?
Координаты курсора мыши загоняются в гуй функцией GUI_TOUCH_StoreStateEx. В примерах её вызывают в прерывании систика 1ms. Можно ещё в фоновой задаче, если Вы используете что-то типа FreeRTOS.

Откуда берутся сами координаты - всё равно.
С клавиатуры можно буковки вводить. Я, например, вводил с клавиатуры пароль WiFi. Посмотрите в доке на STemWin функцию GUI_StoreKeyMsg.

И что за клавиатура? 4x4/PS2/USB?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: STemWin на STM32F4. Первый опыт. Вопросы.
СообщениеДобавлено: 18 фев 2018, 13:16 
Заглядывает иногда

Зарегистрирован: 14 авг 2012, 14:40
Сообщения: 70
hd44780 писал(а):
Этого не понял. Вы хотите использовать что-то вместо тача или использовать клавиатуру?
Координаты курсора мыши загоняются в гуй функцией GUI_TOUCH_StoreStateEx. В примерах её вызывают в прерывании систика 1ms. Можно ещё в фоновой задаче, если Вы используете что-то типа FreeRTOS.
Откуда берутся сами координаты - всё равно.
С клавиатуры можно буковки вводить. Я, например, вводил с клавиатуры пароль WiFi. Посмотрите в доке на STemWin функцию GUI_StoreKeyMsg.
И что за клавиатура? 4x4/PS2/USB?

Будет использоваться обычная матричная клавиатура. Так как это все будет использоваться на грязном производстве работягами. Так что тача там не будет. Ну как я уже понял можно использовать message для передачи нажатий и других событий в графику. То есть я планирую обновлять постоянно отображаемые данные по таймеру, а события отправлять мессаджами. Такой подход это норма на ваш взгляд? За функцию GUI_StoreKeyMsg спасибо. Гляну. Может получится через нее отправлять нажатия в графику.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: STemWin на STM32F4. Первый опыт. Вопросы.
СообщениеДобавлено: 18 фев 2018, 18:19 
Старожил
Аватара пользователя

Зарегистрирован: 23 янв 2013, 12:33
Сообщения: 1769
Откуда: Донецк, ДНР
Матричная клавиатура - нормально. Но для передачи нажатий message там даром не нужен, он для этого не предназначен.
GUI_TOUCH_StoreStateEx в систике и всё. Гуй сам прекрасно определяет, где в данный момент находится курсор и во что именно ткнули. Только не забудьте включить его функцией GUI_CURSOR_Show ( ).

C message вы такого не сделаете.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: STemWin на STM32F4. Первый опыт. Вопросы.
СообщениеДобавлено: 18 фев 2018, 20:45 
Заглядывает иногда

Зарегистрирован: 14 авг 2012, 14:40
Сообщения: 70
hd44780 писал(а):
Матричная клавиатура - нормально. Но для передачи нажатий message там даром не нужен, он для этого не предназначен.
GUI_TOUCH_StoreStateEx в систике и всё. Гуй сам прекрасно определяет, где в данный момент находится курсор и во что именно ткнули. Только не забудьте включить его функцией GUI_CURSOR_Show ( ).
C message вы такого не сделаете.

Да не, тача вообще не будет. То есть будет графика, в ней несколько окон с активными элементами (скорее всего это только кнопки) и путем нажатия на клавиши клавиатуры будет осуществляться навигация и управление в графике. Как я понимаю из руководства для этого нужно заюзать GUI_StoreKeyMsg и уже в обработчике окон отрабатывать прилетающие нажатия. Это правильный подход? Просто до ваше подсказки я планировал это делать обычными мессаджами, а не KeyMsg.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: STemWin на STM32F4. Первый опыт. Вопросы.
СообщениеДобавлено: 20 фев 2018, 14:30 
Старожил

Зарегистрирован: 27 сен 2013, 16:44
Сообщения: 229
Откуда: ЛНР, г. Луганск
здравствуйте. вот перешёл с Coocox на CUBE+Keil и столкнулся с тем, что не могу нормально заставить emwin откликнуться на тачпад, хотя в кактусе всё исправно работало.

опрос тача в таймере 6, прерывание настроено и работает (судя по обращению к светодиоду)
Код:
void TIM6_DAC_IRQHandler(void)
{
  /* USER CODE BEGIN TIM6_DAC_IRQn 0 */

  /* USER CODE END TIM6_DAC_IRQn 0 */
  HAL_TIM_IRQHandler(&htim6);
  /* USER CODE BEGIN TIM6_DAC_IRQn 1 */
   HAL_GPIO_TogglePin(LED_GPIO_Port, LED_Pin);
  Touch_Update();
  /* USER CODE END TIM6_DAC_IRQn 1 */
}


вот опрос тача
Код:
extern SPI_HandleTypeDef hspi3;
//------------------------------------------------------------------------------------------------------------
static void SpiDelay(uint8_t DelayCnt)
{
   uint8_t i;
   for (i=0; i<DelayCnt; i++);
} // SpiDelay
//--------------------------------------------------------------------------------------------------
/* Возвращает состояние линии PENIRQ для обнаружения события касания.
  * возвращает 1, Если событие касания признается и 0 В противном случае. */
char isTouch (void)
{
    if(HAL_GPIO_ReadPin(TS_IRQ_GPIO_Port, TS_IRQ_Pin)==RESET )   {return 1;}   // касание было
      else                                                                                    {return 0;}
} // isTouch
//------------------------------------------------------------------------------------------------------------
static void TouchScreen_SPI_WR(uint8_t cmd)
{
   HAL_SPI_Transmit(&hspi3, &cmd, 1, 100);
}
//------------------------------------------------------------------------------------------------------------
static uint16_t TouchScreen_SPI_RD(void)
{
   uint8_t buffer[2] = {0};
   uint8_t dummy[2] = {0};
  uint16_t result, MSB, LSB;
   
   HAL_SPI_TransmitReceive(&hspi3, dummy, buffer, 2, 100);

   MSB=(uint16_t)buffer[1];
   LSB=(uint16_t)buffer[0];
   result=(((MSB<<4) & 0x0FF0)|((LSB>>12) & 0x000F))<<1;
   
return result;
}
//------------------------------------------------------------------------------------------------------------
static void TouchScreen_SPI_CS(char OnOff)
{
  if (OnOff)    {TouchScreen_Set_CS;}
   else             {TouchScreen_Clr_CS;}
}
//------------------------------------------------------------------------------------------------------------
// Чтение и корректировка координат тача

static void ReadTouchXY (uint16_t *px, uint16_t *py)
{
   uint16_t x, y, aX, aY;
   
   // X
   TouchScreen_Clr_CS;
   TouchScreen_SPI_WR(0xD0);
  aX=TouchScreen_SPI_RD();

   SpiDelay(10);   
   // Y
   TouchScreen_SPI_WR(0x90);
  aY=TouchScreen_SPI_RD();
   TouchScreen_Set_CS;
   
   x=(aX-136)*800/3920;
  y=480-((aY-200)*480/3700);
   *px=x;
   *py=y;
} // ReadTouchXY
//------------------------------------------------------------------------------------------------------------
void Touch_Update ( void )
{
  GUI_PID_STATE TS_State;
  uint16_t x, y;

  ReadTouchXY (&x, &y);
   
TS_State.x=x;
TS_State.y=y;
TS_State.Pressed=isTouch();

if((x<LCD_GetXSize())&&(y<LCD_GetYSize()))    {GUI_TOUCH_StoreStateEx (&TS_State);};
}


в отладчике показывает (например, нажимаю на кнопку) TS_State={120, 130, 1, 0}, т.е. координаты правильные и нажатие было, но на экране нажатия нет.
Если на экране нажать кнопку и на дискавери нажать сброс, то пр отрисовке кнопка нажимается (закрашивается) и затем сброса нет и реакции на нажатие других тоже.

GUIConf настроено как м в Кактусе
Код:
/*********************************************************************
*
*       Multi layer/display support
*/
#define GUI_NUM_LAYERS            1    // Maximum number of available layers

/*********************************************************************
*
*       Multi tasking support
*/
#ifdef OS_SUPPORT
#define GUI_OS                    (1)  // Compile with multitasking support
#else
#define GUI_OS                    (0)
#endif

/*********************************************************************
*
*       Configuration of touch support
*/
#ifndef   GUI_SUPPORT_TOUCH
  #define GUI_SUPPORT_TOUCH       (1)  // Support touchscreen
#endif

/*********************************************************************


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: STemWin на STM32F4. Первый опыт. Вопросы.
СообщениеДобавлено: 20 фев 2018, 17:09 
Старожил

Зарегистрирован: 27 сен 2013, 16:44
Сообщения: 229
Откуда: ЛНР, г. Луганск
ради интереса перенёс мигание светодиодом в
Код:
if((x<LCD_GetXSize())&&(y<LCD_GetYSize()))    {GUI_TOUCH_StoreStateEx (&TS_State);
                                                                         перенёс сюда};


при нажатии тачпада он мигает, т.е. условие выполняется...а реакции на нажатие как не было так и нет


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: STemWin на STM32F4. Первый опыт. Вопросы.
СообщениеДобавлено: 21 фев 2018, 14:30 
Старожил

Зарегистрирован: 27 сен 2013, 16:44
Сообщения: 229
Откуда: ЛНР, г. Луганск
в этой ветке живые есть??


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: STemWin на STM32F4. Первый опыт. Вопросы.
СообщениеДобавлено: 21 фев 2018, 19:44 
Старожил
Аватара пользователя

Зарегистрирован: 23 янв 2013, 12:33
Сообщения: 1769
Откуда: Донецк, ДНР
banzayy писал(а):
в этой ветке живые есть??

Все ушли на фронт ... :)))
Я в Keil не работаю, потому сказать мне особо нечего...
С кубовым халом я тоже на Вы. Я на SPL+регистры пишу :)

Навскидку - если у Вас гуй не реагирует на нажатия, то проверяйте эту строчку
TS_State.Pressed=isTouch();

Нажатия/отпускания передаются исключительно через это поле.

banzayy писал(а):
ради интереса перенёс мигание светодиодом в
Код:
if((x<LCD_GetXSize())&&(y<LCD_GetYSize()))    {GUI_TOUCH_StoreStateEx (&TS_State);
                                                                         перенёс сюда};


при нажатии тачпада он мигает, т.е. условие выполняется...а реакции на нажатие как не было так и нет

Мигание/условие показывает, что координаты с тача не вылетели за пределы экрана попали в экран. И не более.
А флажок нажал/отпустил Вы здесь светодиодом никак не проверяете.


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 1239 ]  На страницу Пред.  1 ... 43, 44, 45, 46, 47, 48, 49, 50  След.

Часовой пояс: UTC + 5 часов


Кто сейчас на конференции

Сейчас этот форум просматривают: VladislavS


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  

Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB