2015-02-25 07:00 AM
Hello
I've purchased the STM32F4 discovery kit for STM32F429 and downloaded the most recent version V1.4.0 of STM32Cube.I have IAR ARM Embedded Workbench v6.70.3.I've opened the workspace D:\vt3\canview4-TM32Cube_FW_F4_V1.4.0\Projects\STM32F429I-Discovery\Demonstrations\EWARM\Project.ewwWhen I try to build the example, the compiler reports many errors like:Fatal Error[Pe1696]: cannot open source file ''dialog.h'' D:\vt3\canview4-wican\STM32Cube_FW_F4_V1.4.0\Projects\STM32F429I-Discovery\Demonstrations\Modules\benchmark\benchmark_win.c 29 In fact, there is no file named ''dialog.h'' inside TM32Cube_FW_F4_V1.4.0 and all subdirectories. Many other header files are missing. Some header files are there but the compiler do not find because the include path is not configured in the IAR project.Many other projects under TM32Cube_FW_F4_V1.4.0 fail to compile with similar errors. A lot of header files are missing!Maybe I am doing something wrong here. Can anybody explain? #stm32f4-discovery-include2015-02-25 07:53 AM
When the compiler throws a lot of messages about include files you need to double check the project settings, especially the ''Include Paths'' these tend to be relative paths, so that could give some issues if the compiler/project spans several drives.
Not sure about dialog.h, I might presume it has to do with STemwin, or it's otherwise in the compilers include directory, etc. Can't really help you with Cube or IAR2015-02-25 10:13 AM
Thanks Clive
so, the project TM32Cube_FW_F4_V1.4.0 are made with IAR version 7.10.3.6927.I have version 6.70.3.6347 which does not import the project files quite well - the include paths and preprocessor defines get lost in the process.The correct include paths:$PROJ_DIR$\..\Core\inc
$PROJ_DIR$\..\Config$PROJ_DIR$\..\..\..\..\Utilities\CPU$PROJ_DIR$\..\..\..\..\Drivers\CMSIS\Device\ST\STM32F4xx\Include$PROJ_DIR$\..\..\..\..\Drivers\STM32F4xx_HAL_Driver\Inc$PROJ_DIR$\..\..\..\..\Drivers\BSP\STM32F429I-Discovery$PROJ_DIR$\..\..\..\..\Drivers\BSP\Components\Common$PROJ_DIR$\..\..\..\..\Middlewares\ST\STM32_USB_Host_Library\Core\Inc$PROJ_DIR$\..\..\..\..\Middlewares\ST\STM32_USB_Host_Library\Class\MSC\Inc$PROJ_DIR$\..\..\..\..\Middlewares\ST\STemWin\inc$PROJ_DIR$\..\..\..\..\Middlewares\Third_Party\FatFs\src$PROJ_DIR$\..\..\..\..\Middlewares\Third_Party\FatFs\src\drivers$PROJ_DIR$\..\..\..\..\Middlewares\Third_Party\FreeRTOS\Source\portable\IAR\ARM_CM4F$PROJ_DIR$\..\..\..\..\Middlewares\Third_Party\FreeRTOS\Source\include$PROJ_DIR$\..\..\..\..\Middlewares\Third_Party\FreeRTOS\Source\CMSIS_RTOS$PROJ_DIR$\..\..\..\..\Middlewares\Third_Party\LwIP\src\include\$PROJ_DIR$\..\..\..\..\Middlewares\Third_Party\LwIP\src\include\ipv4$PROJ_DIR$\..\..\..\..\Middlewares\Third_Party\LwIP\systemThe correct preprocessor defines:
USE_HAL_DRIVER
STM32F439xxUSE_STM32F429I_DISCOUSE_USB_HSWith the above changes I was able to build and run the demo on the discovery board