硬汉嵌入式论坛

 找回密码
 立即注册
查看: 3978|回复: 9
收起左侧

[BOOT/IAP] 关于sdram在boot中初始化的问题

[复制链接]

4

主题

27

回帖

39

积分

新手上路

积分
39
发表于 2020-11-8 15:30:53 | 显示全部楼层 |阅读模式
在boot中初始化并对sdram做了读写测试是ok的,跳转进入app再访问sdram的映射地址(0xc0000000),进入硬件错误.SCB->VTOR已经做了修改,进入跳转前的代码如下:

  1. static void GoToApp(void)
  2. {
  3.     __set_PRIMASK(1);
  4.     //__set_FAULTMASK(1);

  5.     SysTick->CTRL = 0;
  6.     SysTick->LOAD = 0;
  7.     SysTick->VAL = 0;

  8.     HAL_RCC_DeInit();

  9.     for (int i = 0; i < 8; i++)
  10.     {
  11.         NVIC->ICER[i] = 0xFFFFFFFF;
  12.         NVIC->ICPR[i] = 0xFFFFFFFF;
  13.     }

  14.     __set_PRIMASK(0);
  15.     //__set_FAULTMASK(0);

  16.     app = (appFun)(*(volatile uint32_t *)(APPLICATION_ADDRESS + 4));
  17.     __set_MSP(*(volatile uint32_t *)APPLICATION_ADDRESS);
  18.     __set_CONTROL(0);
  19.     //SCB->VTOR = APPLICATION_ADDRESS;
  20.     app();
  21. }
复制代码



回复

使用道具 举报

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
107049
QQ
发表于 2020-11-8 15:33:53 | 显示全部楼层
早期F429做过一个,仅供参考。

STM32F429的程序加载到SDRAM的运行方法
http://www.armbbs.cn/forum.php?m ... 9299&fromuid=58
(出处: 硬汉嵌入式论坛)
回复

使用道具 举报

17

主题

101

回帖

152

积分

初级会员

积分
152
发表于 2020-11-8 17:16:53 | 显示全部楼层
eric2013 发表于 2020-11-8 15:33
早期F429做过一个,仅供参考。

STM32F429的程序加载到SDRAM的运行方法

他这个不是把程序放sdram,只是把app的sdram初始化放boot而已,就出问题了
回复

使用道具 举报

4

主题

27

回帖

39

积分

新手上路

积分
39
 楼主| 发表于 2020-11-8 18:23:14 | 显示全部楼层
初晴sama 发表于 2020-11-8 17:16
他这个不是把程序放sdram,只是把app的sdram初始化放boot而已,就出问题了

是的!在boot中访问sdram是可以的.
回复

使用道具 举报

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
107049
QQ
发表于 2020-11-8 18:51:08 | 显示全部楼层
lizimu 发表于 2020-11-8 18:23
是的!在boot中访问sdram是可以的.

那这个更简单了,参考我F429的解决下即可。
回复

使用道具 举报

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
107049
QQ
发表于 2020-11-8 18:53:47 | 显示全部楼层
lizimu 发表于 2020-11-8 18:23
是的!在boot中访问sdram是可以的.

对了,想起来了,明天发布的后两个例子有用,为了验证是否正常,用的LCD全字库例子,用到SDRAM.LTDC等

回复

使用道具 举报

17

主题

101

回帖

152

积分

初级会员

积分
152
发表于 2020-11-8 19:00:34 | 显示全部楼层
eric2013 发表于 2020-11-8 18:53
对了,想起来了,明天发布的后两个例子有用,为了验证是否正常,用的LCD全字库例子,用到SDRAM.LTDC等

...

等着呢
回复

使用道具 举报

4

主题

27

回帖

39

积分

新手上路

积分
39
 楼主| 发表于 2020-11-8 19:12:36 | 显示全部楼层
eric2013 发表于 2020-11-8 18:53
对了,想起来了,明天发布的后两个例子有用,为了验证是否正常,用的LCD全字库例子,用到SDRAM.LTDC等

...

先放一放,等看了你的新增章节,有灵感了(能不能嫖)再继续.
回复

使用道具 举报

5

主题

7

回帖

22

积分

新手上路

积分
22
发表于 2022-5-26 20:19:55 | 显示全部楼层
我也遇到这个问题了,楼主你是在哪个位置报错?我从bootloader跳转app后,挂在了sdram的初始化里。同样的sdram模组,单独运行时没问题,就是跳转之后初始化过不了。
回复

使用道具 举报

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
107049
QQ
发表于 2022-5-27 01:04:21 | 显示全部楼层
wsyghlf 发表于 2022-5-26 20:19
我也遇到这个问题了,楼主你是在哪个位置报错?我从bootloader跳转app后,挂在了sdram的初始化里。同样的sd ...

这个是BOOT + app,  app里面带lsdram的。

https://www.armbbs.cn/forum.php?mod=viewthread&tid=86980

image.png
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|小黑屋|Archiver|手机版|硬汉嵌入式论坛

GMT+8, 2024-5-15 22:06 , Processed in 0.247455 second(s), 28 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2023, Tencent Cloud.

快速回复 返回顶部 返回列表