OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 4888|回复: 2

STM32的一系列外设头文件是如何被main()函数引用的?

[复制链接]

2

主题

2

帖子

0

精华

新手入门

积分
13
金钱
13
注册时间
2022-8-31
在线时间
2 小时
发表于 2022-10-23 12:14:30 | 显示全部楼层 |阅读模式
1金钱

本来想了解一下STM32的一系列外设头文件是如何被main()引用的,因此去查询了一下各文件之间的引用关系,结果发现有几个头文件存在相互引用的现象

在`STM32f4xx.h`文件中引用了`stm32f4xx_conf.h`文件
  1. #ifdef USE_STDPERIPH_DRIVER   //KEIL编译器中定义过这个宏,因此下面这个代码应该会被编译

  2.   #include "stm32f4xx_conf.h"

  3. #endif /* USE_STDPERIPH_DRIVER */
复制代码


在`stm32f4xx_conf.h`文件中引用了各硬件库的头文件,比如
  1. #include "stm32f4xx_gpio.h"
复制代码


而在`stm32f4xx_gpio.h`文件中,又引用了`STM32f4xx.h`文件
  1. #include "stm32f4xx.h"
复制代码

问题1:
感觉这三个头文件相互引用。搞不清楚是谁引用谁了。

问题2:
main()函数中使用STM32硬件库到底是通过引用哪个头文件来实现的?


最佳答案

正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

13

主题

250

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
2251
金钱
2251
注册时间
2019-8-7
在线时间
364 小时
发表于 2022-10-23 12:14:31 | 显示全部楼层
回复

使用道具 举报

13

主题

644

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1998
金钱
1998
注册时间
2021-4-16
在线时间
509 小时
发表于 2022-10-24 10:24:00 | 显示全部楼层
嵌套使用,你就不用每次都去包含多个不同的外设头文件了,直接包含某一个已经包含了所有外设头文件的头文件就行。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2025-5-16 11:03

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

快速回复 返回顶部 返回列表