cancel
Showing results for 
Search instead for 
Did you mean: 

BSP library failed to link with HAL library

Dai chou
Associate
Posted on June 28, 2017 at 17:51

I use BSP/STM32469l-Discovery (from STM32CubeMx) , and use STM32F4xx_HAL_Driver to do a small project like this video : 

https://www.youtube.com/watch?v=u_TVAudWabI

  (I convert evaluation board from STM32F429-Disco to STM32469-Disco)

But I got some error like:

LCD_TEST\LCD_TEST.axf: Error: L6218E: Undefined symbol HAL_DSI_ConfigPhyTimer (referred from stm32469i_discovery_lcd.o).

LCD_TEST\LCD_TEST.axf: Error: L6218E: Undefined symbol HAL_DSI_ConfigVideoMode (referred from stm32469i_discovery_lcd.o).

LCD_TEST\LCD_TEST.axf: Error: L6218E: Undefined symbol HAL_DSI_DeInit (referred from stm32469i_discovery_lcd.o).

LCD_TEST\LCD_TEST.axf: Error: L6218E: Undefined symbol HAL_DSI_IRQHandler (referred from stm32469i_discovery_lcd.o).

LCD_TEST\LCD_TEST.axf: Error: L6218E: Undefined symbol HAL_DSI_Init (referred from stm32469i_discovery_lcd.o).

LCD_TEST\LCD_TEST.axf: Error: L6218E: Undefined symbol HAL_DSI_LongWrite (referred from stm32469i_discovery_lcd.o).

LCD_TEST\LCD_TEST.axf: Error: L6218E: Undefined symbol HAL_DSI_ShortWrite (referred from stm32469i_discovery_lcd.o).

LCD_TEST\LCD_TEST.axf: Error: L6218E: Undefined symbol HAL_DSI_Start (referred from stm32469i_discovery_lcd.o).

Not enough information to list image symbols.

Finished: 1 information, 0 warning and 8 error messages.

'LCD_TEST\LCD_TEST.axf' - 8 Error(s), 0 Warning(s).

It seems that

stm32469i_discovery_lcd.c cannot link to HAL(stm32f4xx_hal_dsi.c).

But In complie section , I found all require obj file create.

My stm32f4xx_hal_dsi.c version is V1.7.1

My stm32469i_discovery_lcd.c version is V2.0.0

My MDK-ARM version is V5.23

1 ACCEPTED SOLUTION

Accepted Solutions
Dai chou
Associate
Posted on June 29, 2017 at 05:26

I found the reason why BSP fail to link.

Because it need to define symbol in preprocessor ( HAL_DSI_MODULE_ENABLED).

View solution in original post

4 REPLIES 4
Imen.D
ST Employee
Posted on June 28, 2017 at 18:15

Hi

chou.dai

,

Please refer to this document, this may help you to integrate BSP library:

https://community.st.com/0D50X00009bMM6QSAW

Regards

Imen

When your question is answered, please close this topic by clicking "Accept as Solution".
Thanks
Imen
Dai chou
Associate
Posted on June 29, 2017 at 05:26

I found the reason why BSP fail to link.

Because it need to define symbol in preprocessor ( HAL_DSI_MODULE_ENABLED).

Posted on July 10, 2017 at 16:14

Hi , Dai chou !

I have a problem with the STM32F469I-Discovery with the BSP LCD as your problem. And I add  HAL_DSI_MODULE_ENABLED & HAL_DMA2D_MODULE_ENABLED to the preprocessor. It resolves the problem as you described. However,it comes with the new problem 'Undefined symbol HAL_LTDCEx_StructInitFromVideoConfig (referred from stm32469i_discovery_lcd.o).'. Do you have any idea? Thx! 

Posted on July 11, 2017 at 01:47

you could also just uncomment the module in stm32f4xx_hal_conf.h instead of the preprocessor directives, but either way, you still need to add the .h and .c files

STM32Cube_FW_F4_V1.16.0/Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_ltdc.h and Src/stm32f4xx_hal_ltdc.c

there's also stm32f4xx_hal_ltdc_ex.h and .c to add.

you'll want to do this with DSI, DMA2D, LTDC, FMC [so you can use the SDRAM as frame buffer]