stm32f103c6t6标准库添加DSP库

        由于最近下班比较早,在家里闲着无聊,所以想着做一个FFT的频谱在OLED上显示,在我加DSP库的时候,遇到了一个比较棘手的问题,离谱的很,还好解决了!!!!

        当我从网上拿到这个库的包并准备加入这个DSP库的时候

按照步骤,开始还好,后面编译的时候,可想而知

因为我看的一个CSDN的博主的单片机是STM32F103RC的

然后他在Define里面加了2个定义,1个是STM32F10X_HD,另一个是ARM_MATH_CM3,然后导致我的报错(我的是STM32F103C6T6)

主要问题是我加了STM32F10X_HD,导致了

..\USER\stm32f10x.h(298): error:  #67: expected a "}"    ADC1_2_IRQn                 = 18,    

/*!< ADC1 and ADC2 global Interrupt                       */

这种错误44个,嗯哼!!!眼睛瞪大一圈,找找解决方案,,,

我查询百度才发现,原来STM32F103RC的可以用STM32F10X_HD的,但是我的应该用STM32F10X_MD的;

我改成了MD的之后,又来了10个报错

__STATIC_INLINE uint32_t  __get_BASEPRI(void)
D:\mdk5\ARM\PACK\ARM\CMSIS\4.2.0\CMSIS\Include\core_cmFunc.h(238): error:  #247: function "__set_BASEPRI" has already been defined
  __STATIC_INLINE void __set_BASEPRI(uint32_t basePri)
D:\mdk5\ARM\PACK\ARM\CMSIS\4.2.0\CMSIS\Include\core_cmFunc.h(251): error:  #247: function "__get_FAULTMASK" has already been defined
  __STATIC_INLINE uint32_t __get_FAULTMASK(void)

什么鬼????重定义???

注释掉这个//#include "arm_math.h"之后就没有报错了;如果不注释的话就会有上面的报错,最后发现原来是因为在我加的这个DSP库里面,因为加入了.h的这个路径;好的问题就在这里了。。。。

在这个Include里面的.h文件包含了和CORE里面一致的core_cm3.h文件

所以才会有报错

删除之后,,,,

没有报错了。

耶耶耶耶耶耶!!!!!!皆大欢喜,特来跟大家分享。

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

fighting787

一起加油,一起成功!

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值