stm32f10x调试记录

本文针对STM32库构建过程中遇到的两个典型问题进行了解析,包括因缺少条件编译而导致的类型重复声明错误,以及变量声明位置不当引发的问题。通过具体实例,指导读者如何正确地组织代码结构,避免类似错误。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

9-自己写库—构建库函数雏形

 问题(1):

stm32f10x.h(44): error:  #256: invalid redeclaration of type name "GPIO_TypeDef" (declared at line 44)
  }GPIO_TypeDef;
stm32f10x.h(59): error:  #256: invalid redeclaration of type name "RCC_TypeDef" (declared at line 59)
  }RCC_TypeDef;
main.c: 0 warnings, 2 errors

原因:未在库文件头添加条件编译

#ifndef __STM32F10X_H
#define __STM32F10X_H

...

#endif    /* __STM32F10X_H */

 

问题(2):

main.c(36): error:  #268: declaration may not appear after executable statement in block
                GPIO_InitTypeDef  GPIO_InitStructure;
main.c: 0 warnings, 1 error

原因:定义变量放在了函数之后,没有放在最前面,将GPIO_InitTypeDef  GPIO_InitStructure;置于函数之前即可!

 

 

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

snaking616

你的鼓励是我最大的动力!

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

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

打赏作者

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

抵扣说明:

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

余额充值