stm32程序跑飞的原因

编程入门 行业动态 更新时间:2024-10-24 12:31:21

stm32程序跑飞的<a href=https://www.elefans.com/category/jswz/34/1770890.html style=原因"/>

stm32程序跑飞的原因



从开始移植ecos到stm32开发板以来,“程序运行过程中时不时跑飞或死掉,或者一加载就死掉”的问题一直令我头痛和百思不得其“姐”。如下图:程序一加载就死掉了。

程序运行过程中跑飞的现象类似,也是出现这种类似信息:$T050f:00800068;0d:e80f0d68;#98$T050f……

今天在编写按键程序时,频繁出现,是时把它解决了。功夫不负有心人,终于定位问题为外扩的SRAM时序不正确导致的,重新配置下SRAM的FSMC时序就解决了。

问题定位

首先,排除是否自己编写的程序有问题。经过反复试验,保证了自己编写的程序无问题,确定了不是自己编写的程序有问题。

在.html一文中,曾经说到,直接下载bin格式程序到内存时,下载到内存中的数据居然有问题。redboot中使用xmodem协议的load命令应当是没有问题的,因为这是官方的代码,经过无数人的验证,如果有问题,早就暴露出来并修正了。所以,我开始怀疑是不是sram有问题了。

sram时序配置

既然怀疑SRAM有问题,所以找了个开发板光盘中有使用外扩SRAM的例程,把例程中SRAM的配置与ecos中SRAM配置进行了对比。先看下开发板例程中SRAM的配置代码(Ex021—I2S录音和回放例程(WM8978),bsp_sram.c文件):

void SRAM_Init(void)

{

FSMC_NORSRAMInitTypeDef FSMC

更多推荐

stm32程序跑飞的原因

本文发布于:2024-02-08 22:00:53,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1675550.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:原因   程序

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!