注册 登录
电子工程世界-论坛 返回首页 EEWORLD首页 频道 EE大学堂 下载中心 Datasheet 专题
zhhbee的个人空间 https://home.eeworld.com.cn/space-uid-405882.html [收藏] [复制] [分享] [RSS]
日志

!!!关于MSP430中断向量表重映射的问题咨询????求指教

热度 1已有 3671 次阅读2012-7-24 19:15

关于MSP430中断向量表重映射的问题咨询????求指教
在做关于MSP430的程序无线更新的一个东西,在BL程序中写了如下的中断向量列表:
#pragma vector=0
__interrupt void intec_0(void)
{
  asm("br &0xE9E0;");
}
#pragma vector=2
__interrupt void intec_1(void)
{
  asm("br &0xE9E2;");
}
#pragma vector=4
__interrupt void intec_2(void)
{
  asm("br &0xE9E4;");
}
#pragma vector=6
__interrupt void intec_3(void)
{
  asm("br &0xE9E6;");
}
#pragma vector=8
__interrupt void intec_4(void)
{
  asm("br &0xE9E8;");
}
#pragma vector=10
__interrupt void intec_5(void)
{
  asm("br &0xE9EA;");
}
#pragma vector=12
__interrupt void intec_6(void)
{
  asm("br &0xE9EC;");
}
#pragma vector=14
__interrupt void intec_7(void)
{
  asm("br &0xE9EE;");
}
#pragma vector=16
__interrupt void intec_8(void)
{
  asm("br &0xE9F0;");
}
#pragma vector=18
__interrupt void intec_9(void)
{
  asm("br &0xE9F2;");
}
#pragma vector=20
__interrupt void intec_10(void)
{
  asm("br &0xE9F4;");
}
#pragma vector=22
__interrupt void intec_11(void)
{
  asm("br &0xE9F6;");
}
#pragma vector=24
__interrupt void intec_12(void)
{
  asm("br &0xE9F8;");
}
#pragma vector=26
__interrupt void intec_13(void)
{
  asm("br &0xE9FA;");
}
#pragma vector=28
__interrupt void intec_14(void)
{
  asm("br &0xE9FC;");
},
请问在用户应用程序中的,中断程序应该怎么写啊,BL程序中已经指向了虚拟的中断向量地址,用户应用xcl文件中也已经更改了虚拟中断向量的地址,然后再用户应用程序中,我直接写以下的程序:
#pragma vector=UART1RX_VECTOR
__interrupt void UART1_RXISR(void)
{
  uchar x;
  x=RXBUF1;
  if(x=='$')
  {
    send1char(0x00);
    hand_n++;
    if(hand_n>=10)
    {
      hand_n=0;
      send1char(0x11);
      Eraseflash(0xE900);//擦除虚拟中断向量表
      asm("mov & 0xFFFE,PC;");
      
    }
   
  }
}
可是根本无法进入中断,求哪位大神指导下啊,急急急啊
发表评论 评论 (1 个评论)
回复 rayray79 2014-1-9 15:48
楼主~~请问 这个问题 你现在解决了 没有~~  我也遇到了   分享下呗  谢谢~~

facelist doodle 涂鸦板

您需要登录后才可以评论 登录 | 注册

热门文章