关于LPC17XX系列中断向量VTOR设置问题

[复制链接]
4011|2
 楼主| e08610318 发表于 2013-4-8 17:51 | 显示全部楼层 |阅读模式
资料说中断向量表可以设置在1G以内的空间内,看了下致远写的芯片启动代码,用C定义了好几个指针数组,
然后有宏限定,有些是定义在FLASH区内的,有些定义在RAM区内的,例如

void *const vectorTable[] = {
   RAM_TOP
   ....
   ....
   ....
};
在初始化目标板时,根据宏定义选择不同的指针数组,然后直接VTOR = (unsigned long)vectorTable;

想来想去,因为无法决定vectorTable数组的地址,感觉这个无法实现动态分配中断向量地址啊?
阿南 发表于 2013-4-9 14:19 | 显示全部楼层
LPC没接触过,帮顶
建议找他们工程师交流下。
 楼主| e08610318 发表于 2013-4-16 18:05 | 显示全部楼层
自己给自己解答吧....
ARM编译器参考**里有这么条语句: __attribute__((at(address)))

例如:
const int x1 __attribute__((at(0x10000))) = 10; /* RO */
int x2 __attribute__((at(0x12000))) = 10;       /* RW */
int x3 __attribute__((at(0x14000))) = 0;        /* RW, not ZI */
int x4 __attribute__((at(0x16000)));            /* ZI */
您需要登录后才可以回帖 登录 | 注册

本版积分规则

个人签名:你可能不知道今天所做的事情会对未来有多大的干预能力!

67

主题

310

帖子

12

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