首先,参考该博主的文章(感谢博主的刨根问底),了解卡死的原理:https://blog.csdn.net/qq153471503/article/details/114700884在了解原理后,发现在IAP跳转后,APP卡死是因为不能再次对PLL进行初始化操作,所以导致了卡死现象。经过思考,HAL库所有模块的Init,都会有对应的DeInit,所以在IAP跳转之前,对RCC进行DeInit操作,该问题解决,欢迎批评指正!代码如下:voidJumpToApplication(void){ /*Testifusercodeisprogrammedstartingfromaddress"APPLIC
目录一、PLL主时钟初始化1.1时钟使能 1.2配置好主时钟配置结构体1.3将配置好的值写入到对应的寄存器、初始化PLL主时钟;1.3.1__HAL_RCC_HSE_CONFIG(RCC_OscInitStruct->HSEState)分析: 1.3.2给PLL相关寄存器赋值:二、外设时钟初始化2.1等待周期的验证和写入;2.2HCLK配置2.3SYSCLK配置、时钟源选择2.3.1 PLL时钟就绪检测和__HAL_RCC_GET_FLAG(RCC_FLAG_PLLRDY)宏定义的分析2.3.2系统时钟源选择2.4PCLK1和PCLK2配置2.5更新hal库参数三、总结本人使用的单片机stm3
工程文件下载链接,无需积分即可下载RTC部分直接在上部分代码里面增加1.配置STM32CubeMX工程文件(1).使能RTC时钟(2),采用外部时钟,配置一秒产生一次中断(3).时间的话随便设置一个就行 (4).生成keil工程文件2.配置keil工程文件(1).添加.c .h文件,过程省略(2).转移资源.c .h文件里面的内容 (3).去路径 #include"main.h" ——》#include"stm32g4xx_hal.h" ——》#include"stm32g4xx_hal_conf.h"打开RTC使能3.在main.c编写功能函数(1).RTC初始化(2).定义日期、时间结构
工程文件下载链接,无需积分即可下载RTC部分直接在上部分代码里面增加1.配置STM32CubeMX工程文件(1).使能RTC时钟(2),采用外部时钟,配置一秒产生一次中断(3).时间的话随便设置一个就行 (4).生成keil工程文件2.配置keil工程文件(1).添加.c .h文件,过程省略(2).转移资源.c .h文件里面的内容 (3).去路径 #include"main.h" ——》#include"stm32g4xx_hal.h" ——》#include"stm32g4xx_hal_conf.h"打开RTC使能3.在main.c编写功能函数(1).RTC初始化(2).定义日期、时间结构
使能单片机中的使能通常指的是控制某个器件或模块的开关信号。例如,单片机中的GPIO口可以用来控制LED灯的亮灭,其中需要用到一个使能信号,即一个控制LED灯开关的信号。在程序中,通过设置GPIO口的状态(高电平或低电平)来控制LED灯的亮灭,从而实现使能的功能。除了LED灯,单片机中的其他器件或模块,如LCD显示屏、声音模块等,也需要通过使能信号来控制其开关状态RCCSTM32单片机的RCC(Reset and Clock Control)时钟模块主要负责系统时钟的控制和管理,包括以下作用: 1. 确定CPU的工作频率:RCC模块可以设置CPU的时钟频率,从而控制单片机的工作速度。 2. 控制
文章目录前言一、基础知识(1)RCC--复位和时钟控制器(2)HSE--高速外部时钟信号(3)LSE--低速外部时钟信号(4)HSI--高速内部时钟信号(5)LSI--高速内部时钟信号(6)RTC--实时时钟(7)PLL--锁相环(8)PLLCLK--PLL时钟(9)SYSCLK--系统时钟(10)AHB--高级高性能总线(11)APB(12)STM32的多个时钟源(13)外部晶振与内部晶振的区别二、时钟树详解系统时钟库函数总结前言本文主要探讨STM32中比较重要的一个基础知识,RCC系统时钟,系统时钟也就是CPU的脉搏,决定CPU的速率,被誉为芯片的心跳,之后再文章中将会结合《STM32F1
006-STM32学习笔记-RCC时钟树本节内容一定要结合RCC时钟树和官方手册学习,如果看不明白的话,建议看一下野火官方的教程,火哥讲这节讲的很详细,看一遍基本就能理解了。上节内容中分析了启动代码,在启动代码中看到开发板上电后,会先执行Reset_Handler复位程序,里面会调用SystemInit程序;ResethandlerReset_HandlerPROCEXPORTReset_Handler[WEAK]IMPORTSystemInitIMPORT__mainLDRR0,=SystemInit ;此处调用了SystemInit,此函数的实现实在system_stm32f4xx.
请注意:虽然赏金不再可用,但我仍然希望任何对此问题有答案的人提供贡献;我还在看,等着看有没有更好的答案。谢谢,请继续阅读...我正在寻找一种方法来转换任意一组RCC类似空间关系(或类似的),将约束网络描述为类似维恩图的图像。比如RCC8中表示的约束网络:W{EC}Y,X{TPP}Y,Z{NTPP}Y,Z{PO}X...可以用下图表示,带有圆形或方形区域:..或者:是否有人知道至少可以通过类似RCC的约束规范以编程方式(通过API)生成此类图表的软件?我知道这样的约束网络可能未指定,从而排除了与任何单个此类图表的匹配(可能存在许多解决方案)。理想情况下,我想通过能够生成可能的替代方案来解
请注意:虽然赏金不再可用,但我仍然希望任何对此问题有答案的人提供贡献;我还在看,等着看有没有更好的答案。谢谢,请继续阅读...我正在寻找一种方法来转换任意一组RCC类似空间关系(或类似的),将约束网络描述为类似维恩图的图像。比如RCC8中表示的约束网络:W{EC}Y,X{TPP}Y,Z{NTPP}Y,Z{PO}X...可以用下图表示,带有圆形或方形区域:..或者:是否有人知道至少可以通过类似RCC的约束规范以编程方式(通过API)生成此类图表的软件?我知道这样的约束网络可能未指定,从而排除了与任何单个此类图表的匹配(可能存在许多解决方案)。理想情况下,我想通过能够生成可能的替代方案来解
1、STM32F407时钟树2、系统时钟相关的结构HSE高速外部时钟信号锁相环PLL锁相环的主要作用就是对时钟进行倍频,然后把时钟输出到各个功能部件。PLL有两个,一个主PLL,另一个是专用的PLLI2S,他们均有HSE或者HSI提供时钟输入信号。系统时钟SysCLK系统时钟的来源可以时HSI/PLLCLK/HSE.AHB总线时钟HCLK系统时钟SYSCLK经过AHB预分频器分频之后得到的时钟就是AHB总线时钟,即HCLK。分频因子可以是1/2/4/8/16/64/128/256/512。APB2总线时钟PCLK2PCLK2是高速的总线时钟,SYM32F407最高84MHz.片上高速的外设就是