自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(6)
  • 收藏
  • 关注

原创 STM32F407ZET6+CubeMX学习笔记6——看门狗

如果没到区间喂狗/超出区间都会触发复位信号。思路:开启WWDG的EWI,设计计数初始值计数到复位触发值的时间为所需的延时时间,主程序中不进行喂狗。验证IWDG,在单片机上电后进入while前,设置LED点亮,进入while后适当延时后将LED熄灭(适当延时为了方便肉眼观察LED),后进行长延时使得IWDG超时。向下递减计数——不触发重装载(不喂狗)——计数递减到底——触发复位信号 (没有按时喂狗,说明程序发生异常,触发复位重启程序)在LSI提供的时钟下,分频越大,重装载值越大,超时触发复位的时间就越长。

2024-07-17 13:29:25 810

原创 STM32F407ZET6+CubeMX学习笔记5——串口收发

当使用DMA接收函数的时候内部就会设置一个计数器,大小为预设的接收字节大小,DMA每接收到一个字节就会-1,所以其计数就是剩余的字节。在中断中,hal库就会自动触发下一个字节的发送,直到发完所有数据,所以这个函数不需要等待所有数据发送完成才退出。中断接收同理,需要先准备一个存储空间,然后函数就会开启一个中断,每接收到一个字节就会进入一次中断,在中断中,hal库就会把这个字节保存在接收区内。区别与问题:DMA进行接收的时候,假设设置接收为5个字节,当实际发送过来的字符不满5个字节的时候不会触发中断回调函数。

2024-07-14 23:21:50 753

原创 STM32F407ZET6+CubeMX学习笔记4——定时器中断+PWM输出

PWM脉冲宽度调制,以LED灯为例,通过调节占空比,使得LED快速闪烁,人眼虽然无法分辨出快速闪烁,但是由于LED实际点亮时间变短,所以会感觉灯光变弱,由此可实现LED灯亮度的调节。定时器中的通道在作为PWM输出的时候,可以连接一个IO口,该IO口上的输出电平即可根据当前定时器的计数值而发生变化。同理,需要先开启计数器,由于这里不需要使用中断,使用的是PWM输出,并且需要开启通道1,故使用的是。定时器产生中断后就会进入该函数,传入发生中断的定时器的句柄,执行内部语句,以反转LED电平为例。

2024-07-02 22:53:48 1026

原创 STM32F407ZET6+CubeMX学习笔记3——Keil常用操作+HAL底层知识

将其转换为一个GPIO_TypeDef类型的结构体指针,在GPIO_TypeDef内部通过成员变量的方式,就能把GPIOF占用的地址划分出来。如ODR,其中的低16位用于控制GPIO的16个引脚对应的输出状态,对其中的某一位进行改写,就能实现对应引脚输出高低电平的设置。可以看到每一个GPIO口都占有一定存储空间,对每个GPIO口中特定位置的地址中的特定二进制位进行操作修改,就能令GPIO口表现出不同功能(如输出高低电平),这些特定的地址就是寄存器(拥有特殊作用的存储空间,用于对外设的控制)。

2024-04-27 17:17:58 1501

原创 STM32F407ZET6+CubeMX学习笔记2——外部中断EXTI

每个GPIO口都可以作为外部中断,每个GPIO外设(GPIOA,GPIOB......)上同时只能有一个中断信号被输入到AFIO,AFIO作为数据选择器同时只能选择一个PIN,故相同的PIN口(如PA0,PB0......)不能同时触发中断,AFIO一共有16条EXTI通道,在前面选择完后和其他的EXTI一同进入边沿检测及控制后送入NVIC。抢断优先级(中断的嵌套):当有中断正在执行时候,有新的中断请求且新请求的抢断优先级更高,则发生嵌套处理新的中断。生成代码后,在main函数之外,编写中断服务函数。

2024-04-25 13:58:52 647 1

原创 STM32F407ZET6+CubeMX学习笔记1——时钟配置与GPIO输入输出

时钟树配置:HSI高速内部时钟,使用内部RC振荡时钟,精度低,一般用HSE,根据板子上晶振(若存在多晶振则看离芯片最近的)标注频率填入。其余模式多为IO复用(IO口出了可以作为通用输出输出端口GPIO之外,还可以选择为一些特殊功能的引脚,如PWM,串口收发,具体查找原理图中引脚标注)端口输入高电平则返回GPIO_PIN_SET(等同SET或1),否则为GPIO_PIN_RESET(等同RESET或0)GPIO output level:开机时默认输出电平,此处设置为高电平,即开机时候保持LED熄灭。

2024-04-19 16:03:10 1054 1

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除