![](https://img-blog.csdnimg.cn/20190918140158853.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
STM32学习
文章平均质量分 70
STM32野火hal库教程学习
喵呜喵呜≈
因为你,我想成为更好的人
展开
-
STM32—DTH11
DHT11数字温湿度传感器是一款含有已校准数字信号输出的温湿度复合传感器,应用领域:暖通空调;数据是0或者1是看高电平的时长,持续高电平26—28us为1,70us为0,所以在40微妙的时候读dht电平来判断。只有一根数据线DATA,单片机发送序列指令给DHT11模块,模块一次完整的数据传输为40bit,高位先出。8bit湿度整数数据+8bit湿度小数数据+8bi温度整数数据+8bit温度小数数据+8bit校验和。注意:PB7既作为输入,也作为输出,则不能直接在CubeMX里配置,需要自己写代码。原创 2023-03-15 15:43:21 · 779 阅读 · 1 评论 -
STM32—LCD1602
LCD1602(Liquid Crystal Display)是一种工业字符型液晶,能够同时显示 16×02 即 32 字符(16列两行)第 1 脚: VSS 为电源地第 2 脚: VDD 接 5V 正电源第 3 脚: VL 为液晶显示器对比度调整端,接正电源时对比度最弱,接地时对比度最高,对比度 过高时会产生“鬼影”,使用时可以通过一个10K 的电位器调整对比度。第 4 脚:RS 为寄存器选择,高电平时选择数据寄存器、低电平时选择指令寄存器。原创 2023-03-11 16:13:32 · 4361 阅读 · 2 评论 -
STM32—IIC
IIC全称Inter-Integrated Circuit (集成电路总线)是由PHILIPS公司在80年代开发的两线式串行总线,用于连接微控制器及其外围设备。IIC属于半双 工同步通信方式。原创 2023-03-10 21:33:17 · 640 阅读 · 0 评论 -
STM32—DMA
DMA(Direct Memory Access,直接存储器访问)提供在外设与内存、存储器和存储器、外设与外设之间的高速数据传输使用。它允许不同速度的硬件装置来沟通,而不需要依赖于CPU,在这个时间中,CPU对于内存的工作来说就无法使用。原创 2023-02-26 15:05:06 · 791 阅读 · 0 评论 -
STM32——窗口看门狗
窗口看门狗用于监测单片机程序运行时效是否精准,原创 2023-02-25 14:50:42 · 697 阅读 · 0 评论 -
STM32—独立看门狗(IWDG)
在由单片机构成的微型计算机系统中,由于单片机的工作常常会收到来自外界电磁场的干扰,造成程序跑飞,而陷入死循环,程序的正常运行被打断,由单片机控制的系统无法继续工作,会造成整个系统陷入停滞状态,发生不可预料的后果。所以出于对单片机运行状态进行实时检测的考虑,便产生了一种专门用于监测单片机程序状态的模块或者芯片,俗称看门狗。独立看门狗工作在主程序之外,能够完全独立工作,它的时钟是专用的低速时钟(LSI),由VDD电压供电,在停止模式和待机模式下仍能工作。原创 2023-02-24 21:20:58 · 628 阅读 · 0 评论 -
STM32—串口
串行接口简称串口,也称串行通信接口或串行通讯接口(通常指COM接口),是采用串行通信方式的扩展接口。串行接口(Serial Interface)是指数据一位一位地顺序传送。其特点是通信线路简单,只要一对传输线就可以实现双向通信(可以直接利用电话线作为传输线),从而大大降低了成本,特别适用于远距离通信,但传送速度较慢是设备间接线通信的一种方式数据一位一位地顺序传送双向通信,全双工传送速度相对较慢UART是异步串行接口,通信双方使用时钟不同,因为双方硬件配置不同,但是需要约定通信 速度,叫做波特率。原创 2023-01-30 21:27:29 · 2589 阅读 · 0 评论 -
STM32—感应开盖垃圾桶
注意:HAL_Delay函数由于优先级较低,无法打断中断,需要用下面函数提高优先级。需求:距离少于10cm,开盖(舵机转动90度),led亮,反之关闭。PB9—TIM4_CH4PWM输出。定时器TIM4:用作输出PWM。定时器TIM2,:用作计时。配置PA0为中断触发。勾选使能,改变优先级。原创 2023-01-28 16:48:02 · 288 阅读 · 0 评论 -
STM32—超声波测距
超声波测距模块是用来测量距离的一种产品,通过发送和收超声波,利用时间差和声音传播速度, 计算出模块到前方障碍物的距离。型号:HC-SR04时序图怎么让它发送波 Trig触发信号,给Trig端口至少10us的高电平怎么知道它开始发了 Echo信号,由低电平跳转到高电平,表示开始发送波怎么知道接收了返回波Echo信号,由高电平跳转回低电平,表示波回来了怎么算时间Echo引脚维持高电平的时间!波发出去的那一下,开始启动定时器 波回来的拿一下,我们开始停止定时器,计算出中间经过多少时间。原创 2023-01-28 14:29:00 · 7692 阅读 · 1 评论 -
STM32—sg90编程
思路:做出一个周期为20ms的脉冲,通过设置CCRx的值,控制一个周期中高电平的占空比来控制对应的角度。2.0ms-----------135度;2.5ms-----------180度;2.5ms-----------180度;0.5ms-------------0度;1.0ms------------45度;1.5ms------------90度;1.0ms------------45度;1.5ms------------90度;0.5ms-------------0度;原创 2023-01-27 17:01:51 · 695 阅读 · 0 评论 -
STM32—PWM
脉冲宽度调制(PWM),是利用微处理器的数字输出来对模拟电路进行控制的一种非常有效的技术。即对脉冲宽度的控制。STM32 的定时器除了 TIM6 和 7。其他的定时器都可以用来产生 PWM 输出。其中高级定时器 TIM1 和 TIM8 可以同时产生多达 7 路的 PWM 输出。而通用定时器也能同时产生多达 4路的 PWM 输出,这样,STM32 最多可以同时产生 30 路 PWM 输出!STM32F03C8T6 PWM资源:高级定时器(TIM1):7路通用定时器(TIM2—TIM4):各四路。原创 2023-01-27 16:06:03 · 1467 阅读 · 0 评论 -
STM32—定时器
STM32总共有8个定时器,分别是2个高级定时器(TIM1、TIM8),4个通用定时器(TIM2、TIM3、TIM4、TIM5)和2个基本定时器(TIM5、TIM6)TimeClockFren:定时器的输入时钟频率(单位MHZ),也就是当前使用的TIM所用的CLOK的时钟频率。2个高级定时器(TIM1、TIM8),4个通用定时器(TIM2、TIM3、TIM4、TIM5)和2个基本定时器(TIM5、TIM6)高级定时器:除了具备通用定时器的所有功能外,高级定时器具有捕获/比较通道和互补输出、刹车输入等功能。原创 2023-01-25 16:12:23 · 1978 阅读 · 0 评论 -
STM32—震动报警装置
433M无线发射接收模块(上升沿触发中断):接收到信号,接收模块对应针脚输出高电平,有D0 D1 D2 D3,对应遥控器的ABCD。原因:程序在初始化时默认把滴答定时器的中断优先级设为最低,其他的中断源很容易打断它导致卡死。震动传感器(接到PA4,下降沿触发中断):震动输出低电平,反之高电平。解决:在main里面使用以下函数把滴答定时器的中断优先级提升为0。继电器(接到PB7):低电平闭合导通,高电平断开。A(打开警报模式):D0(接到PA5)D1(关闭警报模式):(接到PA6)主要重写这个中断回调函数。原创 2023-01-18 18:04:01 · 586 阅读 · 0 评论 -
STM—EXTI外部中断
STM32通过中断控制器NVIC进行中断的管理,NVIC属于Cortex内核的器件,不可屏蔽中断(NMI)和外部中断都由它来处理,但是SYSTICK不是由NVIC控制的。原创 2023-01-17 16:48:23 · 112 阅读 · 0 评论 -
STM32—中断
STM32异常和中断STM32的异常一览表STM32的中断表一览。原创 2023-01-16 21:45:51 · 103 阅读 · 0 评论 -
STM32—复位和时钟控制(RCC)
可通过查看RCC_CSR控制状态寄存器中的复位状态标志位识别复位事件来源。电源复位将复位除了备份区域外的所有寄存器。2.Debug改为Serial Write。写工程 Name,更改需要的设置,最后生成。时钟打开,对应的设备才会工作。HSI(高速的内部时钟)HSE(高速的外部时钟)PLL(锁相环倍频时钟)改为下面配置,按下回车。原创 2023-01-16 17:46:19 · 1085 阅读 · 0 评论 -
STM32—第一个外设GPIO
GPIO的两种输出结构:推挽输出、开漏输出开漏输出可以实现线与的结构,例如IIC通信就会用到开漏输出。原创 2023-01-13 15:45:06 · 203 阅读 · 0 评论