自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 栈回溯调试HardFault错误

初学rtos,移植rt-thread时没跑起来,一跑起来就出现错误编译没问题,逻辑看着也没啥问题,想仿真排查问题,仿真也跑不起来。一时间不晓得程序在哪出错了,但是串口就是输出了错误。光有几个寄存器值也定位不到代码问题。

2025-04-04 18:58:32 357

原创 对于HAL库的HardFault异常调试总结

一般就是这几种错误。

2025-04-04 16:21:05 850

原创 一篇文章看懂STM32-实时时钟RTC&BKP备份寄存器(附上练习小项目详细注释)

Uniⅸ时间戳(UniⅸTimestamp)定义为从UTC/GMT的1970年1月1日0时0分0秒开始所经过的秒数,不考虑闰秒时间戳存储在一个秒计数器中,秒计数器为32位/64位的整型变量世界上所有时区的秒计数器相同,不同时区通过添加偏移来得到当地时间GMT(Greenwich Mean Time)格林尼治标准时间是一种以地球自转为基础的时间计量系统。它将地球自转一周的时间间隔等分为24小时,以此确定计时标准。

2025-01-29 16:16:44 1048

原创 一篇文章看懂STM32-SPI通信(附上练习小项目详细注释)

1)简介SPI (Serial Peripheral Interface)是由Motorola公司开发的一种通用数据总线四根通信线:SCK(Serial Clock)串行时钟线、MOSl(Master Output Slave Input)主机输出从机输入、MISO (Master Input Slave Output)主机输入从机输出、SS (Slave Select)从机选择SPI无应答机制设计同步,全双工支持总线挂载多设备(一主多从)不支持多主多从。

2025-01-25 11:43:22 1263

原创 一篇文章看懂STM32-I2C通信(附上练习小项目详细注释)

/生成起始条件//生成终止条件//配置CR1的ACK应答使能//发送数据到DR数据寄存器//接收数据--读取DR的数据//发送7位地址的专用函数/*I2C State Monitoring Functions 状态监控函数1) Basic state monitoring:基本状态监控这种方式就是同时判断一个或多个标志位来确定EVx状态是否发生 *//*2) Advanced state monitoring:高级状态监控。

2025-01-06 23:39:05 1043

原创 一篇文章看懂STM32-USART串口通信(附上练习小项目详细注释)

通信的目的:将一个设备的数据传送到另一个设备,扩展硬件系统通信协议:制定通信的规则,通信双方按照协议规则进行数据收发TX引脚输出定时翻转的高低电平,RX引脚定时读取引脚的高低电平,每个字节的数据加上起始位、停止位、可选的校验位,打包为数据帧,依次输出在TX引脚,另一端RX引脚依次接收,这样就完成了字节数据的传递USART (Universal Synchronous/Asynchronous Receiver/Transmitter)通用同步/异步收发器(UART同步收发器)

2025-01-05 23:38:56 1609

原创 一篇文章看懂STM32-DMA直接存储器存取(附上练习小项目详细注释)

DMA(Direct Memory Access)直接存储器存取DMA可以提供外设和存储器(硬件触发)或者存储器和存储器(软件触发)之间的高速数据传输,无须CPU干预,节省了CPU的资源12个独立可配置的通道:DMA1(7个通道),DMA2(5个通道)每个通道都支持软件触发和特定的硬件触发STM32F103C8T6DMA资源:DMA1(7个通道)

2025-01-04 22:58:54 511

原创 一篇文章看懂C语言中 &= 和 |= 的意思和应用

a &= b 就是将a与b做按位“与”运算,结果赋值给a,也就相当于。a |= b 就是将a,b 做按位”或“运算,结果给a,相当于。在嵌入式开发中,经常会操作寄存器,对寄存器进行配置。例如:(若看不懂请将16进制转为2进制再运算),将=号后面0的位清零,1的位保持不变。总结:&= 看0的位;两者结合一起用,先复位,后置位。,1的位置1,0的位保持不变。

2025-01-03 16:13:55 513

原创 一篇文章看懂STM32-ADC数模转换器(附上练习小项目详细注释)

ADC(Analog-Digital Converter)模拟-数字转换器ADC可以将引脚上连续变化的模拟电压转换为内存中存储的数字变量,建立模拟电路到数字电路的桥梁12位(0~2^12-1)逐次逼近型ADC,1us转换时间(对应1MHz,STM32 ADC的最快转换频率)输入电压范围:0-3.3V,转换结果范围:0-409518个输入通道,可测量16个外部(就是16个GPIO口)和2个内部信号源(内部温度传感器和内部参考电压)温度传感器。

2025-01-03 00:19:43 787

原创 三篇文章看懂STM32-TIM定时器(3)超详细介绍及练习源码

IC(Input Capture)输入捕获输入捕获模式下,当通道输入引脚出现指定电平跳变时,当前CNT的值将被锁存到CCR中,可用于测量PWM波形的频率、占空比、脉冲间隔、电平持续时间等参数每个高级定时器和通用定时器都拥有4个输入捕获通道可配置为PWMI模式,同时测量频率和占空比可配合主从触发模式,实现硬件全自动测量。

2025-01-01 23:42:29 650

原创 三篇文章看懂STM32-TIM定时器(2)超详细介绍及练习源码

输出比较输出比较可以通过比较CNT与CCR寄存器值的关系,来对输出电平进行置1、置0或翻转的操作,用于输出一定频率和占空比的PWM波形CNT --- 计数器CCR --- 捕获比较寄存器每个高级定时器和通用定时器都拥有4个输出比较通道高级定时器的前3个通道额外拥有死区生成和互补输出的功能脉冲宽度调制在具有惯性的系统中,可以通过对一系列脉冲的宽度进行调制,来等效地获得所需要的模拟参量,常应用于电机控速等领域/*** 函 数:PWM初始化* 参 数:无* 返 回 值:无*//*开启时钟*/

2025-01-01 00:17:19 1141

原创 三篇文章看懂STM32-TIM定时器(1)超详细介绍及练习源码

定时器可以对输入的时钟进行计数,并在计数值达到设定值时触发中断(定时触发中断)16位计数器、预分频器对计数器时钟进行分频,让计数更加灵活自动重装寄存器计数的目标值,计N个时钟后申请中断)的时基单元,在72MHz计数时钟下可以实现最大59.65s的定时不仅具备基本的定时中断功能,而且还包含内外时钟源选择、输入捕获、输出比较、编码器接口、主从触发模式等多种功能根据复杂度和应用场景分为了高级定时器、通用定时器、基本定时器三种类型主模式触发DAC。

2024-12-29 00:27:23 1625

原创 一篇文章看懂STM32-EXTI外部中断(全网最详细!附上练习小项目详细注释)

中断?在主程序运行过程中,出现了特定的中断触发条件(中断源),使得CPU暂停当前正在运行的程序,转而去处理中断程序处理完成后又返回原来被暂停的位置继续运行特定的中断触发条件:例如:①对于外部中断,引脚发生电平跳变;②对定时器来说,定时时间到了;③对串口通信来说,接收到了数据EXTI(Extern Interrupt)外部中断EXTI的基本功能。

2024-12-24 21:54:10 2418

原创 (全网最详细)一篇文章看懂STM32的GPIO外设!附上练习小项目超详细注释源码

LED发光二极管,正向通电点亮,反向通电不亮;通过LED内部可以看正负极,较小的一半是正极,较大的一半是负极;引脚长脚是正极,短脚是负极有源蜂鸣器内部自带振荡源,将正负极接上直流电压即可持续发声,频率固定无源蜂鸣器内部不带振荡源,需要控制器提供振荡脉冲才可发声调整提供振荡脉冲的频率,可发出不同频率的声音外设的硬件电路GPIO在推挽输出模式下,高低电平均有较强的驱动能力但在单片机里,LED电路一般采用第一种低电平驱动电路,因为使用了高电平弱驱动,低电平强驱动的规则。

2024-12-23 23:25:26 756

原创 Qt:信号与槽的四种代码实现方式

提出疑问,界面上已经有按键了,怎么操作才能让用户按下按键后有操作上的反应呢?在 Qt 中,信号和槽机制是一种非常强大的事件通信机制。这是一个重要的概念,特别是对于初学者来说,理解它对于编写 Qt 程序至关重要。

2024-12-09 00:03:24 504 1

空空如也

空空如也

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

TA关注的人

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