STM32 cubeMX 前期项目未生成部分模块,后期需要添加功能模块时出现L6218E错误问题的解决方法
2017-12-05 10:40
1201 查看
背景:
最近的一个项目cub前期cubeMX未生成Timer部分程序,后期项目需要使用timer时需要往项目添加该部分程序时,编译出现L6218E: Error: L6218E: Undefined symbol HAL_TIMEx_MasterConfigSynchronization (referred from timer.o)等错误。
原因:
cubeMX软件在配置功能时,使用某一部分功能,会打开某一部分的功能接口,在stm32l1xx_hal_conf.h文件中有该部分的代码。
#define HAL_MODULE_ENABLED
#define HAL_ADC_MODULE_ENABLED
/*#define HAL_CRYP_MODULE_ENABLED */
/*#define HAL_COMP_MODULE_ENABLED */
/*#define HAL_CRC_MODULE_ENABLED */
/*#define HAL_CRYP_MODULE_ENABLED */
#define HAL_DAC_MODULE_ENABLED
#define HAL_I2C_MODULE_ENABLED
/*#define HAL_I2S_MODULE_ENABLED */
/*#define HAL_IRDA_MODULE_ENABLED */
/*#define HAL_IWDG_MODULE_ENABLED */
/*#define HAL_LCD_MODULE_ENABLED */
/*#define HAL_NOR_MODULE_ENABLED */
/*#define HAL_OPAMP_MODULE_ENABLED */
/*#define HAL_PCD_MODULE_ENABLED */
#define HAL_RTC_MODULE_ENABLED
/*#define HAL_SD_MODULE_ENABLED */
/*#define HAL_SMARTCARD_MODULE_ENABLED */
/*#define HAL_SPI_MODULE_ENABLED */
/*#define HAL_SRAM_MODULE_ENABLED */
/*#define HAL_TIM_MODULE_ENABLED*/
#define HAL_UART_MODULE_ENABLED
/*#define HAL_USART_MODULE_ENABLED */
/*#define HAL_WWDG_MODULE_ENABLED */
#define HAL_GPIO_MODULE_ENABLED
#define HAL_DMA_MODULE_ENABLED
#define HAL_RCC_MODULE_ENABLED
#define HAL_FLASH_MODULE_ENABLED
#define HAL_PWR_MODULE_ENABLED
#define HAL_CORTEX_MODULE_ENABLED
解决方法:
将上述代码中的/*#define HAL_TIM_MODULE_ENABLED*/
修改为#define HAL_TIM_MODULE_ENABLED,这样便可使用TIMER功能,解决编译错误。
最近的一个项目cub前期cubeMX未生成Timer部分程序,后期项目需要使用timer时需要往项目添加该部分程序时,编译出现L6218E: Error: L6218E: Undefined symbol HAL_TIMEx_MasterConfigSynchronization (referred from timer.o)等错误。
原因:
cubeMX软件在配置功能时,使用某一部分功能,会打开某一部分的功能接口,在stm32l1xx_hal_conf.h文件中有该部分的代码。
#define HAL_MODULE_ENABLED
#define HAL_ADC_MODULE_ENABLED
/*#define HAL_CRYP_MODULE_ENABLED */
/*#define HAL_COMP_MODULE_ENABLED */
/*#define HAL_CRC_MODULE_ENABLED */
/*#define HAL_CRYP_MODULE_ENABLED */
#define HAL_DAC_MODULE_ENABLED
#define HAL_I2C_MODULE_ENABLED
/*#define HAL_I2S_MODULE_ENABLED */
/*#define HAL_IRDA_MODULE_ENABLED */
/*#define HAL_IWDG_MODULE_ENABLED */
/*#define HAL_LCD_MODULE_ENABLED */
/*#define HAL_NOR_MODULE_ENABLED */
/*#define HAL_OPAMP_MODULE_ENABLED */
/*#define HAL_PCD_MODULE_ENABLED */
#define HAL_RTC_MODULE_ENABLED
/*#define HAL_SD_MODULE_ENABLED */
/*#define HAL_SMARTCARD_MODULE_ENABLED */
/*#define HAL_SPI_MODULE_ENABLED */
/*#define HAL_SRAM_MODULE_ENABLED */
/*#define HAL_TIM_MODULE_ENABLED*/
#define HAL_UART_MODULE_ENABLED
/*#define HAL_USART_MODULE_ENABLED */
/*#define HAL_WWDG_MODULE_ENABLED */
#define HAL_GPIO_MODULE_ENABLED
#define HAL_DMA_MODULE_ENABLED
#define HAL_RCC_MODULE_ENABLED
#define HAL_FLASH_MODULE_ENABLED
#define HAL_PWR_MODULE_ENABLED
#define HAL_CORTEX_MODULE_ENABLED
解决方法:
将上述代码中的/*#define HAL_TIM_MODULE_ENABLED*/
修改为#define HAL_TIM_MODULE_ENABLED,这样便可使用TIMER功能,解决编译错误。
相关文章推荐
- VS2005安装项目出现:Setup.vdproj 不可恢复的生成错误的解决方法
- Drupal 添加模块出现莫名其妙的错误的解决方法(往往出现在模块较多时)
- 编译出现:test4.5.java:1: 错误: 需要'{'public class test4.5问题的解决方法
- android项目导入到eclipse中去出现 Case Variant exsits问题的部分解决方法尝试
- Drupal 添加模块出现莫名其妙的错误的解决方法(往往出现在模块较多时)
- Idea Tomcat Struts2 hello world 项目出现 500错误 问题解决方法
- 解决IIS出现包含空格的项目的文件/路径部分需要用括号括起来的问题
- VS2005下调用MS Speech API 5.1, 在添加“sphelper.h”头文件出现的问题,及解决方法
- JDBC连接SQLServer时出现错误Error establishing socket.的解决方法[端口问题引起]
- 工作流中的流程和业务功能图中自己新增的模块没有出现的解决方法
- VS调试项目出现"访问IIS元数据库失败"的267904错误解决方法
- j2me学习中,文件系统打开功能模块老是出现安全提示的解决方法?
- (转)cvsNT 2.5.03添加用户后出现"no such user"错误的解决方法
- 用ASP.NET做项目,本本上的系统是XP,网上下载了IIS6,安装完后出现HTTP500问题,解决之.接着出现了浏览页面时跳出登陆框让输用户名及密码,GOOGLE了一下,原来是权限不够,解决方法
- 打开MSN提示Windows Live Communication Platform遇到问题需要关闭错误的解决方法
- odbc连接dbf表出现 [Microsoft][ODBC 驱动程序管理器] 驱动程序不支持此功能” 错误的解决方法
- 安装webmagik(解决首页顶部出现错误,验证管理顶部出现错误及模块名称为问号的方法!)
- 使用Lomboz3生成Struts2项目后运行Tomcat出现Unable to load bean错误的解决
- 新建ASP.NET项目的时候出现HTTP/1.1 500 Server Error的错误解决方法
- cvsNT 2.5.03.2382添加用户后出现"no such user"错误的解决方法