推荐阅读最新更新时间:2024-03-16 15:11
stm32基础知识汇总有哪些是你不知道的呢
STM32是一种功能比较强大的32位单片机,广泛应用于各种嵌入式设备中,由于它的普及性及丰富的资源,受到广大嵌入式开发者的喜欢,但要想学好用好STM32也并非易事,毕竟,相比8位、16位产品,STM32要复杂得多。 STM32的时钟 其中,高速时钟(HSE和HSI)提供给芯片主体的主时钟.低速时钟(LSE和LSI)只是提供给芯片中的RTC(实时时钟)及独立看门狗使用,图中可以看出高速时钟也可以提供给RTC。内部时钟是在芯片内部RC振荡器产生的,起振较快,所以时钟在芯片刚上电的时候,默认使用内部高速时钟。而外部时钟信号是由外部的晶振输入的,在精度和稳定性上都有很大优势,所以上电之后我们再通过软件配置,转而采用外部
[单片机]
STM32的Flash读写保护,SWD引脚锁的各种解决办法汇总
问题现象: MDK,J-Flash,IAR等无法连接芯片,有时候链接上了,但是无法下载。 注意:如果下载器线的接触不良,也会有这个问题。 问题描述: 1、Flash读写保护 根本原因是工程设计有问题,特别是实际晶振大小与程序中HSE_VALUE大小不一致,很容易导致Flash读保护。 而读保护的本质是芯片的选项字节被设置了,因为读保护就在选项字节里面,详情看此贴:链接 2、SWD锁 SWD接口锁住就是SWD引脚被锁住了,根本原因是用户使用这个引脚做其它功能了。 解决办法: 1、SWD引脚锁解决办法: (1)、SWD引脚被锁住的解决办法比较简单,只要下载器带了复位引脚,并且板子的SWD接口也留出了RST复位引脚,就可以
[单片机]
基于STM32设计的拼图小游戏详解
一、环境介绍 MCU:STM32F103ZET6 编程软件环境:keil5 LCD显示屏:正点原子的TFT 3.5寸显示屏 二、运行效果 三、功能介绍 因为代码原来是在2.8寸屏上设计的,但是2.8寸屏摔碎了,现在手上只有块3.5寸的LCD屏。就把代码移植到3.5寸屏上显示了,目前运行的效果可以看上面的效果图。 拼图游戏在小时候还是经常玩,玩法也比较简单,这里就使用STM32设计一个拼图小游戏分享出来一起学习。 目前游戏是通过开发板上4按键进行控制图片的移动,完成最终的拼图效果,如果想要在上面扩充其他游戏功能都还是比较容易。 当然,设计编写这个款小游戏不仅仅是为了玩游戏这么简单,主要是为了通过设计游戏
[单片机]
调试STM32遇到Hardfault知识总结
在NVIC中有一个硬fault状态寄存器(HFSR),它指出产生硬fault的原因。如果不是由于取向量造成的,则硬fault服务例程必须检查其它的fault状态寄存器,以最终决定是谁上访的。 1、寄存器描述 首先查看硬故障寄存器,判别原因。 硬故障状态寄存器 硬fault状态寄存器(地址:0xE000_ED2C) 位段 名称 描述 31 DEBUGEVT 硬fault因调试事件而产生 30 FORCED 硬fault是总线fault,存储器管理fault或是用法fault上访的结果 29:2 1 VECTBL 硬fault是在取向时发生的 0 121页手册 各个fault
[单片机]
CRC校验、STM32中CRC计算单元、CRC应用
从这一段时间后台反馈的问题可以看得出来,好些朋友对CRC没有什么概念,今天就在这里讲述一下关于CRC校验、STM32中CRC计算单元相关内容。 1关于CRC校验 CRC:Cyclic Redundancy Check,即循环冗余校验码。 CRC是数据通信领域中最常用的一种查错校验码,其特征是信息字段和校验字段的长度可以任意选定。 循环冗余检查(CRC)是一种数据传输检错功能,对数据进行多项式计算,并将得到的结果附在帧的后面,接收设备也执行类似的算法,以保证数据传输的正确性和完整性。 ---来自百度百科 学电子、计算机相关专业的同学都应该学习过CRC的基础原理。其原理说难不难,可以说就是一个公式。同时,
[单片机]
SPI协议内容及STM32 SPI的操作
SPI总线协议简介及内容 简介 SPI,是英语Serial Peripheral Interface的缩写,顾名思义就是串行外围设备接口。SPI,是一种高速的,全/半双工,同步的通信总线,并且在芯片的管脚上只占用三/四根线,节约了芯片的管脚,同时为PCB的布局上节省空间,提供方便,正是出于这种简单易用的特性,现在越来越多的芯片集成了这种通信协议。 SPI特征 3根/4根线全双工同步传输 8或16位传输帧格式选择 主从操作模式 支持多主操作模式 从模式频率(最大为fpclk/2) 可编程的时钟极性和相位 可编程的数据顺序,MSB在前或LSB在前 可触发中断的专用发送和标志 SPI总线忙状态标志 支持可靠通信的C
[单片机]
STM32 关于复位类型的判断及软件复位
要想查看复位情况可以使用: //****************************************************************************** // 函数名称: RCC_GetFlagStatus // 功能描述: 检查指定的RCC标志设置与否. // 输入参数: RCC_FLAG:要检查的标志. // 这个参数可以是下面的值之一: // - RCC_FLAG_HSIRDY: HIS振荡时钟就绪 // - RCC_FLAG_HSERDY: HSE振荡时钟就绪 // - RCC_FLAG_PLLRDY:
[单片机]
stm32单片机待机模式的设计
一 待机模式简介 在stm32的低功耗模式中,待机模式可以实现系统的最低功耗,在这种模式下,只需要2uA左右的电流。 三 待机唤醒程序分析 实验现象: 将程序下载到开发板上后,LED灯会不断地亮灭,当按下KEY2键超过3s时,LED灯灭,标志着单片机进入待机模式,再按下KEY1键,这时唤醒单片机,LED又开始不断地亮灭亮灭。 程序中用到的一些宏定义 #definemacEXTI_GPIO_CLK(RCC_APB2Periph_GPIOC|RCC_APB2Periph_AFIO) #definemacEXTI_GPIO_PORTGPIOC #definemacEXTI_GPIO_PINGPIO_Pin_13 #definem
[单片机]