NVIC的向量表偏移寄存器设置问题(已解决)

2019-07-20 23:51发布

void MY_NVIC_SetVectorTable(u32 NVIC_VectTab, u32 Offset) 
{
   //检查参数合法性
 assert_param(IS_NVIC_VECTTAB(NVIC_VectTab));
 assert_param(IS_NVIC_OFFSET(Offset));   
 SCB->VTOR = NVIC_VectTab|(Offset & (u32)0x1FFFFF80);//设置NVIC的向量表偏移寄存器
 //用于标识向量表是在CODE区还是在RAM区
}

问个问题,为什么(Offset & (u32)0x1FFFFF80)  为什么使用0x1FFFFF80,0x1FFFFF80是怎样得来的呢?
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
38条回答
正点原子
1楼-- · 2019-07-24 06:49
回复【25楼】哈根斯坦:
---------------------------------
看《CM3权威指南》
合肥-文盲
2楼-- · 2019-07-24 11:22
正点原子 发表于 2011-3-10 20:53
回复【9楼】kenluo:
-------------------------------
这就对了。
原来低7位没有用到,所以&0X80。

讲解的很详细,赞一个,对写IAP有很大帮助
刘飞月
3楼-- · 2019-07-24 11:23
正点原子 发表于 2011-3-10 10:12
     在<<权威指南>>第一百零四页,有这么一段话:
   &n ...

原子哥  这个里面乘以4,是什么意思
刘飞月
4楼-- · 2019-07-24 13:50
 精彩回答 2  元偷偷看……
飞舸house
5楼-- · 2019-07-24 15:49
正点原子 发表于 2011-3-10 10:12
     在<<权威指南>>第一百零四页,有这么一段话:
   &n ...

我看你的头像,看了半天。
齐天大胜007
6楼-- · 2019-07-24 16:43
 精彩回答 2  元偷偷看……

一周热门 更多>