
STM32
文章平均质量分 64
修船大队长
这个作者很懒,什么都没留下…
展开
-
在 制作基于stm32f103的温湿度检测时遇到的问题及解决方法
1、DHT11模块启动不了1.没有做DHT11启动判断(若DHT11启动会出现一段低电平),(硬件启动有点玄学问题),如果一次不行就跳过这次循环,下一次再尝试启动DHT11传感器。或者尝试多次拉高电平然后再根据芯片手册的启动电平信号去改变电平信号。2、屏幕上的数值反应有点慢。。有时候还会卡住。猜想:可能是DHT11在某次数据采集过程中出现问题,然后在某个while循环中阻塞住了。解决办法:在while循环中做延时有效性判断,若延时了很久那就直接return,进入下一次数据采集。3.在DHT11_原创 2022-04-06 16:22:18 · 6723 阅读 · 0 评论 -
关于STM32上电按下复位键时串口输出FF
最近玩stm32,使用串口发送数据在PC端使用串口工具检测接收到的数据,发现STM32串口发送到电脑的数据乱码,按下复位键总是显示FF,配置GPIO的时候先打开GPIO时钟再初始化GPIO和串口问题就解决了(可能是顺序问题)配置串口时尽量按下面的顺序配置1.开启IO和外设USART时钟。2.GPIO_Iinit();3.NVIC_Init();(如果使能中断)4.USART_ITConfig();5.USART_Cmd();2和3一定不能颠倒!!!...原创 2021-03-05 21:41:53 · 2036 阅读 · 1 评论 -
stm32 USART—串口通讯
当下列这些标志位条件成立时,都是置1原创 2021-01-14 10:11:23 · 386 阅读 · 0 评论 -
SYStick定时器编写延迟函数
SysTick—系统定时器SysTick—系统定时器有 4 个寄存器,简要介绍如下。在使用 SysTick 产生定时的时候,只需要配置前三个寄存器,最后一个校准寄存器不需要使用。SysTick 寄存器汇总寄存器名称寄存器描述CTRLSysTick 控制及状态寄存器LOADSysTick 重装载数值寄存器VALSysTick 当前数值寄存器CALIBSysTick 校准数值寄存器(不常用到)SysTick 控制及状态寄存器位段名称类型原创 2021-01-12 12:53:22 · 1098 阅读 · 0 评论 -
STM32配置外部中断
中断概括STM32 中断非常强大,每个外设都可以产生中断,内核水平上搭载了一个异常响应系统, 分为:系统异常和外部中断。NVICNVIC相当于一个中断总开关,总开关打开,相应的中断才能使用。在讲如何配置中断优先级之前,我们需要先了解下 NVIC。 NVIC 是嵌套向量中断控制器,控制着整个芯片中断相关的功能,是内核里面的一个外设。代码 17-1 NVIC 结构体定义,来自固件库头文件: core_cm3.h1 typedef struct {2 __IO uint32_t ISER[8];原创 2021-01-11 11:02:40 · 388 阅读 · 0 评论 -
使用HSE配置系统时钟
配置时钟顺序需要按照时钟树的顺序来配置。 我们使用STM32时基本都是使用 HSE(外部高速时钟),然后 HSE 经过 PLL 倍频之后作为系统时钟。通常的配置是:HSE=8M,PLL 的倍频因子为:9,PLL时钟就设置成:72M,选择PLLCLK为系统统时钟源;则SYSCLK = PLLCLK8M * 9 = 72M。编写代码步骤1. 复位时钟固件库:RCC_DeInit(); 在系统启动时已经将时钟配置好了是开启(enable)的状态,有些时钟寄存器在enable的情况下是不能配置的,所原创 2021-01-09 22:03:27 · 2127 阅读 · 0 评论 -
使用stm32固件库点亮LED
文章目录创建固件库模板工程实现点亮LED准备工作:编写代码代码解释:创建固件库模板工程首先在此下载固件库文件:固件库在文件夹创建如下几个文件夹 将固件库中的libraries文件导入Lib文件夹中最后模板文件夹的各个文件如下所示Lib文件夹USER文件夹在PROJEECT文件夹中建立新的工程文件。并在工程中建立如下几个文件夹 START UP文件下包含32的启动代码,根据闪存大小的不同,选取的文件也不同。64k—128k的选 结尾为 _md的文件。FW-lib中包含的是固件库中的原创 2021-01-07 20:04:23 · 675 阅读 · 0 评论