STM32CubeMX v6.9.0 BUG:FLASH_LATENCY设置错误导致初始化失败

这篇具有很好参考价值的文章主要介绍了STM32CubeMX v6.9.0 BUG:FLASH_LATENCY设置错误导致初始化失败。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

背景

今天在调试外设功能时,发现设置了使用外部时钟之后程序运行异常,进行追踪调试并与先前可以正常运行的项目进行对比之后发现这个问题可能是由于新版本的STM32CubeMX配置生成代码时的BUG引起的。

测试环境

MCU: STM32H750VBT6
STM32CubeIDE: Version: 1.13.0 Build: 17399_20230707_0829 (UTC)
STM32CubeMX: v6.9.0
FW: STM32Cube FW_H7 V1.11.0
RCC:
STM32CubeMX v6.9.0 BUG:FLASH_LATENCY设置错误导致初始化失败,RTOS与单片机相关,stm32,bug,嵌入式硬件,stm32cube,时钟

问题现象

程序无法正确运行进入主循环,调试程序发现程序在执行 SystemClock_Config(); 时卡死;进一步调试发现程序在下面代码中卡死:

  if (HAL_RCC_ClockConfig(&RCC_ClkInitStruct, FLASH_LATENCY_0) != HAL_OK)
  {
    Error_Handler();
  }

更进一步追踪发现程序卡死在 __HAL_FLASH_GET_LATENCY 相关操作比对结果时。

问题解决

通过上面调试发现问题出在 FLASH LATENCY 相关操作中,对比先前版本的程序,同样配置下 HAL_RCC_ClockConfig 函数中后一个参数为 FLASH_LATENCY_2 ,所以这里修改即可。实测也是修改侯便可以正常使用了。

FLASH LATENCY 参数设置可以参考芯片参考手册:
STM32CubeMX v6.9.0 BUG:FLASH_LATENCY设置错误导致初始化失败,RTOS与单片机相关,stm32,bug,嵌入式硬件,stm32cube,时钟
通常来说设置大点程序运行上会更加可靠,只是效率上变差。文章来源地址https://www.toymoban.com/news/detail-606206.html

到了这里,关于STM32CubeMX v6.9.0 BUG:FLASH_LATENCY设置错误导致初始化失败的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • STM32CubeMX学习笔记(48)——USB接口使用(MSC基于外部Flash模拟U盘)

    USB(Universal Serial BUS)通用串行总线 ,是一个外部总线标准,用于规范电脑与外部设备的连接和通讯。是应用在 PC 领域的接口技术。USB 接口支持设备的即插即用和热插拔功能。USB 是在 1994 年底由英特尔、康柏、IBM、Microsoft 等多家公司联合提出的。 USB 发展到现在已经有 US

    2024年01月16日
    浏览(32)
  • STM32的Cubemx的时钟设置

     配置定时器3  使用内部时钟源     其中频率(f) 时间(F) 预分频(Prescaler) 计数周期(Counter Period)f=timer_clock/(Prescaler+1)/(Counter_Period+1)//timer在计算的时候会自动将值+1 计算如下 Prescler=48-1 Counter_Period=10000-1 f=48Mhz/(48-1+1)/(10000-1+1)=100HZ    T=1/100=10ms

    2024年01月21日
    浏览(23)
  • STM32 Flash读保护设置和解除方法,保护代码不被读出。

    说明: 本文记录 关于 STM32 的 Flash 读保护的设置和解除方法,可以简单的保护 Flash 中的代码不被读出,这个方法能防止通过调试工具读出MCU内部程序,但不清楚专业搞破解的是否有手段读出设置了读保护的程序,为了代码更安全还是建议根据 MCU ID 增加软件加密,或者使用其

    2024年01月25日
    浏览(24)
  • STM32 CubeMX 无法将 STM32H7 的最大 CPU 频率设置为 480 MHz

    使用stm32cubemx设置时钟树为480MHz时,提示 cpu clock frequency must be =200MHZ 对于STM32H7 需要CPU修订版 为 V 才能达到 480 MHz 的最大频率。 使用STM32Programmer查看芯片修订版,确认是V版本: 在STM32CubeMX PinConfiguration 界面修改RCC选项,将Product Version设置为V: 此时时钟树界面已可以设置48

    2024年02月16日
    浏览(34)
  • 为什么STM32设置Flash地址0x08000000而不是0x00000000?STM32的启动过程

    在MDK编译程序设置ROM和RAM地址时候发现: IROM1为片上程序存储器,即片上集成的Flash存储器,对该处理器Flash大小为512KB,即0x80000 地址区间为0x8000000~0x0807FFFF IRAM1为片上数据存储器,即片上集成的SRAM存储器,对该处理器RAM大小为64KB,即0x10000 地址区间为0x20000000~0x20010000 这里问

    2024年01月16日
    浏览(37)
  • stm32cubeMX库文件安装路径自定义设置-释放我的C盘空间(路径无法修改的文中有解决方法)

    最近C盘空间容量不足了,于是研究如何将部分文件移除C盘。 stm32cubeMX的固件包在win10和win7 系统下的默认存储路径为:“ C:Users用户名STM32CubeRepository ”。 由于,有些STM32Cube_FW固件包占用空间即很大,不可忽视。比如“stm32cube_fw_f7_v190.zip”占用573M,解压开的文件夹占用了

    2024年02月16日
    浏览(42)
  • ModStartCMS v6.9.0 后台多标签改进,主题色自动切换修复

    ModStart 是一个基于 Laravel 模块化极速开发框架。模块市场拥有丰富的功能应用,支持后台一键快速安装,让开发者能快的实现业务功能开发。 系统完全开源,基于 Apache 2.0 开源协议,免费且不限制商业使用。 丰富的模块市场,后台一键快速安装 会员模块通用且完整,支持完

    2024年02月15日
    浏览(25)
  • YRCloudFile V6.9.0 加速企业在大数据应用技术创新

    近日,焱融科技发布分布式文件存储产品 YRCloudFile 6.9.0 版本。该版本在功能和性能方面有多项技术性突破,主要包括大数据应用无缝对接 Hadoop ,为大数据应用提供高性能存储平台;独有的 Dataload 功能和智能分层细粒度化,更加精确丝滑地响应业务需求;同时实现 NFS/SMB 协议

    2024年01月18日
    浏览(28)
  • 【STM32】STM32学习笔记-FLASH闪存(48)

    STM32F1系列的FLASH包含程序存储器、系统存储器和选项字节三个部分,通过闪存存储器接口(外设)可以对程序存储器和选项字节进行擦除和编程 读写FLASH的用途: 利用程序存储器的剩余空间来保存掉电不丢失的用户数据 通过在程序中编程(IAP),实现程序的自我更新 在线编

    2024年03月16日
    浏览(33)
  • 【11】STM32·HAL库开发-STM32CubeMX简介、安装 | 新建STM32CubeMX工程步骤

      STM32CubeMX是ST开发的一款图形配置工具,可通过配置自动生成 初始化代码 (并不包括逻辑代码)。以下是STM32CubeMX官方宣传图片,适用于Windows和macOS系统,用于生成初始化代码,一个图形配置工具,搭配不同系列的STM32Cube固件包,即可支持不同系列的STM32芯片,初始化代码

    2024年02月17日
    浏览(46)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包