硬汉嵌入式论坛

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

[FMC] FMC外接SDRAM后,SRAM中的变量打印的地址不在参考手册里面对应BANK的地址区间内。

[复制链接]

1

主题

3

回帖

6

积分

新手上路

积分
6
发表于 2024-10-12 10:47:06 | 显示全部楼层 |阅读模式
int main(void)
{

  /* USER CODE BEGIN 1 */

  /* USER CODE END 1 */

  /* MCU Configuration--------------------------------------------------------*/

  /* Reset of all peripherals, Initializes the Flash interface and the Systick. */
  HAL_Init();

  /* USER CODE BEGIN Init */
  

  /* USER CODE END Init */

  /* Configure the system clock */
  SystemClock_Config();

  /* USER CODE BEGIN SysInit */

  /* USER CODE END SysInit */

  /* Initialize all configured peripherals */
  MX_GPIO_Init();
  MX_FMC_Init();
  MX_USART1_UART_Init();
  /* USER CODE BEGIN 2 */
  SDRAM_User_Init();
  uint8_t testValue __attribute__((at(SDRAM_BANK2_ADDRESS)));
  testValue = 0x5a;
  if(Sdram_Test_APP() == 0)
  {
    printf("SDRAM Test successed\r\n");
  }
  else
  {
    printf("SDRAM Test failed\r\n");
  }
  printf("\r\ntestValue is %#x\r\n", testValue);
  printf("\r\ntestValue address is %#x\r\n", &testValue);
  /* USER CODE END 2 */

  /* Infinite loop */
  /* USER CODE BEGIN WHILE */
  while (1)
  {
    /* USER CODE END WHILE */

    /* USER CODE BEGIN 3 */
  }
  /* USER CODE END 3 */
}

打印的地址和我选择的BANK地址不一致,有友友遇到过这种情况的吗?

打印的地址和我选择的BANK地址不一致,有友友遇到过这种情况的吗?
回复

使用道具 举报

1万

主题

7万

回帖

11万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
117564
QQ
发表于 2024-10-12 11:46:41 | 显示全部楼层
改成全局变量就好了
uint8_t testValue __attribute__((at(SDRAM_BANK2_ADDRESS)));
回复

使用道具 举报

1万

主题

7万

回帖

11万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
117564
QQ
发表于 2024-10-12 11:46:46 | 显示全部楼层
改成全局变量就好了
uint8_t testValue __attribute__((at(SDRAM_BANK2_ADDRESS)));
回复

使用道具 举报

1

主题

3

回帖

6

积分

新手上路

积分
6
 楼主| 发表于 2024-10-12 12:53:48 | 显示全部楼层
真的解决了,感谢硬汉哥
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-8-15 02:18 , Processed in 0.055643 second(s), 28 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2023, Tencent Cloud.

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