lulix删除文件_关于stm32f10x_conf.h文件

本文详细介绍了如何在使用STM32标准外设库V3.5.0时,从工程中删除stm32f10x_conf.h文件,同时讨论了运行时参数检查机制的启用与禁用,以及这样做带来的好处。
摘要由CSDN通过智能技术生成

简介

stm32f10x_conf.h文件有2个作用:①提供对assert_param运行时参数检查宏函数的定义。②将开发者用到的标准外设头文件集中在这个文件里面,而stm32f10x_conf.h又被包含到stm32f10x.h中去了,因此方便开发者在写自己的库时,只需一股脑的包含stm32f10x.h就行了。

我本人是强烈不推荐第②功能。一个合格的C开发者应该知道它在写一个模块时,需要包含什么头文件,不需要包含什么头文件。而第②功能的做法就是,不管你用不用,我都全部包含进去。包含不会用到的头文件一般不是什么错误,但是它会影响代码的编译速度,代码的整洁和可读性。而他的第①功能又可有可无,因此我很早就打算将这个文件从工程中删除了。

本文主要介绍,在使用ST提供的标准外设驱动库V3.5.0开发stm32项目时,如何从工程中删除这个头文件,而又不影响正常开发。

关于assert_param

ST提供的标准外设库V3.5.0在实现时,为了防止用户传递的参数不合法,大量使用了运行时断言。这个断言函数名为assert_param。

例如库中的GPIO_ReadInputData函数:

uint16_t GPIO_ReadInputData(GPIO_TypeDef*GPIOx)

{/*Check the parameters*/assert_param(IS_GPIO_ALL_PERIPH(GPIOx));//如果参数GPIOx不是一个合法的GPIO,则运行时会调用assert_failed来处理错误

return ((uint16_t)GPIOx->IDR);

}

assert_param在stm32f10x_conf.h文件中定义,如下:

#ifdef USE_FULL_ASSERT#define assert_param(expr) ((expr) ? (void)0 : assert_failed((uint8_t *)__FILE__, __LINE__))

void assert_failed(uint8_t*file, uint32_t line);#else

#define assert_param(expr) ((void)0)

#endif /* USE_FULL_ASSERT */

解释:当我们在stm32f10x_conf.h文件定义了 USE_FULL_ASSERT(代表开发者需要启用标准库的运行时参数检查机制),那么asser

### 回答1: 这三个文件都与 STM32F10x 系列单片机的中断相关。 - stm32f10x_conf.h:该文件定义了 STM32F10x 系列单片机的中断优先级分组和中断向量表基地址等配置。需要根据具体的项目需求进行配置。 - stm32f10x_it.c:该文件是中断服务程序(Interrupt Service Routine,ISR)的源文件,其中包含了各个中断的具体处理函数。需要根据具体的中断类型在该文件中定义对应的 ISR。 - stm32f10x_it.h:该文件是中断服务程序的头文件,其中声明了各个 ISR 的函数原型。需要在 stm32f10x_it.c 文件中包含该头文件。 总之,这三个文件STM32F10x 系列单片机中断处理的关键文件,需要仔细配置和实现。 ### 回答2: stm32f10x_conf.h、stm32f10x_it.c和stm32f10x_it.h都是针对ST公司的STM32F10x系列微控制器的配置和中断处理的文件。 首先,stm32f10x_conf.h是一个配置文件,用于配置STM32F10x系列微控制器硬件资源的初始化设置。该文件中包含了各种宏定义和配置选项,以便用户可以根据需要进行硬件资源的配置。例如,该文件可以配置GPIO引脚的初始化设置、USART串口通信的波特率等。 其次,stm32f10x_it.c是一个中断处理文件,用于处理STM32F10x系列微控制器的中断事件。该文件中包含了各种中断服务函数(Interrupt Service Routine,简称ISR),当出现相应的中断事件时,相应的ISR将会被自动调用。用户可以根据自己的需求,在stm32f10x_it.c文件中编写相应的ISR,以执行所需的任务。例如,当出现USART接收中断时,用户可以编写相应的ISR用于处理接收到的数据。 最后,stm32f10x_it.h是一个中断处理的头文件,用于声明STM32F10x系列微控制器中使用的中断函数。用户可以根据自己的需求,在该文件中进行中断函数的声明。通常情况下,该文件会包含stm32f10x_conf.h文件,以便获取相关配置信息。 综上所述,stm32f10x_conf.h、stm32f10x_it.c和stm32f10x_it.h是针对STM32F10x系列微控制器的配置和中断处理的文件,用于配置硬件资源的初始化和处理中断事件。通过这些文件的使用,可以有效地管理STM32F10x系列微控制器的硬件资源并实现相应的功能。 ### 回答3: stm32f10x_conf.h是STM32F10x系列的配置文件,这个文件定义了STM32F10x器件的所有寄存器和外设的基本配置信息。在该文件中,我们可以根据需要选择要使用的外设和配置其相关参数,例如时钟配置、中断向量表配置等。通过修改这个文件中的宏定义和其他配置选项,我们可以对STM32F10x进行定制化的配置。 stm32f10x_it.c和stm32f10x_it.h是处理中断的文件stm32f10x_it.c文件包含了处理各种中断的函数,而stm32f10x_it.h文件则是它的头文件,用于声明这些中断函数。这些文件是由STM32标准外设库提供的,它们定义了中断函数的框架,并提供了中断处理的一些常用函数和数据结构。 在使用STM32F10x系列的MCU进行开发时,我们通常需要根据需求来处理一些特定的中断,例如定时器中断、串口中断等。我们可以在stm32f10x_it.c中编写这些中断函数的具体实现,并在stm32f10x_it.h中进行声明。然后,在主程序中,我们可以根据需要直接调用这些中断函数。 这些文件的提供给我们开发STM32F10x系列的MCU带来了很大的便利性。通过配置stm32f10x_conf.h文件,我们可以轻松地选择和配置所需的外设,并在stm32f10x_it.c文件中编写和处理中断函数,实现各种功能的逻辑。 总之,stm32f10x_conf.h、stm32f10x_it.c和stm32f10x_it.h是STM32F10x系列MCU开发中的重要文件,它们提供了配置外设和处理中断的框架和函数,方便开发者进行STM32F10x系列MCU的开发工作。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值