Easyelectronics.ru

Электроника для всех
Текущее время: 16 окт 2019, 07:24

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



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

Начать новую тему Ответить на тему  [ Сообщений: 1244 ]  На страницу Пред.  1 ... 38, 39, 40, 41, 42, 43, 44 ... 50  След.
Автор Сообщение
 Заголовок сообщения: Re: STemWin на STM32F4. Первый опыт. Вопросы.
СообщениеДобавлено: 07 апр 2017, 09:59 
Старожил
Аватара пользователя

Зарегистрирован: 23 янв 2013, 12:33
Сообщения: 1785
Откуда: Донецк, ДНР
desiner писал(а):
Стандартный набор демо STemWin на основе CMSIS+Keil4 проходят на ура. Те же тесты на основе HAL+Keil4 проходят частично. Не работают виджеты FrameWindows. Подозреваю, что проблема с настройкой тактирования. В CMSIS для увеличения OS_TimeMS используется отдельный таймер TIM3. В HAL волшебная константа OS_TimeMS увеличивается прерыванием по SYSTick. Проект настраивается CubeMX стандартно внешний кварц на 8 мгц. Тактовая частота 168 мгц. Помогите разобраться в этой проблеме.


С кубом не работаю, точно не подскажу, не знаю. Проверьте каким-либо образом, что OS_TimeMS инкрементируется раз в 1 мс. Именно так происходит в некубовом варианте.


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

Зарегистрирован: 30 мар 2017, 15:13
Сообщения: 12
Доброго времени суток.
Продолжаю разбираться с STemWin. Научился создавать и редактировать виджеты и окна в GUIBuilder. И созрел у меня такой вопрос: дисплей у меня без тача, пользую плату STM32F4-Discovery. Хочу подключить на порты несколько кнопок, чтобы управлять с их помощью дисплеем. Как сделать так, чтобы при нажатии на физическую кнопку, нажималась и кнопка меню дисплея? Короче говоря, как управлять виджетами? Читал руководство emWin.Функции работы с виджетами там описаны, но я никак не могу состыковать работу в файле, созданном в GUIBuilder и реализацию управления виджетами от кнопок в обработчике прерываний. Подскажите пожалуйста, куда копать.
Спасибо.


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

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


Посмотрите, как сделана в моём примере работа с мышью.
Там есть примерно такая конструкция:

Код:
   GUI_PID_STATE TS_State;
   uint16_t xMax, yMax;

   xMax = LCD_GetXSize ( );
   yMax = LCD_GetYSize ( );
   TS_State.Layer = 0;

   if ( mouse_data.is_new_data_present )
   {
      mouse_data.is_new_data_present = false;

      TS_State.x = mouse_data.xpos;
      TS_State.y = mouse_data.ypos;
      TS_State.Pressed = 0;
      // Page 395
      if ( mouse_data.btn_left )
         TS_State.Pressed = 1;

      // Передача координат в GUI
      if ( TS_State.x < xMax && TS_State.y < yMax )
         GUI_TOUCH_StoreStateEx ( &TS_State );
   } // if


Т.е. Вы функцией GUI_TOUCH_StoreStateEx загоняете в гуй координаты курсора и признак нажато/не нажато.
А координаты меняйте где хотите и как хотите. Гую глубоко пофигу откуда они у Вас берутся.
Сделайте, например, какой-то таймер, в его прерывании опрашивайте Ваши кнопки и меняйте соответствующие переменные. Или сразу пихайте их в этот GUI_TOUCH_StoreStateEx - как Вам удобно.

Это всё, что от Вас требуется. А виджеты отрабатывать - забота самого гуя. Вам это делать не нужно.


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

Зарегистрирован: 30 мар 2017, 15:13
Сообщения: 12
Спасибо. Буду пробовать.
А можете ваш пример скинуть или ссылку на пост, в котором вы его выкладывали?


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

Зарегистрирован: 13 мар 2012, 15:24
Сообщения: 70
Откуда: Татарстан
Привет всем. Подскажите кто работал с ICONVIEW. ? Создал новое окно в GUIBuilder в него поместил ICONVIEW и пытаюсь загрузить картинку в него файл dta. Но почему то в генераторе не отображается картинка хотя на выходе в файле WindowDLG.с есть массив с картинкой. Это так и должно быть? Может кто скинуть файл созданный в GUIBuilder с иконками. Примеров не нашел к сожалению.


Вложения:
Скриншот 2017-04-11 09.49.44.png
Скриншот 2017-04-11 09.49.44.png [ 52.43 Кб | Просмотров: 5482 ]
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: STemWin на STM32F4. Первый опыт. Вопросы.
СообщениеДобавлено: 11 апр 2017, 12:53 
Старожил
Аватара пользователя

Зарегистрирован: 23 янв 2013, 12:33
Сообщения: 1785
Откуда: Донецк, ДНР
rukh писал(а):
Спасибо. Буду пробовать.
А можете ваш пример скинуть или ссылку на пост, в котором вы его выкладывали?


Тот файлообменник, где оно лежало, сдох в январе. Новая ссылка - http://my-files.ru/4ed2ab Но как долго она будет жить - не знаю.

Astronom писал(а):
Привет всем. Подскажите кто работал с ICONVIEW. ? Создал новое окно в GUIBuilder в него поместил ICONVIEW и пытаюсь загрузить картинку в него файл dta. Но почему то в генераторе не отображается картинка хотя на выходе в файле WindowDLG.с есть массив с картинкой. Это так и должно быть? Может кто скинуть файл созданный в GUIBuilder с иконками. Примеров не нашел к сожалению.

Не знаю. У меня нет. Картинки в него я пихал программно, у себя в коде, функцией ICONVIEW_AddBitmapItem. Но мне лично этот контрол не понравился. Тупой какой-то - кликаешь не на картинке элемента - он гонит сообщения, как будто в какой-то элемент ткнул. Бесит ужасно.
Всё хочу свой похожий контрол написать, да руки пока не дошли :(


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

Зарегистрирован: 30 мар 2017, 15:13
Сообщения: 12
Освоил управление каждым виджетом по-одиночке. А есть ли возможность одновременного использования виджетов? Например ввожу текст с физических кнопок: нажимаются виртуальные кнопки на дисплее и одновременно появляется текст в окошке EDIT. GUIBuilder создает файл окна с дочерними виджетами, доступ к ним идет через операторы switch(): case:. Соответственно такой код уже не канает:
Код:
      xPos = 91;//координаты кнопки
      yPos = 177;
      call_num = 89;
      TS_State.x = xPos;
      TS_State.y = yPos;
      TS_State.Pressed = 1;
      GUI_TOUCH_StoreStateEx ( &TS_State );
      GUI_Exec();
      xPos = 49;//координаты окна ввода
      yPos = 119;
      TS_State.x = xPos;
      TS_State.y = yPos;
      TS_State.Pressed = 1;
      GUI_TOUCH_StoreStateEx ( &TS_State );
      GUI_Exec();


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: STemWin на STM32F4. Первый опыт. Вопросы.
СообщениеДобавлено: 18 апр 2017, 23:02 
Только пришел

Зарегистрирован: 10 авг 2016, 13:09
Сообщения: 15
Доброго времени всем! Решил, все-таки предыдущую проблему. Дело было в стеке. Куб по умолчанию ставит 200х200. Этого мало. Нужно минимум 800 на стек и 200 на кучу. Все демо от emWin закрутилось и замигало. Дальше решил победить MultyPage. Научился листать страницы в прерываниях кнопками вперед - назад. Но вышла засада: на одной странице стоит MultyEdit. И фокус со страницы сбивается на него. Теперь нажатия кнопок добавляют символы в него и страницы не переключаются. Подскажите, люди добрые, как не терять фокус при переключениях страниц?


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

Зарегистрирован: 23 янв 2013, 12:33
Сообщения: 1785
Откуда: Донецк, ДНР
Фокус вроде можно руками переставлять ..


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

Зарегистрирован: 16 ноя 2012, 07:47
Сообщения: 2862
Запустил AT070TN94 на STM32F429BIT6 + 32Мб SDRAM. Драйвер взял из примера STemWin532 для STM324x9I-EVAL, Standalone-версия, файлик LCDConf_stm324x9i_eval_MB1063.c. Подправил инициализацию дисплея, тайминги, ноги. В итоге наблюдаю такие проблемы:
Видео работы на штатной частоте PCLK 33.3 Мгц - https://www.dropbox.com/s/o9977ld03mwnu ... z.mp4?dl=0
Видео работы на пониженной частоте PCLK 26.4 Мгц - https://www.dropbox.com/s/idlq2flkp86tv ... z.mp4?dl=0
Сооотственно вопрос - что не так? Статику выводит нормально, SDRAM работает нормально, но как только начинаются активные действия - беда. Пробовал понижать частоту на SDRAM, результата не принесло. Гонял отдельно DMA2D, заливал экран разными цветами на максимальной скорости - никаких срывов, все четко, подобного мусора нет.
UPD: еще понизил частоту до 23 МГц. Срывы пропали, однако буквы по прежнему какие-то кривые. Копаем дальше. В примере, если я верно рассчитал все делители вообще 8 мгц PCLK, но там и экран совсем другой. Слегка беспокоит, что это частота уже ниже допустимой для ЖК, непонятно как поведет себя другой экран, стабильно ли запустится.
UPD2: выделил буфер для GUI в SDRAM, 8 мегов. Скорость отрисовки упала катастрофически. Если из RAM каруселька крутилась без лагов, то сейчас просто слайдшоу. И что-то не так с драйвером, выдает всего лишь 15 мпикс/с. Должно быть под 70.
Проблема со шрифтами:
Изображение


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

Зарегистрирован: 30 мар 2017, 15:13
Сообщения: 12
Подскажите пожалуйста, по какой причине в MUTIEDIT может не отображаться курсор, хотя все настройки сделаны? Не моргает и не двигается при вводе текста.


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

Зарегистрирован: 16 ноя 2012, 07:47
Сообщения: 2862
По поводу частоты PCLK - похоже не хватает пропускной способности FMC контроллера при 16-ти битной шине данных. Стоит занизить скорость вывода на ЖК, уменьшив PCLK, как увеличивается скорость отрисовки, т.к. у проца или DMA2D появляется больше свободного времени на доступ к SDRAM, в которой видеобуфер. Стоит уменьшить формат пикселя с ARGB на RGB, как тут же увеличивается скорость отрисовки, т.к. с SDRAM тянется меньше данных. Надо ставить MT48LC4M32B2, он хотя бы в TSOP корпусе, остальные почти все BGA


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

Зарегистрирован: 23 янв 2013, 12:33
Сообщения: 1785
Откуда: Донецк, ДНР
Hold, забавно. надо будет у себя проверить. У меня тоже 16 битная шина, сейчас RGB565 включён (чтобы не было проблем с переездом с SSD1963), другие я пока не проверял.

rukh, не знаю. Я использовал простой EDIT, подключал клаву, проблем не заметил.


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

Зарегистрирован: 16 ноя 2012, 07:47
Сообщения: 2862
RGB565 подключен как рекомендует ДШ на LTDC - младшие пины экрана к старшим LTDC?
Цитата:
As an example, in
the case of an LCD-TFT controller interfacing with a RGB565 16-bit display, the LCD display
R[4:0], G[5:0] and B[4:0] data lines pins must be connected to LCD-TFT controller
LCD_R[7:3], LCD_G[7:2] and LCD_B[7:3].

UPD:
судя по этому не я один столкнулся с ограничением в пропускную способность шины.


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

Зарегистрирован: 23 янв 2013, 12:33
Сообщения: 1785
Откуда: Донецк, ДНР
Hold писал(а):
RGB565 подключен как рекомендует ДШ на LTDC - младшие пины экрана к старшим LTDC?

Я имел в виду, что слой у меня RGB565. А подключение - полный RGB24.


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

Зарегистрирован: 16 ноя 2012, 07:47
Сообщения: 2862
Т.е. в настройках ltdc стоит rgb565 а подключено по rgb888? Нет ли искажений цветов? ДШ говорит, что подключать надо иначе. Или настройки ltdc rgb888 а вы в видеобуфер конвертируете свой буфер rgb565 через DMA2D?


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

Зарегистрирован: 23 янв 2013, 12:33
Сообщения: 1785
Откуда: Донецк, ДНР
Hold писал(а):
Т.е. в настройках ltdc стоит rgb565 а подключено по rgb888?

Да, RGB565 в настройках слоя задан.

Hold писал(а):
Нет ли искажений цветов? ДШ говорит, что подключать надо иначе. Или настройки ltdc rgb888 а вы в видеобуфер конвертируете свой буфер rgb565 через DMA2D?

Искажений не замечал. DMA2D лично я не использую, про STemWin-овский драйвер не в курсах. Вообще - не задумывался.


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

Зарегистрирован: 21 сен 2016, 01:28
Сообщения: 35
Добрый вечер. такой вопрос, у меня ряд кнопок и при переключении фокуса между ними иногда, но довольно часто кнопки обновляются не по одной и незаметно, а кучкой разом и видно мерцание, причем обновляет он не по штукам, а участком экрана захватывая не только их но и фон. Как заставить его не трогать без надобности не изменяющиеся элементы интерфейса? может что-то поднастроить нужно, а то мерцание неприятно, то все ровно, то нет.


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

Зарегистрирован: 16 ноя 2012, 07:47
Сообщения: 2862
Итак... сделал подключение по RGB565, не совсем верное, а просто занулил через GPIO неиспользуемые пины экрана. В драйвере поменял строчки:
Код:
#define COLOR_CONVERSION_0 GUICC_M565
#define DISPLAY_DRIVER_0   GUIDRV_LIN_16

Частоту клока экрана установил в 16 мгц, рассчетное FPS около 29, Vcom выставил на 3.6В, иначе экран мерцает.
Нашел косяк со шрифтами - что то не так с функцией
DMA_MixColors(), привязка GUI к которой происходит в конце LCD_X_Config():
Код:
    /* Set up a custom function for mixing up single colors using DMA2D */
    GUI_SetFuncMixColors(DMA_MixColors);

Закоментил эту строчку - текст стал нормальный, видать используется софтовая обработка внутри GUI, вместо аппаратного DMA2D. Но пока не знаю куда копать. Используется при выводе сглаженного текста.
Изображение
Тест скорости показывает 71мпикс/с. Можно увеличить, еще уменьшив частоту обновления экрана но уже не очень комфортно смотреть.


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

Зарегистрирован: 21 сен 2016, 01:28
Сообщения: 35
Как заставить меню не исчезать при выборе одного из пунктов?


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

Зарегистрирован: 18 июл 2016, 21:17
Сообщения: 746
Hold писал(а):
RGB565 подключен как рекомендует ДШ на LTDC - младшие пины экрана к старшим LTDC?
Цитата:
As an example, in
the case of an LCD-TFT controller interfacing with a RGB565 16-bit display, the LCD display
R[4:0], G[5:0] and B[4:0] data lines pins must be connected to LCD-TFT controller
LCD_R[7:3], LCD_G[7:2] and LCD_B[7:3].


Интересно, что куб, при выборе формата подключения 565, дает линиям индексы, совпадающие с линиями дисплея. [7..3], [7..2], [7..3].
Мне кажется, что это гораздо удобнее. При нумерации от 0, я несколько раз ошибался с подключением :) (не на стм32)


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

Зарегистрирован: 18 июл 2016, 21:17
Сообщения: 746
Hold писал(а):
Т.е. в настройках ltdc стоит rgb565 а подключено по rgb888? Нет ли искажений цветов? ДШ говорит, что подключать надо иначе. Или настройки ltdc rgb888 а вы в видеобуфер конвертируете свой буфер rgb565 через DMA2D?

Сорри за возможно глупое уточнение, но надо различать физическое подключение дисплея и формат данных в графической памяти. Дисплей можно подключить по 8,8,8, а данные использовать 8-ми битные - 256 цветов или даже 256 градаций серого. LTDC все как то сам преобразует без участия DMA2D.


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

Зарегистрирован: 26 апр 2017, 02:21
Сообщения: 3
Всем доброго времени суток есть борда STM32F429I-DISC1 опробовал все что мог.... Возникла потребность в подключении STEmWin в совокупности с FreeRTOS... Использую CubeMX + Keil 5. При попытках добавить(перенести с примеров) EmWin в свой проект сталкиваю с кучей ошибок типа ..\EmWin\LCDConf_stm32f429i_disco_MB1075.c(262): warning: #223-D: function "__HAL_RCC_GPIOF_CLK_ENABLE" declared implicitly. Если у кого есть возможность помочь в подключении прошу ответить (возможна связь по скайпу и вайберу) (my e-mail tom-m@ya.ru)


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

Зарегистрирован: 23 янв 2013, 12:33
Сообщения: 1785
Откуда: Донецк, ДНР
ibreath, про STemWin+FreeRTOS могу сказать только одно - надо брать версю либы с _OS в имени.
__HAL_RCC_GPIOF_CLK_ENABLE -- к STemWin не относится, она порты вообще не трогает никак, это какая-то чисто кубовая штука. Точнее не скажу, кубом я не занимаюсь, понятия не имею, что там такое.
Но судя по ошибке - вы где-то забыли какой-то .h подключить, где этот __HAL_RCC_GPIOF_CLK_ENABLE объявлен.


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

Зарегистрирован: 26 апр 2017, 02:21
Сообщения: 3
Да так и есть не подключены заголовочные файлы это я знаю, но проблема в том, что в сэмпле от стм заголовочные файлы вынесены в main.h и подключаются в LCDconf через #include "main.h". Как только я провожу аналогичную процедуру ошибки в LCDconf пропадают но появляются ошибки во всех остальных линкуемых стандартных файлах из библиотеки хал причем он даже перестает видеть типы uint32_t и тд. Стандартный сэмпловский проект компилится на ура (только он без оси). Пытался сделать глобальные инклюды результат аналогичен всю голову уже себе изломал.

Все файлы подключены с OS (хотя уже как только не пробовал)


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 1244 ]  На страницу Пред.  1 ... 38, 39, 40, 41, 42, 43, 44 ... 50  След.

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


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

Сейчас этот форум просматривают: нет зарегистрированных пользователей


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

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

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