单片机开发日志cv MDK-ARM工具链迁移到MAKE

核心经验:

STM32H7 多 RAM 区域,外设相关数据段必须放在 AXI SRAM(RAM)区,不能放在 DTCMRAM,否则外设无法访问,程序表面正常但外设全失效。迁移工程时,务必检查链接脚本的内存分布!


c 复制代码
_estack = ORIGIN(RAM) + LENGTH(RAM);    /* 堆栈顶设置为 AXI SRAM 末尾 */

...

.data : 
{
  . = ALIGN(4);
  _sdata = .;
  *(.data)
  *(.data*)
  *(.RamFunc)
  *(.RamFunc*)
  . = ALIGN(4);
  _edata = .;
} >RAM AT> FLASH

.bss :
{
  _sbss = .;
  __bss_start__ = _sbss;
  *(.bss)
  *(.bss*)
  *(COMMON)
  . = ALIGN(4);
  _ebss = .;
  __bss_end__ = _ebss;
} >RAM

._user_heap_stack :
{
  . = ALIGN(8);
  PROVIDE ( end = . );
  PROVIDE ( _end = . );
  . = . + _Min_Heap_Size;
  . = . + _Min_Stack_Size;
  . = ALIGN(8);
} >RAM
相关推荐
国科安芯9 分钟前
车规级ASM1042芯片在汽车无线充电模块中的应用探索
人工智能·单片机·嵌入式硬件·物联网·安全·汽车
代码改变世界ctw2 小时前
ARM汇编编程(AArch64架构)课程 - 第9章:原子操作与同步
汇编·arm开发·架构
学不动CV了3 小时前
深入理解C语言内存空间、函数指针(三)(重点是函数指针)
c语言·arm开发·数据库·stm32·单片机·嵌入式硬件·c#
学不动CV了11 小时前
C语言32个关键字
c语言·开发语言·arm开发·单片机·算法
姜暮儿12 小时前
U盘直接拔出不在电脑上弹出有何影响
stm32·单片机·嵌入式硬件
O。o.尊都假都13 小时前
STM32之LVGL移植
stm32·单片机·嵌入式硬件·freertos·lvgl
学不动CV了13 小时前
ARM单片机OTA解析(一)
c语言·arm开发·stm32·单片机·嵌入式硬件·51单片机
一叶舞澎湃13 小时前
GD32 CAN1和TIMER0同时开启问题
单片机·嵌入式硬件
EutoCool14 小时前
Qt窗口:菜单栏
开发语言·c++·嵌入式硬件·qt·前端框架
易知嵌入式小菜鸡16 小时前
CCS-MSPM0G3507-3-基础篇-PWM输出
stm32·单片机·嵌入式硬件