我是靠谱客的博主 火星上热狗,最近开发中收集的这篇文章主要介绍arm-none-eabi-gcc 不识别__attribute__((at(xxx))命令如何将数据定义到外部SDAM(已验证)可以利用__attribute__((section(".xxx")))实现同样的效果,觉得挺不错的,现在分享给大家,希望可以做个参考。
概述
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档
文章目录
- 可以利用__attribute__((section(".xxx")))实现同样的效果
- 步骤:
- 1.在linker链接文件中添加指定SDRAM加偏移地址
- 2 .添加SDRAM自定义section
- 3. 将数据定义到自定义区
可以利用__attribute__((section(".xxx")))实现同样的效果
步骤:
从STM32H7xx参考手册中可以看到,FMC挂载的外部SDRAM的可访问地址从0xC000 0000-0xDFFF FFFF截止
1.在linker链接文件中添加指定SDRAM加偏移地址
MEMORY
{
rom (rx) : ORIGIN = 0x08000000, LENGTH = 2048k - 64k
ram (rwx) : ORIGIN = 0x20000000, LENGTH = 128k
ram1 (rwx) : ORIGIN = 0x10000000, LENGTH = 64k
SDRAM (rwx) : ORIGIN = 0xC0100000, LENGTH = 16M
}
/* SDRAM 前16M给emwin用了*/
2 .添加SDRAM自定义section
.sdram_data (NOLOAD) :
{
. = ALIGN(4);
_sdram_data_begin = .;
*(.sdram_data)
*(.sdram_data*)
. = ALIGN(4);
_sdram_data_end = .;
} >SDRAM
3. 将数据定义到自定义区
__IO __attribute__ (( section (".sdram_data") )) PARAM_T gp ;
其中有部分语法还需要学习
最后
以上就是火星上热狗为你收集整理的arm-none-eabi-gcc 不识别__attribute__((at(xxx))命令如何将数据定义到外部SDAM(已验证)可以利用__attribute__((section(".xxx")))实现同样的效果的全部内容,希望文章能够帮你解决arm-none-eabi-gcc 不识别__attribute__((at(xxx))命令如何将数据定义到外部SDAM(已验证)可以利用__attribute__((section(".xxx")))实现同样的效果所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复