查看: 6174|回复: 7

[S12] Bootloader中xs128的中断向量如何重映射

[复制链接]

该用户从未签到

6

主题

92

帖子

0

中级会员

Rank: 3Rank: 3

积分
458
最后登录
1970-1-1
发表于 2016-9-5 15:53:46 | 显示全部楼层 |阅读模式
最近在做XS128的Bootloader,遇到了一个问题,就是中断向量该如何重新映射?看手册需要配置IVBR寄存器,但不知该怎么用?特来求助大神,不知有谁做过这方面的没有。现在已经可以将s19文件烧到flash中,只要没有中断向量的程序都能正常运行,但有中断向量的不知该如何重新映射。
我知道答案 目前已有7人回答
回复

使用道具 举报

  • TA的每日心情

    2016-10-20 09:45
  • 签到天数: 1 天

    连续签到: 1 天

    [LV.1]初来乍到

    80

    主题

    1038

    帖子

    5

    版主

    Rank: 7Rank: 7Rank: 7

    积分
    2223
    最后登录
    2023-11-20
    发表于 2016-9-5 21:09:12 | 显示全部楼层
    配置IVBR寄存器就好了,重新搞个中断向量表
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    6

    主题

    92

    帖子

    0

    中级会员

    Rank: 3Rank: 3

    积分
    458
    最后登录
    1970-1-1
     楼主| 发表于 2016-9-6 21:25:43 | 显示全部楼层
    本帖最后由 22-2016421 于 2016-9-6 21:27 编辑
    花溪村长 发表于 2016-9-5 21:09
    配置IVBR寄存器就好了,重新搞个中断向量表
    1. void main(void)
    2. {
    3.   IVBR=0xEF;//在这里配置了IVBR
    4.   DisableInterrupts;
    5.   INIT_PLL();
    6.   initialize_ect();
    7.   INIT_port();
    8.   LEDCPU_dir=1;
    9.   LEDCPU=0;
    10.   EnableInterrupts;
    复制代码



    下面是配置的向量表,还请版主看下哪里有问题
    1. #pragma CODE_SEG NON_BANKED
    2. // 声明外部中断函数
    3. //extern void  Timer0_C0(void);   
    4. extern void  _Startup(void); //Startup routine */

    5. #pragma CODE_SEG NON_BANKED
    6. /* Interrupt section for this module. Placement will be in NON_BANKED area. */
    7. __interrupt void UnimplementedISR(void)  //定义在NON_BANKED区
    8. {
    9.    asm BGND; //空的中断函数
    10. }
    11. typedef void (*near tIsrFunc)(void); //定义了函数指针类型

    12. //定义一个函数指针数组中断表,从0xEF00地址开始装载各个中断函数的首地址
    13. const tIsrFunc _vect[] @0xEF00 =    /* Interrupt table */
    14. {
    15.     UnimplementedISR,                 /* vector 117 */
    16.     UnimplementedISR,                 /* vector 116 */
    17.     UnimplementedISR,                 /* vector 115 */
    18.     UnimplementedISR,                 /* vector 114 */
    19.     UnimplementedISR,                 /* vector 113 */
    20.     UnimplementedISR,                 /* vector 112 */
    21.     UnimplementedISR,                 /* vector 111 */
    22.     UnimplementedISR,                 /* vector 110 */
    23.     UnimplementedISR,                 /* vector 109 */
    24.     UnimplementedISR,                 /* vector 108 */
    25.     UnimplementedISR,                 /* vector 107 */
    26.     UnimplementedISR,                 /* vector 106 */
    27.     UnimplementedISR,                 /* vector 105 */
    28.     UnimplementedISR,                 /* vector 104 */
    29.     UnimplementedISR,                 /* vector 103 */
    30.     UnimplementedISR,                 /* vector 102 */
    31.     UnimplementedISR,                 /* vector 101 */
    32.     UnimplementedISR,                 /* vector 100 */
    33.     UnimplementedISR,                 /* vector 99 */
    34.     UnimplementedISR,                 /* vector 98 */
    35.     UnimplementedISR,                 /* vector 97 */
    36.     UnimplementedISR,                 /* vector 96 */
    37.     UnimplementedISR,                 /* vector 95 */
    38.     UnimplementedISR,                 /* vector 94 */
    39.    
    40.     UnimplementedISR,                 /* vector 93 */
    41.     UnimplementedISR,                 /* vector 92 */
    42.     UnimplementedISR,                 /* vector 91 */
    43.     UnimplementedISR,                 /* vector 90 */
    44.     UnimplementedISR,                 /* vector 89 */
    45.     UnimplementedISR,                 /* vector 88 */
    46.     UnimplementedISR,                 /* vector 87 */
    47.     UnimplementedISR,                 /* vector 86 */
    48.     UnimplementedISR,                 /* vector 85 */
    49.     UnimplementedISR,                 /* vector 84 */
    50.     UnimplementedISR,                 /* vector 83 */
    51.     UnimplementedISR,                 /* vector 82 */
    52.     UnimplementedISR,                 /* vector 81 */
    53.     UnimplementedISR,                 /* vector 80 */
    54.     UnimplementedISR,                 /* vector 79 */
    55.     UnimplementedISR,                 /* vector 78 */
    56.     UnimplementedISR,                 /* vector 77 */
    57.     UnimplementedISR,                 /* vector 76 */
    58.     UnimplementedISR,                 /* vector 75 */
    59.     UnimplementedISR,                 /* vector 74 */
    60.     UnimplementedISR,                 /* vector 73 */
    61.     UnimplementedISR,                 /* vector 72 */
    62.     UnimplementedISR,                 /* vector 71 */
    63.     UnimplementedISR,                 /* vector 70 */
    64.     UnimplementedISR,                 /* vector 69 */
    65.     UnimplementedISR,                 /* vector 68 */
    66.     UnimplementedISR,                 /* vector 67 */
    67.     UnimplementedISR,                 /* vector 66 */
    68.     UnimplementedISR,                 /* vector 65 */
    69.     UnimplementedISR,                 /* vector 64 */


    70.     UnimplementedISR,                 /* vector 63 */
    71.     UnimplementedISR,                 /* vector 62 */
    72.     UnimplementedISR,                 /* vector 61 */
    73.     UnimplementedISR,                 /* vector 60 */
    74.     UnimplementedISR,                 /* vector 59 */
    75.     UnimplementedISR,                 /* vector 58 */
    76.     UnimplementedISR,                 /* vector 57 */
    77.     UnimplementedISR,                 /* vector 56 */
    78.     UnimplementedISR,                 /* vector 55 */
    79.     UnimplementedISR,                 /* vector 54 */
    80.     UnimplementedISR,                 /* vector 53 */
    81.     UnimplementedISR,                 /* vector 52 */
    82.     UnimplementedISR,                 /* vector 51 */
    83.     UnimplementedISR,                 /* vector 50 */
    84.     UnimplementedISR,                 /* vector 49 */
    85.     UnimplementedISR,                 /* vector 48 */
    86.     UnimplementedISR,                 /* vector 47 */
    87.     UnimplementedISR,                 /* vector 46 */
    88.     UnimplementedISR,                 /* vector 45 */
    89.     UnimplementedISR,                 /* vector 44 */
    90.     UnimplementedISR,                 /* vector 43 */
    91.     UnimplementedISR,                 /* vector 42 */
    92.     UnimplementedISR,                 /* vector 41 */
    93.     UnimplementedISR,                 /* vector 40 */
    94.     UnimplementedISR,                 /* vector 39 */
    95.     UnimplementedISR,                 /* vector 38 */
    96.     UnimplementedISR,                 /* vector 37 */
    97.     UnimplementedISR,                 /* vector 36 */
    98.     UnimplementedISR,                 /* vector 35 */
    99.     UnimplementedISR,                 /* vector 34 */
    100.     UnimplementedISR,                 /* vector 33 */
    101.     UnimplementedISR,                 /* vector 32 */
    102.     UnimplementedISR,                 /* vector 31 */
    103.     UnimplementedISR,                 /* vector 30 */
    104.     UnimplementedISR,                 /* vector 29 */
    105.     UnimplementedISR,                 /* vector 28 */
    106.     UnimplementedISR,                 /* vector 27 */
    107.     UnimplementedISR,                 /* vector 26 */
    108.     UnimplementedISR,                 /* vector 25 */
    109.     UnimplementedISR,                 /* vector 24 */
    110.     UnimplementedISR,                 /* vector 23 */
    111.     UnimplementedISR,                 /* vector 22 */
    112.     UnimplementedISR,                 /* vector 21 */
    113.     UnimplementedISR,                 /* vector 20 */
    114.     UnimplementedISR,                 /* vector 19 */
    115.     UnimplementedISR,                 /* vector 18 */
    116.     UnimplementedISR,                 /* vector 17 */
    117.     UnimplementedISR,                 /* vector 16 */
    118.     UnimplementedISR,                 /* vector 15 */
    119.     UnimplementedISR,                 /* vector 14 */
    120.     UnimplementedISR,                 /* vector 13 */
    121.     UnimplementedISR,                 /* vector 12 */
    122.     UnimplementedISR,                 /* vector 11 */
    123.     UnimplementedISR,                 /* vector 10 */
    124.     UnimplementedISR,                 /* vector 09 */
    125.     scan,                                   /* vector 08 定时器中断*/
    126.     UnimplementedISR,                 /* vector 07 */
    127.     UnimplementedISR,                 /* vector 06 */
    128.     UnimplementedISR,                 /* vector 05 */
    129.     UnimplementedISR,                 /* vector 04 */
    130.     UnimplementedISR,                 /* vector 03 */
    131.     UnimplementedISR,                 /* vector 02 */
    132.     UnimplementedISR,                 /* vector 01 */
    133.     _Startup                           /* Reset vector */
    134. };
    复制代码
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    14

    主题

    64

    帖子

    0

    注册会员

    Rank: 2

    积分
    147
    最后登录
    2018-9-28
    发表于 2016-9-7 09:35:37 | 显示全部楼层
    楼主,这个不是中断程序都能运行?只需要改linkfile文件就能做到吗?
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    5

    主题

    16

    帖子

    0

    注册会员

    Rank: 2

    积分
    77
    最后登录
    2018-1-14
    发表于 2017-12-4 20:37:25 | 显示全部楼层
    请问楼主问题解决了吗?我现在也遇到了IVBR寄存器的配置问题,我用的芯片是MC9S12XET256
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    5

    主题

    16

    帖子

    0

    注册会员

    Rank: 2

    积分
    77
    最后登录
    2018-1-14
    发表于 2017-12-4 20:37:28 | 显示全部楼层
    请问楼主问题解决了吗?我现在也遇到了IVBR寄存器的配置问题,我用的芯片是MC9S12XET256
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    5

    主题

    16

    帖子

    0

    注册会员

    Rank: 2

    积分
    77
    最后登录
    2018-1-14
    发表于 2017-12-4 20:37:31 | 显示全部楼层
    请问楼主问题解决了吗?我现在也遇到了IVBR寄存器的配置问题,我用的芯片是MC9S12XET256
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    5

    主题

    16

    帖子

    0

    注册会员

    Rank: 2

    积分
    77
    最后登录
    2018-1-14
    发表于 2017-12-4 20:37:57 | 显示全部楼层
    请问楼主问题解决了吗?我现在也遇到了IVBR寄存器的配置问题,我用的芯片是MC9S12XET256
    回复 支持 反对

    使用道具 举报

    您需要登录后才可以回帖 注册/登录

    本版积分规则

    关闭

    站长推荐上一条 /3 下一条

    Archiver|手机版|小黑屋|恩智浦技术社区

    GMT+8, 2025-7-20 20:12 , Processed in 0.102488 second(s), 28 queries , MemCache On.

    Powered by Discuz! X3.4

    Copyright © 2001-2024, Tencent Cloud.

    快速回复 返回顶部 返回列表