打印

STM32F407探索者如何将外部SRAM作为运行内存

[复制链接]
801|0
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
电员师|  楼主 | 2018-7-6 08:16 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
这几天再网上一直再找关于407的外部SRAM内存设置的相关**,这里和大家分享一下。本人亲测能够正常使用。欢迎各位大牛指导说明:首先要明白一点,开发板硬件上电复位前,我们是无法完成STM32对外部SRAM的配置,只能上电后进行配置了
才可以使用。也就是说,只有正常的硬件复位序列完成后,我们可以在Reset_Handler(复位中断服务程序)中完成对
SRAM的配置,但是在这之前,局部变量和函数调用用到的Stack栈空间,我们都得使用STM32内部SRAM,明白了这
点,开始说下配置(堆栈的初始化是由函数_ _main完成的,这个函数被MDK封装起来了,最终跳转到用户main函数)。
======================================================================
第一步:修改启动代码,固定的分配0x400字节做为栈使用。特别注意,修改栈顶指针固定在0x2000_0400位置。
不要让编译器去自动配置。





第二步:在函数SystemInit_ExtMemCtl中初始化外部SRAM。



第三步:配置外部SRAM的起始地址和大小:




第四步:添加全局的宏定义

使用特权

评论回复

相关帖子

发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

471

主题

480

帖子

0

粉丝