Перейти к содержанию
    

STM32F429-Disco, CubeMX и TouchGFX Designer. Тема будет долгой....

Итак, после плясок с бубном (убирание из названий папок русских букв, переустановка винды) худо бедно заработал TouchGFX Designer. Создаваемый в нем проект компилируется, грузится средствами TouchGFX Designer в плату STM32F429-Disco, генерирует проект под Keil, который компилируется с первого раза без ошибок и предупреждений. В общем, работает без нареканий.

А вот к CubeMX есть вопросы.

Создаю проект, выбираю плату Disco, генерирую код под Keil 5 с базовыми настройками. Загружаю - компилируется без ошибок. 

Едем дальше. Выбираю MiddleWare->GRAPHICS -> TouchGFX.  Display Interface -> Display Parallel Interface using LTDC.

Во вкладке TouchGFX указываю путь к исполняемому файлу TouchGFXDesigner. Первое, что насторожило - не становится активной кнопка "Execute"

Следующая проблема - при нажатии на "Generate Code"  CubeMX предупреждает  "These IPs still have not configured or wrong parametres values : [GRAPHICS]"  Что нужно сконфиругировать - непонятно, во вкладках все заполнено, некоторые параметры серого цвета и недоступны.

Тем не менее, код генерируется/

При попытке его скомпилировать в KEIL выдается куча ошибок:

Spoiler

    *** Using Compiler 'V5.06 update 4 (build 422)', folder: 'C:\Keil_v5\ARM\ARMCC\Bin'
*** Warning: Using Microlib and C++ file(s) might cause the linker to fail !
  
Build target 'TFT'
assembling startup_stm32f429xx.s...
compiling STM32F4TouchController.cpp...
../TouchGFX/target/STM32F4TouchController.hpp(42): error:  #5: cannot open source input file "platform/driver/touch/TouchController.hpp": No such file or directory
  #include <platform/driver/touch/TouchController.hpp>
../TouchGFX/target/STM32F4TouchController.cpp: 0 warnings, 1 error
compiling STM32F4HAL.cpp...
../TouchGFX/target/STM32F4HAL.cpp(2): error:  #5: cannot open source input file "touchgfx/hal/OSWrappers.hpp": No such file or directory
  #include <touchgfx/hal/OSWrappers.hpp>
../TouchGFX/target/STM32F4HAL.cpp: 0 warnings, 1 error
compiling GPIO.cpp...
../TouchGFX/target/GPIO.cpp(2): error:  #5: cannot open source input file "touchgfx/hal/GPIO.hpp": No such file or directory
  #include <touchgfx/hal/GPIO.hpp>
../TouchGFX/target/GPIO.cpp: 0 warnings, 1 error
compiling STM32F4DMA.cpp...
../TouchGFX/target/STM32F4DMA.cpp(2): error:  #5: cannot open source input file "touchgfx/hal/OSWrappers.hpp": No such file or directory
  #include <touchgfx/hal/OSWrappers.hpp>
../TouchGFX/target/STM32F4DMA.cpp: 0 warnings, 1 error
compiling BoardConfiguration.cpp...
../TouchGFX/target/BoardConfiguration.cpp(1): error:  #5: cannot open source input file "common/TouchGFXInit.hpp": No such file or directory
  #include <common/TouchGFXInit.hpp>
../TouchGFX/target/BoardConfiguration.cpp: 0 warnings, 1 error
compiling usbh_platform.c...
compiling stm32f4xx_hal_msp.c...
compiling STM32F4Instrumentation.cpp...
../TouchGFX/target/STM32F4Instrumentation.cpp(5): error:  #5: cannot open source input file "touchgfx/hal/HAL.hpp": No such file or directory
  #include <touchgfx/hal/HAL.hpp>
../TouchGFX/target/STM32F4Instrumentation.cpp: 0 warnings, 1 error
compiling stm32f4xx_hal_dma2d.c...
compiling stm32f4xx_hal_timebase_tim.c...
compiling usb_host.c...
compiling HW_Init.cpp...
compiling stm32f4xx_it.c...
compiling main.cpp...
compiling usbh_conf.c...
compiling freertos.c...
compiling stm32f4xx_ll_fmc.c...
compiling stm32f4xx_hal_sdram.c...
compiling stm32f4xx_hal_ltdc.c...
compiling stm32f4xx_hal_ltdc_ex.c...
compiling stm32f4xx_hal_dsi.c...
compiling stm32f4xx_hal_tim_ex.c...
compiling stm32f4xx_hal_hcd.c...
compiling stm32f4xx_hal_crc.c...
compiling stm32f4xx_hal_tim.c...
compiling stm32f4xx_hal_i2c.c...
compiling stm32f4xx_ll_usb.c...
compiling stm32f4xx_hal_i2c_ex.c...
compiling stm32f4xx_hal_spi.c...
compiling stm32f4xx_hal_uart.c...
compiling stm32f4xx_hal_rcc.c...
compiling stm32f4xx_hal_rcc_ex.c...
compiling stm32f4xx_hal_flash_ramfunc.c...
compiling stm32f4xx_hal_flash.c...
compiling croutine.c...
compiling stm32f4xx_hal_flash_ex.c...
compiling event_groups.c...
compiling stm32f4xx_hal_dma.c...
compiling list.c...
compiling timers.c...
compiling stm32f4xx_hal_dma_ex.c...
compiling queue.c...
compiling stm32f4xx_hal_gpio.c...
compiling OSWrappers.cpp...
../Middlewares/ST/TouchGFX/touchgfx/os/OSWrappers.cpp(1): error:  #5: cannot open source input file "touchgfx/hal/OSWrappers.hpp": No such file or directory
  #include <touchgfx/hal/OSWrappers.hpp>
../Middlewares/ST/TouchGFX/touchgfx/os/OSWrappers.cpp: 0 warnings, 1 error
compiling tasks.c...
compiling heap_4.c...
compiling port.c...
compiling cmsis_os.c...
compiling stm32f4xx_hal_pwr.c...
compiling stm32f4xx_hal_cortex.c...
compiling stm32f4xx_hal_pwr_ex.c...
compiling stm32f4xx_hal.c...
compiling system_stm32f4xx.c...
compiling usbh_ctlreq.c...
compiling usbh_ioreq.c...
compiling usbh_pipes.c...
compiling usbh_core.c...
compiling usbh_cdc.c...
"TFT\TFT.axf" - 7 Error(s), 0 Warning(s).
Target not created.
Build Time Elapsed:  00:00:40
    

Я даже не пытался редактировать пути к файлам в самом проекте, так как генерация такого проекта - это ненормально и не соответствует задумкам разработчика, скорее всего я что-то делаю не так в CubeMX

Вот собственно проект под CUBEMX и KEIL.

https://dropmefiles.com/LEV91

Итак - что я не так делаю в настройках TouchGFX, почему неактивна кнопка "execute" и почему генерируется кривой проект. БУду признателен за ответы.

Изменено пользователем zheka

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Скорее всего неправильно установлен TouchGFX.

У меня проект без проблем запускался сгенерированный кубом проект на F746 Discovery

 

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Ну  к примеру вот:

Quote

../TouchGFX/target/STM32F4TouchController.hpp(42): error:  #5: cannot open source input file "platform/driver/touch/TouchController.hpp": No such file or directory

Не могли бы вы заглянуть в свой проект. И какой в файле STM32F4TouchController.hpp у вас прописан путь к папке, в которой лежит подпапка "platform/driver/touch/TouchController.hpp "  ? 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

н-да... touchController.hpp и ряда других файлов просто нет в папке с проектом. Они есть в папке с touchgfx designer. Простое копирование эту проблему устранило, но все равно стало выдавать ошибки каких-то деклараций...

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Тихо сам с собою....

Ура, проект компилируется, но пока еще не линкуется.

В чем была ошибка - я создавал проект в CubeMX, подключал TouchGFX, настраивал все остальное и тут же генерировал проект.  После того, как я открывал его в Keil, возникали ошибки компиляции.

Что я сделал дальше (вдруг в будущем кому-то из читающих поможет)  - перед созданием проекта жал во вкладке "TouchGFX" на "Execute", запускался TouchGFX Designer.

Я кинул на форму кнопку и сохранил проект. Ура, пошла компиляция, но линкер ругается на:

Spoiler

*** Using Compiler 'V5.06 update 4 (build 422)', folder: 'D:\Keil_v5\ARM\ARMCC\Bin'
*** Warning: Using Microlib and C++ file(s) might cause the linker to fail !
  
Build target 'TFT'
compiling GPIO.cpp...
compiling STM32F4TouchController.cpp...
compiling STM32F4HAL.cpp...
compiling STM32F4Instrumentation.cpp...
compiling stm32f4xx_hal_timebase_tim.c...
compiling stm32f4xx_hal_msp.c...
compiling exc7200.c...
compiling STM32F4DMA.cpp...
compiling HW_Init.cpp...
compiling ts3510.c...
compiling stm32f4xx_it.c...
compiling stmpe811.c...
compiling ili9341.c...
compiling freertos.c...
compiling BoardConfiguration.cpp...
compiling main.cpp...
compiling usbh_conf.c...
compiling usbh_platform.c...
compiling stm32f4xx_hal_dsi.c...
compiling stm32f4xx_hal_ltdc_ex.c...
compiling stm32f4xx_ll_fmc.c...
compiling stm32f4xx_hal_sdram.c...
compiling stm32f4xx_hal_tim_ex.c...
compiling stm32f4xx_hal_ltdc.c...
compiling stm32f4xx_hal_dma2d.c...
compiling usb_host.c...
compiling stm32f4xx_hal_tim.c...
compiling stm32f4xx_hal_hcd.c...
compiling stm32f4xx_ll_usb.c...
compiling stm32f4xx_hal_crc.c...
compiling stm32f4xx_hal_spi.c...
compiling stm32f4xx_hal_uart.c...
compiling stm32f4xx_hal_flash_ex.c...
compiling stm32f4xx_hal_i2c_ex.c...
compiling stm32f4xx_hal_flash.c...
compiling stm32f4xx_hal_rcc_ex.c...
compiling stm32f4xx_hal_rcc.c...
compiling croutine.c...
compiling stm32f4xx_hal_i2c.c...
compiling event_groups.c...
compiling list.c...
compiling queue.c...
compiling timers.c...
compiling tasks.c...
compiling heap_4.c...
compiling stm32f4xx_hal_flash_ramfunc.c...
compiling cmsis_os.c...
compiling port.c...
compiling OSWrappers.cpp...
compiling stm32f4xx_hal_gpio.c...
compiling stm32f4xx_hal_dma_ex.c...
compiling stm32f4xx_hal_pwr_ex.c...
compiling system_stm32f4xx.c...
compiling stm32f4xx_hal.c...
compiling Model.cpp...
compiling FrontendApplication.cpp...
compiling stm32f4xx_hal_cortex.c...
compiling Screen1Presenter.cpp...
compiling stm32f4xx_hal_dma.c...
compiling ApplicationFontProvider.cpp...
compiling Screen1View.cpp...
compiling stm32f4xx_hal_pwr.c...
compiling BitmapDatabase.cpp...
compiling blue_buttons_round_edge_small.cpp...
compiling Font_verdana_10_4bpp.cpp...
compiling Font_verdana_20_4bpp.cpp...
compiling Font_verdana_40_4bpp.cpp...
compiling FontGetters.cpp...
compiling blue_buttons_round_edge_small_pressed.cpp...
compiling Kerning_verdana_10_4bpp.cpp...
compiling Kerning_verdana_40_4bpp.cpp...
compiling Kerning_verdana_20_4bpp.cpp...
compiling Table_verdana_10_4bpp.cpp...
compiling FrontendApplicationBase.cpp...
compiling Table_verdana_20_4bpp.cpp...
compiling Table_verdana_40_4bpp.cpp...
compiling Screen1ViewBase.cpp...
compiling TypedTextDatabase.cpp...
compiling Texts.cpp...
compiling usbh_ioreq.c...
compiling usbh_core.c...
compiling usbh_ctlreq.c...
compiling usbh_cdc.c...
compiling usbh_pipes.c...
linking...
TFT\TFT.axf: Error: L6242E: Cannot link object AbstractPartition.o as its attributes are incompatible with the image attributes.
   ... wchart-16 clashes with wchart-32.
TFT\TFT.axf: Error: L6242E: Cannot link object Application.o as its attributes are incompatible with the image attributes.
   ... wchart-16 clashes with wchart-32.
TFT\TFT.axf: Error: L6654E: Rejected Local symbol .text7 referred to from non group member Application.o(.iar.stackusage)
TFT\TFT.axf: Error: L6654E: Rejected Local symbol .text9 referred to from non group member Application.o(.iar.stackusage)
TFT\TFT.axf: Error: L6654E: Rejected Local symbol .text11 referred to from non group member Application.o(.iar.stackusage)
TFT\TFT.axf: Error: L6654E: Rejected Local symbol .text13 referred to from non group member Application.o(.iar.stackusage)
TFT\TFT.axf: Error: L6654E: Rejected Local symbol .text15 referred to from non group member Application.o(.iar.stackusage)
TFT\TFT.axf: Error: L6654E: Rejected Local symbol .text17 referred to from non group member Application.o(.iar.stackusage)
TFT\TFT.axf: Error: L6654E: Rejected Local symbol .text19 referred to from non group member Application.o(.iar.stackusage)
TFT\TFT.axf: Error: L6654E: Rejected Local symbol .text21 referred to from non group member Application.o(.iar.stackusage)
TFT\TFT.axf: Error: L6654E: Rejected Local symbol .text23 referred to from non group member Application.o(.iar.stackusage)
TFT\TFT.axf: Error: L6654E: Rejected Local symbol .text25 referred to from non group member Application.o(.iar.stackusage)
TFT\TFT.axf: Error: L6654E: Rejected Local symbol .text27 referred to from non group member Application.o(.iar.stackusage)
TFT\TFT.axf: Error: L6654E: Rejected Local symbol .text29 referred to from non group member Application.o(.iar.stackusage)
TFT\TFT.axf: Error: L6654E: Rejected Local symbol .text31 referred to from non group member Application.o(.iar.stackusage)
TFT\TFT.axf: Error: L6654E: Rejected Local symbol .text33 referred to from non group member Application.o(.iar.stackusage)
TFT\TFT.axf: Error: L6654E: Rejected Local symbol .text35 referred to from non group member Application.o(.iar.stackusage)
TFT\TFT.axf: Error: L6654E: Rejected Local symbol .text39 referred to from non group member Application.o(.iar.stackusage)
TFT\TFT.axf: Error: L6654E: Rejected Local symbol .text41 referred to from non group member Application.o(.iar.stackusage)
TFT\TFT.axf: Error: L6242E: Cannot link object Bitmap.o as its attributes are incompatible with the image attributes.
   ... wchart-16 clashes with wchart-32.
TFT\TFT.axf: Error: L6242E: Cannot link object Button.o as its attributes are incompatible with the image attributes.
   ... wchart-16 clashes with wchart-32.
TFT\TFT.axf: Error: L6654E: Rejected Local symbol .text9 referred to from non group member Button.o(.iar.stackusage)
TFT\TFT.axf: Error: L6654E: Rejected Local symbol .text11 referred to from non group member Button.o(.iar.stackusage)
TFT\TFT.axf: Error: L6654E: Rejected Local symbol .text13 referred to from non group member Button.o(.iar.stackusage)
TFT\TFT.axf: Error: L6654E: Rejected Local symbol .text17 referred to from non group member Button.o(.iar.stackusage)
TFT\TFT.axf: Error: L6654E: Rejected Local symbol .text19 referred to from non group member Button.o(.iar.stackusage)
TFT\TFT.axf: Error: L6654E: Rejected Local symbol .text21 referred to from non group member Button.o(.iar.stackusage)
TFT\TFT.axf: Error: L6654E: Rejected Local symbol .text23 referred to from non group member Button.o(.iar.stackusage)
TFT\TFT.axf: Error: L6654E: Rejected Local symbol .text25 referred to from non group member Button.o(.iar.stackusage)
TFT\TFT.axf: Error: L6654E: Rejected Local symbol .text27 referred to from non group member Button.o(.iar.stackusage)
TFT\TFT.axf: Error: L6654E: Rejected Local symbol .text29 referred to from non group member Button.o(.iar.stackusage)
TFT\TFT.axf: Error: L6654E: Rejected Local symbol .text31 referred to from non group member Button.o(.iar.stackusage)
TFT\TFT.axf: Error: L6654E: Rejected Local symbol .text33 referred to from non group member Button.o(.iar.stackusage)
TFT\TFT.axf: Error: L6654E: Rejected Local symbol .text35 referred to from non group member Button.o(.iar.stackusage)
TFT\TFT.axf: Error: L6654E: Rejected Local symbol .text37 referred to from non group member Button.o(.iar.stackusage)
TFT\TFT.axf: Error: L6654E: Rejected Local symbol .text39 referred to from non group member Button.o(.iar.stackusage)
TFT\TFT.axf: Error: L6654E: Rejected Local symbol .text41 referred to from non group member Button.o(.iar.stackusage)
TFT\TFT.axf: Error: L6242E: Cannot link object Container.o as its attributes are incompatible with the image attributes.
   ... wchart-16 clashes with wchart-32.
TFT\TFT.axf: Error: L6654E: Rejected Local symbol .text23 referred to from non group member Container.o(.iar.stackusage)
TFT\TFT.axf: Error: L6654E: Rejected Local symbol .text33 referred to from non group member Container.o(.iar.stackusage)
TFT\TFT.axf: Error: L6654E: Rejected Local symbol .text35 referred to from non group member Container.o(.iar.stackusage)
TFT\TFT.axf: Error: L6654E: Rejected Local symbol .text37 referred to from non group member Container.o(.iar.stackusage)
TFT\TFT.axf: Error: L6242E: Cannot link object DMA.o as its attributes are incompatible with the image attributes.
   ... wchart-16 clashes with wchart-32.
TFT\TFT.axf: Error: L6654E: Rejected Local symbol .text8 referred to from non group member DMA.o(.iar.stackusage)
TFT\TFT.axf: Error: L6654E: Rejected Local symbol .text10 referred to from non group member DMA.o(.iar.stackusage)
TFT\TFT.axf: Error: L6654E: Rejected Local symbol .text14 referred to from non group member DMA.o(.iar.stackusage)
TFT\TFT.axf: Error: L6654E: Rejected Local symbol .text16 referred to from non group member DMA.o(.iar.stackusage)
TFT\TFT.axf: Error: L6654E: Rejected Local symbol .text18 referred to from non group member DMA.o(.iar.stackusage)
TFT\TFT.axf: Error: L6242E: Cannot link object FontManager.o as its attributes are incompatible with the image attributes.
   ... wchart-16 clashes with wchart-32.
TFT\TFT.axf: Error: L6242E: Cannot link object HAL.o as its attributes are incompatible with the image attributes.
   ... wchart-16 clashes with wchart-32.
TFT\TFT.axf: Error: L6654E: Rejected Local symbol .text7 referred to from non group member HAL.o(.iar.stackusage)
TFT\TFT.axf: Error: L6654E: Rejected Local symbol .text9 referred to from non group member HAL.o(.iar.stackusage)
TFT\TFT.axf: Error: L6654E: Rejected Local symbol .text25 referred to from non group member HAL.o(.iar.stackusage)
TFT\TFT.axf: Error: L6654E: Rejected Local symbol .text27 referred to from non group member HAL.o(.iar.stackusage)
TFT\TFT.axf: Error: L6242E: Cannot link object InternalFlashFont.o as its attributes are incompatible with the image attributes.
   ... wchart-16 clashes with wchart-32.
TFT\TFT.axf: Error: L6654E: Rejected Local symbol .text7 referred to from non group member InternalFlashFont.o(.iar.stackusage)
TFT\TFT.axf: Error: L6654E: Rejected Local symbol .text9 referred to from non group member InternalFlashFont.o(.iar.stackusage)
TFT\TFT.axf: Error: L6654E: Rejected Local symbol .text11 referred to from non group member InternalFlashFont.o(.iar.stackusage)
TFT\TFT.axf: Error: L6654E: Rejected Local symbol .text13 referred to from non group member InternalFlashFont.o(.iar.stackusage)
TFT\TFT.axf: Error: L6654E: Rejected Local symbol .text15 referred to from non group member InternalFlashFont.o(.iar.stackusage)
TFT\TFT.axf: Error: L6654E: Rejected Local symbol .text17 referred to from non group member InternalFlashFont.o(.iar.stackusage)
TFT\TFT.axf: Error: L6654E: Rejected Local symbol .text20 referred to from non group member InternalFlashFont.o(.iar.stackusage)
TFT\TFT.axf: Error: L6242E: Cannot link object LCD16bpp.o as its attributes are incompatible with the image attributes.
   ... wchart-16 clashes with wchart-32.
TFT\TFT.axf: Error: L6654E: Rejected Local symbol .text9 referred to from non group member LCD16bpp.o(.iar.stackusage)
TFT\TFT.axf: Error: L6654E: Rejected Local symbol .text11 referred to from non group member LCD16bpp.o(.iar.stackusage)
TFT\TFT.axf: Error: L6242E: Cannot link object Screen.o as its attributes are incompatible with the image attributes.
   ... wchart-16 clashes with wchart-32.
TFT\TFT.axf: Error: L6654E: Rejected Local symbol .text11 referred to from non group member Screen.o(.iar.stackusage)
TFT\TFT.axf: Error: L6654E: Rejected Local symbol .text13 referred to from non group member Screen.o(.iar.stackusage)
TFT\TFT.axf: Error: L6654E: Rejected Local symbol .text15 referred to from non group member Screen.o(.iar.stackusage)
TFT\TFT.axf: Error: L6654E: Rejected Local symbol .text17 referred to from non group member Screen.o(.iar.stackusage)
TFT\TFT.axf: Error: L6654E: Rejected Local symbol .text19 referred to from non group member Screen.o(.iar.stackusage)
TFT\TFT.axf: Error: L6654E: Rejected Local symbol .text21 referred to from non group member Screen.o(.iar.stackusage)
TFT\TFT.axf: Error: L6654E: Rejected Local symbol .text23 referred to from non group member Screen.o(.iar.stackusage)
TFT\TFT.axf: Error: L6654E: Rejected Local symbol .text25 referred to from non group member Screen.o(.iar.stackusage)
TFT\TFT.axf: Error: L6654E: Rejected Local symbol .text27 referred to from non group member Screen.o(.iar.stackusage)
TFT\TFT.axf: Error: L6654E: Rejected Local symbol .text29 referred to from non group member Screen.o(.iar.stackusage)
TFT\TFT.axf: Error: L6654E: Rejected Local symbol .text31 referred to from non group member Screen.o(.iar.stackusage)
TFT\TFT.axf: Error: L6654E: Rejected Local symbol .text35 referred to from non group member Screen.o(.iar.stackusage)
TFT\TFT.axf: Error: L6654E: Rejected Local symbol .text37 referred to from non group member Screen.o(.iar.stackusage)
TFT\TFT.axf: Error: L6654E: Rejected Local symbol .text39 referred to from non group member Screen.o(.iar.stackusage)
TFT\TFT.axf: Error: L6654E: Rejected Local symbol .text41 referred to from non group member Screen.o(.iar.stackusage)
TFT\TFT.axf: Error: L6654E: Rejected Local symbol .text43 referred to from non group member Screen.o(.iar.stackusage)
TFT\TFT.axf: Error: L6654E: Rejected Local symbol .text46 referred to from non group member Screen.o(.iar.stackusage)
TFT\TFT.axf: Error: L6654E: Rejected Local symbol .text48 referred to from non group member Screen.o(.iar.stackusage)
TFT\TFT.axf: Error: L6242E: Cannot link object TypedText.o as its attributes are incompatible with the image attributes.
   ... wchart-16 clashes with wchart-32.
TFT\TFT.axf: Error: L6242E: Cannot link object AbstractButton.o as its attributes are incompatible with the image attributes.
   ... wchart-16 clashes with wchart-32.
TFT\TFT.axf: Error: L6654E: Rejected Local symbol .text33 referred to from non group member AbstractButton.o(.iar.stackusage)
TFT\TFT.axf: Error: L6654E: Rejected Local symbol .text35 referred to from non group member AbstractButton.o(.iar.stackusage)
TFT\TFT.axf: Error: L6654E: Rejected Local symbol .text39 referred to from non group member AbstractButton.o(.iar.stackusage)
TFT\TFT.axf: Error: L6242E: Cannot link object ConstFont.o as its attributes are incompatible with the image attributes.
   ... wchart-16 clashes with wchart-32.
TFT\TFT.axf: Error: L6654E: Rejected Local symbol .text20 referred to from non group member ConstFont.o(.iar.stackusage)
TFT\TFT.axf: Error: L6654E: Rejected Local symbol .text22 referred to from non group member ConstFont.o(.iar.stackusage)
TFT\TFT.axf: Error: L6242E: Cannot link object DisplayTransformation.o as its attributes are incompatible with the image attributes.
   ... wchart-16 clashes with wchart-32.
TFT\TFT.axf: Error: L6654E: Rejected Local symbol .text7 referred to from non group member DisplayTransformation.o(.iar.stackusage)
TFT\TFT.axf: Error: L6242E: Cannot link object Drawable.o as its attributes are incompatible with the image attributes.
   ... wchart-16 clashes with wchart-32.
TFT\TFT.axf: Error: L6654E: Rejected Local symbol .text9 referred to from non group member Drawable.o(.iar.stackusage)
TFT\TFT.axf: Error: L6654E: Rejected Local symbol .text11 referred to from non group member Drawable.o(.iar.stackusage)
TFT\TFT.axf: Error: L6654E: Rejected Local symbol .text37 referred to from non group member Drawable.o(.iar.stackusage)
TFT\TFT.axf: Error: L6242E: Cannot link object Font.o as its attributes are incompatible with the image attributes.
   ... wchart-16 clashes with wchart-32.
TFT\TFT.axf: Error: L6654E: Rejected Local symbol .text7 referred to from non group member Font.o(.iar.stackusage)
TFT\TFT.axf: Error: L6654E: Rejected Local symbol .text9 referred to from non group member Font.o(.iar.stackusage)
TFT\TFT.axf: Error: L6654E: Rejected Local symbol .text11 referred to from non group member Font.o(.iar.stackusage)
TFT\TFT.axf: Error: L6654E: Rejected Local symbol .text13 referred to from non group member Font.o(.iar.stackusage)
TFT\TFT.axf: Error: L6654E: Rejected Local symbol .text15 referred to from non group member Font.o(.iar.stackusage)
TFT\TFT.axf: Error: L6654E: Rejected Local symbol .text17 referred to from non group member Font.o(.iar.stackusage)
TFT\TFT.axf: Error: L6654E: Rejected Local symbol .text19 referred to from non group member Font.o(.iar.stackusage)
TFT\TFT.axf: Error: L6654E: Rejected Local symbol .text21 referred to from non group member Font.o(.iar.stackusage)
TFT\TFT.axf: Error: L6654E: Rejected Local symbol .text23 referred to from non group member Font.o(.iar.stackusage)
TFT\TFT.axf: Error: L6242E: Cannot link object Gestures.o as its attributes are incompatible with the image attributes.
   ... wchart-16 clashes with wchart-32.
TFT\TFT.axf: Error: L6654E: Rejected Local symbol .text25 referred to from non group member Gestures.o(.iar.stackusage)
TFT\TFT.axf: Error: L6242E: Cannot link object LCD.o as its attributes are incompatible with the image attributes.
   ... wchart-16 clashes with wchart-32.
TFT\TFT.axf: Error: L6654E: Rejected Local symbol .text7 referred to from non group member LCD.o(.iar.stackusage)
TFT\TFT.axf: Error: L6654E: Rejected Local symbol .text9 referred to from non group member LCD.o(.iar.stackusage)
TFT\TFT.axf: Error: L6654E: Rejected Local symbol .text11 referred to from non group member LCD.o(.iar.stackusage)
TFT\TFT.axf: Error: L6242E: Cannot link object stm32_crc_lock.o as its attributes are incompatible with the image attributes.
   ... wchart-16 clashes with wchart-32.
TFT\TFT.axf: Error: L6242E: Cannot link object TouchCalibration.o as its attributes are incompatible with the image attributes.
   ... wchart-16 clashes with wchart-32.
TFT\TFT.axf: Error: L6242E: Cannot link object TextProvider.o as its attributes are incompatible with the image attributes.
   ... wchart-16 clashes with wchart-32.
TFT\TFT.axf: Error: L6242E: Cannot link object TextureMapTypes.o as its attributes are incompatible with the image attributes.
   ... wchart-16 clashes with wchart-32.
TFT\TFT.axf: Error: L6654E: Rejected Local symbol .text8 referred to from non group member TextureMapTypes.o(.iar.stackusage)
TFT\TFT.axf: Error: L6654E: Rejected Local symbol .text10 referred to from non group member TextureMapTypes.o(.iar.stackusage)
TFT\TFT.axf: Error: L6654E: Rejected Local symbol .text12 referred to from non group member TextureMapTypes.o(.iar.stackusage)
TFT\TFT.axf: Error: L6242E: Cannot link object Utils.o as its attributes are incompatible with the image attributes.
   ... wchart-16 clashes with wchart-32.
Not enough information to list image symbols.
Not enough information to list the image map.
Finished: 26 information, 0 warning and 122 error messages.
"TFT\TFT.axf" - 122 Error(s), 0 Warning(s).
Target not created.
Build Time Elapsed:  00:00:44

Наверное не зря ругается, ибо перед компиляцией появилось предупреждение

Quote

*** Warning: Using Microlib and C++ file(s) might cause the linker to fail !

Ща все сделаем, подумал я и убрал галку "Use Microlib"

Изменилось разве только то, что перестало появляться предупреждение про Microlib, ошибки же остались незменны.

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

https://dropmefiles.com/pedSI

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Хех...проделал все то же самое с 746 Discovery - создается без проблем. Я уже по всякому пытался сгенерировать проект неправильно - все равно работает. 

Значит недоработка в CubeMX или TouchGFX именно в отношении 429 Discovery.

 

Изменено пользователем zheka

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Ну никак.... есть кто делал проект в CubeMX под 429 Дискавери?

У меня получилось только если сразу в TouchGFX его сделать, но это полумера на мой взгляд

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

А я все же разобрался. Правда не с KEIL, а с IAR.  Много чего пришлось ручками покрутить, прежде чем все заработало.

И разобрался настолько, что даже собрал проект так сказать с голого камня (не указывая, что у меня плата дискавери), но настроил его на плату и - о чудо, сначала все скомпилировалось, а после двух часов плясок с бубном - заработало.

Но есть все же вопрос. На дискавери стоит какой-то странный дисплей, в нем помимо стандартных пинов есть еще WRX DCX SDA.

Когда я настраивал проект, в разделе LTDC все стандартно, а при выборе вкладки Graphics/Platform settings мне было предложено назначить пины на Chip Select WRX, SPI_PIN RDX.  Это что еще такое? Не, на сам дисплей, который на дискавери, мне плевать у меня будет свой.

Но мне непонятно, почему CubeMX предлагает мне настроить эти пины и я не знаю, будет ли работать обычный дисплей с кодом, который требует настройки этих пинов? 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

А под System Workbench for STM32 из куба удалось у кого нибудь рабочий проект создать? У меня сыпет ошибки. Как я понял там в кучу намешаны либы как для симуляции, так и под МК, отсюда и не собирается проект.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

On 2/20/2019 at 1:06 PM, zheka said:

А я все же разобрался. Правда не с KEIL, а с IAR.  Много чего пришлось ручками покрутить, прежде чем все заработало.

И разобрался настолько, что даже собрал проект так сказать с голого камня (не указывая, что у меня плата дискавери), но настроил его на плату и - о чудо, сначала все скомпилировалось, а после двух часов плясок с бубном - заработало.

Но есть все же вопрос. На дискавери стоит какой-то странный дисплей, в нем помимо стандартных пинов есть еще WRX DCX SDA.

Когда я настраивал проект, в разделе LTDC все стандартно, а при выборе вкладки Graphics/Platform settings мне было предложено назначить пины на Chip Select WRX, SPI_PIN RDX.  Это что еще такое? Не, на сам дисплей, который на дискавери, мне плевать у меня будет свой.

Но мне непонятно, почему CubeMX предлагает мне настроить эти пины и я не знаю, будет ли работать обычный дисплей с кодом, который требует настройки этих пинов? 

Zheka, можно поподробней  чем было дело? Где нужно покрутить ручками?

Изменено пользователем dr.v

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

19 hours ago, x893 said:

Покрутить руками - только Чумак умел.

Все мы немножечко Чумак))

на данный момент у меня проект под f769 собирается без ошибок, а вот под 429 нет((

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

В 20.02.2019 в 13:06, zheka сказал:

А я все же разобрался. Правда не с KEIL, а с IAR.  Много чего пришлось ручками покрутить, прежде чем все заработало.

Скажите, а та микросхема SDRAM памяти IS42S16400J, что на плате снизу прикручена, обязательно ли должна быть использована под дисплей? Что по этому поводу думает ваш TouchGFX Designer? Он без этой дополнительной SDRAM сможет работать с этим дисплеем хотя бы в текстовом режиме?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

50 minutes ago, Xenia said:

Скажите, а та микросхема SDRAM памяти IS42S16400J, что на плате снизу прикручена, обязательно ли должна быть использована под дисплей? Что по этому поводу думает ваш TouchGFX Designer? Он без этой дополнительной SDRAM сможет работать с этим дисплеем хотя бы в текстовом режиме?

В ТЕКСТОВОМ ?!

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

9 минут назад, x893 сказал:

В ТЕКСТОВОМ ?!

Откуда мне знать? У него какой-то дисплейный контроллер снизу приклеен, а потому всяко может быть.

 

Если создавать буфер под все пиксели этого дисплея, то у STM32F429 внутренней SRAM для этого точно не хватит. Отсюда и мой вопрос - обязательно ли нужно создавать такой большой буфер, чтобы с этим дисплеем работать? А можно спросить и так, как спросила я - можно ли с этим дисплеем работать, не задействуя внешнюю память  IS42S16400J ?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...