[STM32F4] startup_stm32f40_41xxx.s文件中支持外部SRAM,在哪里体现?

[复制链接]
 楼主| nongfuxu 发表于 2020-12-29 08:16 | 显示全部楼层 |阅读模式
请教:
1、正点原子官方给出的启动文件,是带支持外部SRAM的,还是不是。
2、支持外部SRAM,与不支持外部SRAM,在startup_stm32f40_41xxx.s文件中,在哪里有区别?

    谢谢!
香水城 发表于 2020-12-29 11:40 | 显示全部楼层
本帖最后由 香水城 于 2021-3-30 21:59 编辑

第一个问题,估计要结合你买的开发板。

第二个问题,如果要使用外边RAM,启动过程一般须先行对外边RAM做初始化。如果是ST官方固件库,一般结合宏开关 DATA_IN_ExtSRAM在
void SystemInit(void)里决定是否调用相应初始化函数SystemInit_ExtMemCtl(void) 。
 楼主| nongfuxu 发表于 2020-12-29 20:08 | 显示全部楼层
香水城 发表于 2020-12-29 11:40
第一个问题,估计要结合你买的开发板。

第二个问题,如果要使用外边RAM,启动过程中要先行对外边RAM做初始 ...

香版主,好久不见。
我是购买了一块正点原子的STM32F407开发板。它上面有外扩SRAM的。
我们做一块LED显示屏控制板,需要联网更新显示内容。
然后我用STM32F32407做了一块TCP Client通讯板,没有加SRAM.

那么我应该怎样配置它的启动文件?  (带USOS的)
香水城 发表于 2020-12-30 16:50 | 显示全部楼层
一般来讲 启动文件是不需要怎么动的,问题可能不再外边SRAM扩展这里。

不过,你如果带Ucos的话,记得个别中断函数名移植时要调整下。你找个ucos的工程文件参考下。
木木guainv 发表于 2021-1-11 14:43 | 显示全部楼层
这样说来应该有参考例程了
磨砂 发表于 2021-1-11 15:00 | 显示全部楼层
从没纠结过这个问题 能正常启动就行
晓伍 发表于 2021-1-11 15:02 | 显示全部楼层
一般外扩的ram我都用做别的用途
八层楼 发表于 2021-1-11 15:04 | 显示全部楼层
所有正点的都支持外部sram吗
观海 发表于 2021-1-11 15:05 | 显示全部楼层
启动的地址不一样?
橙子0_0 发表于 2021-3-30 20:42 | 显示全部楼层
香水城 发表于 2020-12-29 11:40
第一个问题,估计要结合你买的开发板。

第二个问题,如果要使用外边RAM,启动过程中要先行对外边RAM做初始 ...

香版主,再问下,我用hal库,没有找到这个变量
香水城 发表于 2021-3-30 22:07 | 显示全部楼层
#if defined (DATA_IN_ExtSRAM) || defined (DATA_IN_ExtSDRAM)
/**
  * @brief  Setup the external memory controller.
  *         Called in startup_stm32f4xx.s before jump to main.
  *         This function configures the external memories (SRAM/SDRAM)
  *         This SRAM/SDRAM will be used as program data memory (including heap and stack).
  * @param  None
  * @retval None
  */
void SystemInit_ExtMemCtl(void)
{
  __IO uint32_t tmp = 0;
#if defined (DATA_IN_ExtSDRAM) && defined (DATA_IN_ExtSRAM)
  register uint32_t tmpreg = 0, timeout = 0xFFFF;
  register uint32_t index;
。。。。。。。。。。。。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

417

主题

4295

帖子

2

粉丝
快速回复 在线客服 返回列表 返回顶部