楼主: kolcbc

[S12] 请教:MC9S12XEP100 定时器溢出中断进不了~

[复制链接]
  • TA的每日心情
    难过
    2021-12-15 16:01
  • 签到天数: 1 天

    连续签到: 1 天

    [LV.1]初来乍到

    305

    主题

    4701

    帖子

    0

    中级会员

    Rank: 3Rank: 3

    积分
    377
    最后登录
    2023-8-16
    发表于 2010-7-15 08:46:28 | 显示全部楼层

    RE:请教:MC9S12XEP100 定时器溢出中断进不了~

    你先确定一下:
    INT_CFADDR = 0xde;//溢出中断地址是否正确
    工程里面的芯片选择是否正确,既然可以在别的上面跑,可能存在的问题就是这几个。
    该会员没有填写今日想说内容.

    该用户从未签到

    3

    主题

    42

    帖子

    0

    新手上路

    Rank: 1

    积分
    86
    最后登录
    1970-1-1
     楼主| 发表于 2010-7-15 10:01:37 | 显示全部楼层

    RE:请教:MC9S12XEP100 定时器溢出中断进不了~

    #define Vectovf                         0x0000FFDE
    这个是头文件中的溢出中断向量地址~~~

    该用户从未签到

    3

    主题

    42

    帖子

    0

    新手上路

    Rank: 1

    积分
    86
    最后登录
    1970-1-1
     楼主| 发表于 2010-7-15 10:02:31 | 显示全部楼层

    RE:请教:MC9S12XEP100 定时器溢出中断进不了~

    芯片也没选错~、
    我所疑惑 的是 :是不是在软件上跑存在BUG~~所以跑不起来
  • TA的每日心情
    难过
    2021-12-15 16:01
  • 签到天数: 1 天

    连续签到: 1 天

    [LV.1]初来乍到

    305

    主题

    4701

    帖子

    0

    中级会员

    Rank: 3Rank: 3

    积分
    377
    最后登录
    2023-8-16
    发表于 2010-7-15 15:01:26 | 显示全部楼层

    RE:请教:MC9S12XEP100 定时器溢出中断进不了~

    你上面说的不是中断的向量地址,你仔细查看手册第六章,里面说明了中断配置要求,你的中断配置有问题。
    该会员没有填写今日想说内容.
  • TA的每日心情
    难过
    2021-12-15 16:01
  • 签到天数: 1 天

    连续签到: 1 天

    [LV.1]初来乍到

    305

    主题

    4701

    帖子

    0

    中级会员

    Rank: 3Rank: 3

    积分
    377
    最后登录
    2023-8-16
    发表于 2010-7-15 15:15:29 | 显示全部楼层

    RE:请教:MC9S12XEP100 定时器溢出中断进不了~

    下列是串口SCI中断的设置,建议参考一下。
    /************************* Macros ******************************************/
    #define ROUTE_INTERRUPT(vec_adr, cfdata)                \
      INT_CFADDR= (vec_adr) & 0xF0;                         \
      INT_CFDATA_ARR[((vec_adr) & 0x0F) >> 1]= (cfdata)
    #define SCI0_VEC  0xD6 /* vector address= $xxD6 */

    //Initialise the XGATE
    static void SetupXGATE(void)
    {
      /* initialize the XGATE vector block and
         set the XGVBR register to its start address */
      XGVBR= (unsigned int)(void*__far)(XGATE_VectorTable - XGATE_VECTOR_OFFSET);
      /* switch SCI0 interrupt to XGATE */
      ROUTE_INTERRUPT(SCI0_VEC, 0x81); /* RQST=1 and PRIO=1 */
      /* enable XGATE mode and interrupts */
      XGMCTL= 0xFBC1; /* XGE | XGFRZ | XGIE */
    }
    该会员没有填写今日想说内容.

    该用户从未签到

    3

    主题

    42

    帖子

    0

    新手上路

    Rank: 1

    积分
    86
    最后登录
    1970-1-1
     楼主| 发表于 2010-7-19 11:00:14 | 显示全部楼层

    RE:请教:MC9S12XEP100 定时器溢出中断进不了~

    我的不是中断向量地址吗????
    这是头文件的里的东西啊~~

    该用户从未签到

    3

    主题

    42

    帖子

    0

    新手上路

    Rank: 1

    积分
    86
    最后登录
    1970-1-1
     楼主| 发表于 2010-7-19 11:04:36 | 显示全部楼层

    RE:请教:MC9S12XEP100 定时器溢出中断进不了~

    #define ROUTE_INTERRUPT(vec_adr, cfdata) \
    INT_CFADDR= (vec_adr) & 0xF0; \
    INT_CFDATA_ARR[((vec_adr) & 0x0F) >> 1]= (cfdata)
    #define SCI0_VEC 0xD6 /* vector address= $xxD6 */
    这几句什么意思?看不懂
  • TA的每日心情
    难过
    2021-12-15 16:01
  • 签到天数: 1 天

    连续签到: 1 天

    [LV.1]初来乍到

    305

    主题

    4701

    帖子

    0

    中级会员

    Rank: 3Rank: 3

    积分
    377
    最后登录
    2023-8-16
    发表于 2010-7-19 15:00:01 | 显示全部楼层

    RE:请教:MC9S12XEP100 定时器溢出中断进不了~

    就是设置优先级的,我认为你的向量地址些错误了。上面的函数就是简单的处理,和你直接赋值是一样的概念。
    该会员没有填写今日想说内容.

    该用户从未签到

    3

    主题

    42

    帖子

    0

    新手上路

    Rank: 1

    积分
    86
    最后登录
    1970-1-1
     楼主| 发表于 2010-7-19 15:09:15 | 显示全部楼层

    RE:请教:MC9S12XEP100 定时器溢出中断进不了~

    我一直有个疑问,我就这个一个中断也需要设置优先级吗????我记得以前做别的单片机的时候,从来没有这样设置过优先级的。

    该用户从未签到

    3

    主题

    42

    帖子

    0

    新手上路

    Rank: 1

    积分
    86
    最后登录
    1970-1-1
     楼主| 发表于 2010-7-19 15:11:41 | 显示全部楼层

    RE:请教:MC9S12XEP100 定时器溢出中断进不了~

    我看了网上一个朋友的 关于这段#define ROUTE_INTERRUPT(vec_adr, cfdata) \
    INT_CFADDR= (vec_adr) & 0xF0; \
    INT_CFDATA_ARR[((vec_adr) & 0x0F) >> 1]= (cfdata)
    #define SCI0_VEC 0xD6 /* vector address= $xxD6 */
    的解释,我明白了如何设置。。。。可是我设置后还是不行 无非是把
    INT_CFADDR = 0xde;//溢出中断地址
    INT_CFDATA0= 0x07;//设置成最高级7级
    改成INT_CFADDR = 0xd0;//溢出中断地址
    INT_CFDATA0= 0x07;//设置成最高级7级
    还是不行。是不是这个单片机本来就不支持溢出中断呢??
    我做PIT中断的时候 不需要设置优先级,也一样可以进入中断。同样是在软件仿真模式下。~~~~
    您需要登录后才可以回帖 注册/登录

    本版积分规则

    关闭

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

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

    GMT+8, 2025-7-21 07:00 , Processed in 0.105476 second(s), 29 queries , MemCache On.

    Powered by Discuz! X3.4

    Copyright © 2001-2024, Tencent Cloud.

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