文章作者: shaplus
版权声明: 本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来源 shaplus's blog!
相关推荐
2026-05-05
hal库iwdg外设
参考:-正点原子IWDG 介绍简介 作用 工作原理 框图 寄存器 溢出时间计算公式: f1超时时间 f4,f7,h7超时时间 hal库相关函数 配置步骤 示例初始化 123456789101112131415/** * @brief 初始化独立看门狗 * @param prer: IWDG_PRESCALER_4~IWDG_PRESCALER_256,对应4~256分频 * @arg 分频因子 = 4 * 2^prer. 但最大值只能是256! * @param rlr: 自动重装载值,0~0XFFF. * @note 时间计算(大概):Tout=((4 * 2^prer) * rlr) / 40 (ms). * @retval 无 */void iwdg_init(uint8_t prer, uint16_t rlr){ g_iwdg_handle.Instance = IWDG; g_iwdg_handle.Init.Prescaler = ...
2026-05-02
hal库导航
hal库配置工程文件 hal库中断 GPIO usart iwdg wwdg timer
2026-05-02
hal库中断
参考:正点原子NVIC NVIC基本概念 stm分抢占优先级和响应优先级 抢占优先级高优先级可以打断低优先级中断 响应优先级高优先级不能打断低优先级中断 相同优先级中断按自然优先级(中断号)顺序执行中断号位置在 ‘hal库相关函数’ 处讲解 相关寄存器 hal库相关函数位置: 12345678910111213/*PriorityGroup:中断优先级分组配置NVIC_PRIORITYGROUP_0 抢占优先级0位,响应优先级4位NVIC_PRIORITYGROUP_1 抢占优先级1位,响应优先级3位NVIC_PRIORITYGROUP_2 抢占优先级2位,响应优先级2位NVIC_PRIORITYGROUP_3 抢占优先级3位,响应优先级1位NVIC_PRIORITYGROUP_4 抢占优先级4位,响应优先级0位*/HAL_NVIC_SetPriorityGrouping(uint32_t PriorityGroup);HAL_NVIC_SetPriority(中断号, 抢占优先级, 响应优先级); // 设置中断优先级HAL...
2026-05-06
stm32重要概念
影子寄存器(Shadow Register)STM32 影子寄存器(Shadow Register)是定时器硬件内部真正生效的寄存器,作用是确保时序参数(周期、占空比、分频)在更新时不产生毛刺、不破坏当前周期完整性,实现同步、无抖动的参数切换。 基本结构:预装载 + 影子STM32 定时器里带 “阴影” 标记的寄存器(ARR、CCR、PSC、RCR)都由两部分组成: 预装载寄存器(Preload Register) 软件直接读写的对象(如 TIMx->ARR、TIMx->CCR1) 你写的值先存在这里,不一定立即生效 影子寄存器(Shadow Register) 硬件内部、用户不可直接访问 真正参与计数、比较、输出的寄存器 只有它的值决定当前定时器行为 核心作用(为什么需要影子) 保证当前计数周期完整,不被中途截断 计数器正在跑时,你改 ARR/CCR: 无影子:立即改硬件 → 周期突然变短 / 变长、PWM 出现毛刺、尖峰、丢脉冲 有影子:新值暂存预装载,等当前周期结束(更新事件 UEV)才加载到影子 → 平滑切换 多通道参数...
2026-05-01
hal库配置工程文件
参考: 正点原子新建hal版本MDK工程 下载相应文件 下载模板文件以stm32f103c8hal库模板为例,后续展示如何修改成需要的其他系列的stm32模板。解压缩后得到以下文件夹: 下载stm32固件包 修改文件找到相关芯片的Macros型号 打开对应stm32cube文档(在固件包的Documentation文件夹中)文件地址:stm32cubef1\STM32Cube_FW_F1_V1.8.0\Documentation(在其他系列在相应文件夹中查找) 查找相关芯片的Macros型号目录找到 3.1 Supported STM32F1 devices and hardware根据下面的table1查找相应芯片的Macros型号如:stm32f103c8的Macros型号为STM32F103xB 修改stm相关文件 修改stm32f103c8_hal模板\Drivers\CMSIS\Device\ST\STM32F1xx\Include文件夹stm32f103xb.h文件改为对应Macros型号的h文件 如果不是f1系列,去对应固件包\D...
2026-05-03
hal库usart外设
参考: 正点原子usart外设 介绍简介 特性 系统框图 查看引脚定义在芯片数据手册查找芯片数据手册下载方式参考获取资料手册外设信息: 引脚定义: 相关函数接口定义UART_HandleTypeDef UART_InitTypeDef MSP回调函数机制初始化钩子函数 中断回调 常用函数1234567891011121314151617181920212223242526HAL_UART_Init(UART_HandleTypeDef *huart); //初始化usart外设void HAL_UART_MspInit(UART_HandleTypeDef *huart); //初始化钩子函数__HAL_RCC_USART1_CLK_ENABLE(); //使能usart1时钟HAL_NVIC_EnableIRQ(USARTX_IRQn); //使能usartX中断HAL_NVIC_SetPriority(USARTX_IRQn, 3, 3); //设置usartX中断优先级HAL_UART_Receive_IT(...
评论