摘要:
如果keil使用的是AC5编译器,则可以使用如下简单语句定义变量到固定地址,RAM变量和ROM变量均适用。 #define ADDRESS 0x20001F80 int x1 __attribute__((at(ADDRESS))); 如果是使用的AC6编译器,那么以上的用法就不行了。语法和方法都变 阅读全文
posted @ 2024-05-14 16:57
不惑而已
阅读(2290)
评论(0)
推荐(0)
摘要:
STM32的启动文件中定义的栈和堆的大小,由于栈是向下生长的。所以我们一般希望将栈顶设置为RAM的最高有效地址。这样就可以最大限度保护栈不会溢出。但是STM32的启动文件居然不是这样的思路。 那STM32的启动文件的分配思路是怎么样的呢。它其实是先确定用户使用RAM的情况,然后在未使用的RAM地址开 阅读全文
posted @ 2024-05-14 16:49
不惑而已
阅读(1127)
评论(0)
推荐(0)
摘要:
; FLASH起始址 FLASH大小 LR_IROM1 0x0800 0000 0x000F 0000 ;这行描述的是编译后的执行代码存放在FLASH的哪地址,FLASH大小是多少。LR_IROM1是段名,随便写 { ER_IROM1 0x0800 0000 0x000F 0000 ;这行描述了一个 阅读全文
posted @ 2024-05-14 16:40
不惑而已
阅读(608)
评论(0)
推荐(0)

浙公网安备 33010602011771号