Preprocessor Symbols设置错误导致异常报错error: redefinition of enumerator
报错信息如下:
../../../../GD32F10x_Firmware_Library/CMSIS/GD/GD32F10x/Include\gd32f10x.h(168): error: redefinition of enumerator 'USBD_HP_CAN0_TX_IRQn'
../../../../GD32F10x_Firmware_Library/CMSIS/GD/GD32F10x/Include\gd32f10x.h(169): error: redefinition of enumerator 'USBD_LP_CAN0_RX0_IRQn'
问题原因:
Preprocessor Symbols 应设置GD32F10X_MD,但却设置成了GD32F10X_HD
解析说明:
Preprocessor symbols
Preprocessor symbols 是预处理符号的意思,这里相当于宏定义,我们在使用GD32固件库时,由于固件库里面包含的是GD整个系列单片机的定义。这时在define框中可以作为一个全局宏定义,即选择我要采用固件库中哪部分定义、资源。
USE_STDPERIPH_DRIVER
从字面意思理解就是“使用标准外设驱动”,在C/C++预定义中加入“USE_STDPERIPH_DRIVER”就是允许“使用标准外设驱动”了。至于加入的“GD32F10X_HD“同样能在文件”gd32f10x.h“通过如上所述的方法通过功能查找来进行解释,其实它也是对于对应硬件的某些定义起开关作用罢了。
GD32F10X_HD&GD32F10X_MD
其实是定义使用芯片的容量大小
/* define GD32F10x */
#if !defined (GD32F10X_MD) && !defined (GD32F10X_HD) && !defined (GD32F10X_XD) && !defined (GD32F10X_CL)/* #define GD32F10X_MD */ /*!< GD32F10X_MD: GD32 Medium density devices *//* #define GD32F10X_HD */ /*!< GD32F10X_HD: GD32 High density Value Line devices */ /* #define GD32F10X_XD */ /*!< GD32F10X_XD: GD32 Extra density devices *//* #define GD32F10X_CL */ /*!< GD32F10X_CL: GD32 Connectivity line devices */
#endif /* define GD32F10x */
宏 |
MCU 型号 |
FLASH大小 |
STM32F10X_LD |
STM32F101xx STM32F102xx STM32F103xx |
16 ~ 32 Kbytes |
STM32F10X_MD |
STM32F101xx STM32F102xx STM32F103xx |
64 ~ 128 Kbytes |
STM32F10X_HD |
STM32F101xx STM32F103xx |
256 ~ 512 Kbytes |
STM32F10X_CL |
STM32F105xx STM32F107xx |
忽略 |
Preprocessor Symbols设置错误导致异常报错error: redefinition of enumerator相关推荐
- 大数据——那些年走过的坑(异常报错解决方案,持续更新)
1. Sqoop将mysql中表导入到hive遇到 ERROR hive.HiveConfig: Could not load org.apache.hadoop.hive.conf.HiveConf ...
- JSONException: illegal identifier : \pos 1 异常报错问题
JSONException: illegal identifier : \pos 1 异常报错问题 1.常见情况: 1.1 JSON 字符串格式不正确 1.2 JSON 字符串中包含了非法字符 1.3 ...
- 解决MySQL事务未提交导致死锁报错 避免死锁的方法
版权声明:本文为博主原创文章,遵循 CC 4.0 by-sa 版权协议,转载请附上原文出处链接和本声明. 本文链接:https://blog.csdn.net/xuheng8600/article/d ...
- import提升导致Fundebug报错:“请配置apikey”
摘要: 解释一下"请配置apikey"报错的原因. 部分Fundebug用户使用import来导入js文件时,出现了"请配置apikey"的报错,这是由于imp ...
- 解决IntelliJ IDEA报错Error: java: 错误: 不支持发行版本 XX
解决IntelliJ IDEA报错Error: java: 错误: 不支持发行版本 XX 解决方法 1 解决方法 2 解决方法 3 笔者在做代码重构的时候,以前记得运行正常的代码,如今一直报错,百 ...
- 【记录】IDEA未正确关闭导致打开报错,进不了主界面,含解决办法
[记录]IDEA未正确关闭导致打开报错,进不了主界面,含解决办法 错误提示 解决方案 参考 错误提示 截取了错误的主要部分 java.util.concurrent.CompletionExcepti ...
- Log4j2 日志 依赖 jar包 缺失 导致启动报错 解决方法
Log4j2 日志 依赖 jar包 缺失 导致启动报错 解决方法. 一个Java老项目,更新了日志工具,升级为Log4j2,在引入log4j-api-2.14.0.jar 和log4j-core-2. ...
- Canvas引入跨域的图片导致toDataURL()报错的问题的解决
本文介绍了Canvas引入跨域的图片导致toDataURL()报错的问题的解决,分享给大家,具体如下: [场景] 用户打开网页,则请求腾讯COS(图片服务器)上的图片js代码.使用canvas绘图. ...
- 自定义 thinkphp5.0全局异常报错,继承基类\exception解决
情景介绍:url请求是get方式,此次报错是测试post请求,异常返回错误信息是否正确,结果异常返回信息有误,返回信息不正确. 以下下报错信息,显示 自定义全局异常报错信息是传入HttpExcept ...
最新文章
- mysql挂科了咋办_大一挂科很难受怎么办?
- POJ 2485-Highways
- vsftpd + mysql + virtual users
- java mac jconsole_解决java maven项目找不到jconsole-1.8.0.jar和tools-1.8.0.jar包问题
- 一ElasticSearch安装启动
- 为什么c++文件只能执行一次_numba从入门到精通(1)—为什么numba能够加速
- python特点 可移植性_下面的选项中,不属于Python特点的是( )_学小易找答案
- 推荐8款Windows装机必备下载神器【建议收藏】
- word怎么把页面顺序倒过来_word设置倒序打印的方法
- 手把手教你使用Python提取快递信息
- 告诉你一个真实的Google
- html如何给图片加链接
- 动画:从 AE 到 Web
- es6---Promise
- Excel 2010 VBA 入门 100 将xls格式工作簿批量转换为xlsx格式
- matlab如何画波特图,matlab画波特图
- 全球及中国板材制造行业销售前景与产销规模分析报告2022-2028年
- CT影像与超声影像的融合(fusion)的原理是什么
- 病毒木马查杀实战第015篇:U盘病毒之脱壳研究
- git报错 fatal: unsafe repository