STM32
文章平均质量分 72
飞由于度
世界上只有一种英雄主义,就是看清生活的真相之后依然热爱生活。
展开
-
HAL库实现基于STM32+RN8302B的电压采集
HAL库实现基于STM32+RN8302B的电压采集,操作非常简单,程序功能:用于测试C相电压,借此熟悉RN8302B的操作原创 2022-09-09 10:14:13 · 6587 阅读 · 9 评论 -
STM32实现基于HAL库的LoRa通信(SPI接口)
STM32CubeIDE实现基于STM32的LoRa通信程序移植(SPI接口),操作非常简单,程序功能:用于测试LoRa的通信距离和丢包率原创 2022-09-04 11:33:18 · 4013 阅读 · 0 评论 -
STM32CubeIDE实现printf重定向输出到串口
STM32CubeIDE之printf重定向及串口原创 2022-09-02 17:22:44 · 2221 阅读 · 0 评论 -
stm32cubemx芯片选择时加total和不加total的区别
stm32cubemx选择芯片时加total和不加total的区别原创 2022-05-17 17:32:14 · 202 阅读 · 0 评论 -
git did not exit cleanly (exit code 1)
问题描述:在gitee和PC端同时新建一个文件,然后PC端发送push请求,报错如下解决方案:先在PC端pull一下 再push就ok了git的视频教学:Git和Gitee的使用原创 2021-08-23 11:31:57 · 316 阅读 · 0 评论 -
STM32 使用sprintf 导致死机的一个解决方法
我在使用sprintf 进行字符串格式化处理的时候,一执行到sprintf,STM32就死机(必死),看了很多博客,包括 关于STM32 使用sprintf 死机问题! 关于单片机编程里面调用sprintf死机的解决方法及原因分析 但是都没能解决问题。经过两天的摸索,终于在机缘巧合之下,解决了!解决的原理我没有办法解释,在这里把解决方法写出来供各位参考。问题描述:原代码是为了实现通过MQTT协议连接阿里云,代码有点大,所以我就单门把出错的代码拎出来。 首先我使用C语言在..原创 2021-08-19 10:10:16 · 6795 阅读 · 9 评论 -
STM32CubeMX配置时钟中的auto-reload precload
在观看【小蜜蜂笔记】基于STM32CubeMX的嵌入式开发基础教程 第5P——STM32的定时器开发基础的时候,产生了一个疑问,这里不需要使能自动重装载吗?带着这个疑问我去查了一下《STM32 HAL 库开发实战指南》,在第 31 章 TIM—基本定时器找到了详细的解释。自动重载寄存器 TIMx_ARR 用来存放于计数器值比较的数值,如果两个数值相等就生成事件,将 相关事件标志位置位,生成 DMA和中断输出。 TIMx_ARR 有影子寄存器,可以通过 TIMx_CR1 寄存器的 ARPE 位控制影子原创 2021-07-12 16:22:06 · 10265 阅读 · 8 评论 -
解决STM32F407串口数据乱码问题
我使用的开发板是正点原子的stm32f407探索者开发板,看的视频是野火的野火F407开发板-霸天虎视频-【中级篇】,使用的固件库也是野火的(问题就出在这),在做串口实验的时候,上位机接收到的数据显示总是乱码,但是使用正点原子的串口例程通信就是正常的。void USART_Init(USART_TypeDef* USARTx, USART_InitTypeDef* USART_InitStruct)...原创 2021-05-14 15:36:26 · 5913 阅读 · 14 评论 -
Keil提示:..\main.c(16): error: #18: expected a “)“
实验是使用寄存器点亮LEDmain.c代码#include "stm32f4xx.h"void delay(volatile uint32_t n){ for(;n!=0;n--);}int main(void){ //第一步:打开时钟 RCC_AHB1ENR|=(1<<5); //第二步:配置引脚模式 GPIOF_MODER &=~(0b11<<(9*2));//首先,清零 GPIOF_MODER |=((1)<<(9*2)原创 2021-05-11 17:17:20 · 6655 阅读 · 7 评论 -
单片机ram和rom的区别
单片机运行时需要调用某个程序/函数/固定数据时就需要读取ROM,然后在RAM中执行这些程序/函数的功能,所产生的临时数据也都存在RAM内,断电后这些临时数据就丢失了。ROM:(Read Only Memory) 程序存储器在单片机中用来存储程序数据及 …单片机运行时需要调用某个程序/函数/固定数据时就需要读取ROM,然后在RAM中执行这些程序/函数的功能,所产生的临时数据也都存在RAM内,断电后这些临时数据就丢失了。ROM:(Read Only Memory)程序存储器在单片机中用来存..转载 2021-05-11 10:37:05 · 5386 阅读 · 0 评论 -
STM32使用keil调试,程序会停在 BEAB BKPT 0XAB
解决方法:原创 2021-05-08 08:20:48 · 2986 阅读 · 0 评论 -
AHB、 APB1、APB2的联系与区别
STM32F10xxx参考手册中第二章存储器和总线构架写道AHB/APB桥(APB)两个AHB/APB桥在AHB和2个APB总线间提供同步连接。 APB1操作速度限于36MHz, APB2操作于全速(最高72MHz)。有关连接到每个桥的不同外设的地址映射请参考表1。在每一次复位以后,所有除SRAM和FLITF以外的外设都被关闭,在使用一个外设之前,必须设置寄存器RCC_AHBENR来打开该外设的时钟。注意: 当对APB寄存器进行8位或者16位访问时,该访问会被自动转换成32位的访问:桥会自动将8原创 2021-04-27 15:06:35 · 11719 阅读 · 0 评论 -
STM32的引脚怎么才能即输入又输出呢
参考网站采用“配置成开漏输出,再外接上拉”的方式,在输出的时候,直接输出,这一点是没有问题。但是在如何读入数据的时候,问题来了:在读取之前,要不要先把STM32的引脚输出高电平?所以我就做了一个实验,以下是实验内容。因为本实验的结果是应用于AT24C16,所以实验电路就直接在这个电路图的基础上改的。 上电之后,用万用表测试引脚SCL与引脚SDA的电压,发现不论STM是输...原创 2019-02-20 11:55:02 · 10891 阅读 · 2 评论 -
EEPROM 之 AT24C16 - 备忘录
因为论坛里看到STM的I2C有点小bug,所以这里采用的是模拟I2C时序【注】m0.6us表示的是这一段时间最小不能小于为0.6us,M0.6us表示的是这一段时间最大为0.6us对AT24C16的操作有读和写,读又分为CURRENT ADDRESS READ、RANDOM READ、SEQUENTIAL READ,写又分为BYTE WRITE、PAGE WRITE。WRITE...原创 2019-02-22 16:45:28 · 2065 阅读 · 0 评论 -
STM32命名规则
STM32型号的说明:以STM32F103RBT6这个型号的芯片为例,该型号的组成为7个部分,其命名规则如下: STM32 STM32代表ARM Cortex-M3内核的32位微控制器。 F F代表芯片子系列。 103 103代表增强型系列。 4*8 4*12 4*16 4*25 4*36 R R这一项代表...转载 2018-06-29 11:28:29 · 1301 阅读 · 0 评论 -
USART_ClearITPendingBith和 USART_ClearFlag的区别
起初stm32 v3.5 库函数里面,对于串口USART有这样两个函数: USART_ClearFlag()和USART_ClearITPendingBit()查库函数定义,说一个是清除标志,一个是清除中断预处理位。然后我看了stm32f10x_usart.c文件,发现两个函数都操作的是USART->SR寄存器,但是这个寄存器只有一组标志位,没有什么中断...原创 2018-07-02 09:00:38 · 22998 阅读 · 9 评论