
Hi 小伙伴们,第六期ST问答小课堂来了,大家平时在开发过程中难免会出现一些小问题,那么今天我将问题汇总出来,大家一起来避坑,大家可根据问题描述来做简要回答。 ![]() 题目如下: 1. 工程可以正常运行,部分模块运行不正常,比如串口。 2. STM32F4执行擦除flash操作是,debug时直接退出debug模式 问题描述:执行flash读写操作的时候,写入flash数据需要先擦除flash,当时为检查读写是否正确,打开memory窗口观察flash数据,后擦除flash一直失败,执行到FLASH->CR |= FLASH_CR_STRT时,程序跳出debug模式。尝试注释掉FLASH->CR |= FLASH_CR_STRT时,程序正常,但不能正常实现功能,FLASH->CR |= FLASH_CR_STRT为擦除flash操作。 3.STM32f413下载程序失败 问题描述:新画的板子,刚到手下载程序运行,第一次下载成功,成功后程序运行不正常。继续下载debug,发现下载失败,flash擦除失败,更换第二块板子,情况相同。 4.SDIO读写sd卡与flash写入冲突问题 问题描述:SD卡可以正常操作,可以使用DMA读或者写入。同时单独写入flash也是可以正常工作,俩个结合在一起的时候,SD卡仍然可以正常操作,此时flash读取正常,flash写入错误。 ![]() ![]() 还可以参与: 1、视频学习:点击 2、板卡申请:点击(名单已公布) 3、前期回顾>>![]() 小编寄语:请大家将每道题的答案简要描述回复在评论中,从参与者中抽取3位送出100ST金币。从答对者中挑选2位送出奖励。 |
WS2812B怎么显示任意字符 / 图案?
STM32H743VGT6无法串口烧录 请教原因 请进来看下
账号问题
买了别人的开发板,照着教程学了。积累了很多东西,怎么还是觉得空虚呀?
2024 STM32全国巡回研讨会成都站 分享
STM32H723VGT6的唯一DFSDM的时钟可以同时输出给2个sigma-delta吗?
myst账号无法注册,邮箱确认链接点进后显示The validation link you have provided has expired or been
求助:VL53L0在使用一段时间后无法读取数据,已经有好几个模块了,返回的错误代码有-6,-7和-20,这个到底是怎么回事
MotorControl Workbench 5.4.8
添加头文件路径添加不了
问题2:擦除flash时不能读写其他flash
问题3:使用低频率的外部晶振试试
问题4:flash被dma中断
运行的程序不涉及故障模块,或接触不良。
2. STM32F4执行擦除flash操作是,debug时直接退出debug模式
问题描述:执行flash读写操作的时候,写入flash数据需要先擦除flash,当时为检查读写是否正确,打开memory窗口观察flash数据,后擦除flash一直失败,执行到FLASH->CR |= FLASH_CR_STRT时,程序跳出debug模式。尝试注释掉FLASH->CR |= FLASH_CR_STRT时,程序正常,但不能正常实现功能,FLASH->CR |= FLASH_CR_STRT为擦除flash操作。
flash故障,如颗粒故障或参数设置出错。
3.STM32f413下载程序失败
问题描述:新画的板子,刚到手下载程序运行,第一次下载成功,成功后程序运行不正常。继续下载debug,发现下载失败,flash擦除失败,更换第二块板子,情况相同。
内存未清除
4.SDIO读写sd卡与flash写入冲突问题
问题描述:SD卡可以正常操作,可以使用DMA读或者写入。同时单独写入flash也是可以正常工作,俩个结合在一起的时候,SD卡仍然可以正常操作,此时flash读取正常,flash写入错误。
通道冲突,无法并行。
2.不知道download怎么样,检查一下flash的地址配置,就是软件环境配置那块。
3.检查一下SWD引脚,是不是被用掉了。还有就是复位电路是否正确。板子的问题。
4.检查下外设的地址,是不是重复了。还有就是引脚定义再检查一遍。
问题2:现在一般用hal库了,flash操作都是参考官方库,没遇到大问题;就一般出现擦除要么是flash未解锁,flash状态位未清零、地址要为4的倍数,F4的flash和F1不同不是等大小而是分块(这点不知道为什么,L4就和F1一样)。
问题3:这个情况初学时候遇到过,配置Debug没选。下完一次程序就再下不进去,这时候要改boot模式才能把程序下进去,。
问题4:sd卡项目没怎么用,没遇到过类似问题。看描述flash写操作不行,flash写操作时间比较长,有可能写flash的优先级低了被打断。
运行的程序不涉及故障模块,或接触不良。
2. STM32F4执行擦除flash操作是,debug时直接退出debug模式
问题描述:执行flash读写操作的时候,写入flash数据需要先擦除flash,当时为检查读写是否正确,打开memory窗口观察flash数据,后擦除flash一直失败,执行到FLASH->CR |= FLASH_CR_STRT时,程序跳出debug模式。尝试注释掉FLASH->CR |= FLASH_CR_STRT时,程序正常,但不能正常实现功能,FLASH->CR |= FLASH_CR_STRT为擦除flash操作。
flash故障,如颗粒故障或参数设置出错。
3.STM32f413下载程序失败
问题描述:新画的板子,刚到手下载程序运行,第一次下载成功,成功后程序运行不正常。继续下载debug,发现下载失败,flash擦除失败,更换第二块板子,情况相同。
内存未清除
4.SDIO读写sd卡与flash写入冲突问题
问题描述:SD卡可以正常操作,可以使用DMA读或者写入。同时单独写入flash也是可以正常工作,俩个结合在一起的时候,SD卡仍然可以正常操作,此时flash读取正常,flash写入错误。
通道冲突,无法并行。
2.擦除的过程不能同时读写。
3.第一次可以下载成功,可能是因为片子是空的,没有任何代码,第二次下载 擦除flash失败,考虑时钟倍频是否对,如果此步没有问题,检查Boolader ,如果不对的话再次下载可能导致芯片锁死,尝试解锁更改bootlader。
4. SD卡和flash对时序的要求比较严格,建议对写flash时加点延时尝试下。
2.有可能相关flash是被保护的,建议试一下擦写最后几个未使用的扇区
3.程序问题,里面异常配置了时钟或者复用了SWD功能,建议改变boot脚后试试下载。
4.建议确认读写是否有冲突,是否存在未写完就开始读的现象
首先看正常运行的环境是什么?是在模拟中可以正常运行?还是说已经下载在板子中运行时无错误提醒?建议检查各个模块的电性连接,检测引脚。检查程序的相关反馈是否正常。复核数据反馈阈值是否正确。
2. STM32F4执行擦除flash操作是,debug时直接退出debug模式
问题描述:执行flash读写操作的时候,写入flash数据需要先擦除flash,当时为检查读写是否正确,打开memory窗口观察flash数据,后擦除flash一直失败,执行到FLASH->CR |= FLASH_CR_STRT时,程序跳出debug模式。尝试注释掉FLASH->CR |= FLASH_CR_STRT时,程序正常,但不能正常实现功能,FLASH->CR |= FLASH_CR_STRT为擦除flash操作。
检查程序是否重复调用数据。检查数据接口是否正确。检查程序加载是否完整。
总之就是【先软后硬】
3.STM32f413下载程序失败
问题描述:新画的板子,刚到手下载程序运行,第一次下载成功,成功后程序运行不正常。继续下载debug,发现下载失败,flash擦除失败,更换第二块板子,情况相同。
可能烧毁。做硬件检查
4.SDIO读写sd卡与flash写入冲突问题
问题描述:SD卡可以正常操作,可以使用DMA读或者写入。同时单独写入flash也是可以正常工作,俩个结合在一起的时候,SD卡仍然可以正常操作,此时flash读取正常,flash写入错误。
通道冲突。