16.3.2 函数HAL_DeInit 函数原型:HAL_StatusTypeDef HAL_DeInit(void) { /* 复位所有外设 */__set_PRIMASK __HAL_RCC_AHB3_FORCE_RESET(); __HAL_RCC_AHB3_RELEASE_RESET(); /* 省略未写 */ __HAL_RCC_APB4_FORCE_RESET(); __HAL_RCC_APB4_RELEASE_RESET(); /* 复位底层硬件初始化 */ HAL_...
stm32 deinit 函数作用 在STM32的HAL库或标准外设库中,deinit函数通常用于初始化外设或硬件资源。其作用是重置外设到默认状态或未配置状态。 例如,如果你使用HAL库来操作STM32的UART(通用异步收发器),在UART被使用后,为了确保下次使用时的正确性,你可能会调用一个UART_DeInit函数来重置UART相关的寄存器和引脚配置。
16.3.2 函数HAL_DeInit 函数原型: HAL_StatusTypeDef HAL_DeInit(void) {/*复位所有外设*/__set_PRIMASK __HAL_RCC_AHB3_FORCE_RESET(); __HAL_RCC_AHB3_RELEASE_RESET();/*省略未写*/__HAL_RCC_APB4_FORCE_RESET(); __HAL_RCC_APB4_RELEASE_RESET();/*复位底层硬件初始化*/HAL_MspDeInit();/...
函数HAL_DeInit里面调用的HAL_MspDeInit一般在文件stm32h7xx_hal_msp.c里面做具体实现,主要用于底层初始化,跟函数HAL_Init里面调用的HAL_MspInit是一对。当前此函数也在文件stm32h7xx_hal.c里面,只是做了弱定义。 使用举例: 此函数的使用比较简单,需要调用的时候直接调用即可。 16.3.3 函数HAL_InitTick 函数原型...
HAL库还可以和STM32CubeMX(图形化软件配置工具)配套一起使用,开发者可以使用该工具进行可视化配置,并且自动生成配置好的初始化代码,大大的节省开发时间。 7.2 HAL库驱动包 HAL库是一系列封装好的驱动函数,本节将从下载渠道、固件包的内容分析及在实际开发中用到的几个文件的详细介绍。
函数HAL_DeInit里面调用的HAL_MspDeInit一般在文件stm32h7xx_hal_msp.c里面做具体实现,主要用于底层初始化,跟函数HAL_Init里面调用的HAL_MspInit是一对。当前此函数也在文件stm32h7xx_hal.c里面,只是做了弱定义。 使用举例: 此函数的使用比较简单,需要调用的时候直接调用即可。
STM32HAL库常用指令速查手册 持续更新中 GPIO HAL_GPIO_Init void HAL_GPIO_Init(GPIO_TypeDef *GPIOx, GPIO_InitTypeDef *GPIO_Init); //功能: GPIO初始化 HAL_GPIO_DeInit void HA
并且HAL库也很好的解决了程序移植的问题,不同型号的stm32芯片它的标准库是不一样的,例如在F4上开发的程序移植到F3上是不能通用的,而使用HAL库,只要使用的是相通的外设,程序基本可以完全复制粘贴,注意是相通外设,意思也就是不能无中生有,例如F7比F3要多几个定时器,不能明明没有这个定时器却非要配置,...
HAL_MspInit 函数的主要作用是进行 MCU相关的硬件初始化操作。例如我们要初始化某些硬件,我们可以硬件相关的初始化配置 写在HAL_MspDeinit 函数中。这样的话,在系统启动后调用了 HAL_Init 之后,会自动调用硬件初始化函数。 实际上,我们在工程模板中直接删掉 stm32f1xx_hal_msp.c 文件也不会对程序运行产生任何影响...
并且HAL库也很好的解决了程序移植的问题,不同型号的stm32芯片它的标准库是不一样的,例如在F4上开发的程序移植到F3上是不能通用的,而使用HAL库,只要使用的是相通的外设,程序基本可以完全复制粘贴,注意是相通外设,意思也就是不能无中生有,例如F7比F3要多几个定时器,不能明明没有这个定时器却非要配置,...