查看: 4113|回复: 10

[求助] k53 PIT 中断问题

[复制链接]
  • TA的每日心情
    开心
    2018-9-14 09:26
  • 签到天数: 2 天

    连续签到: 1 天

    [LV.1]初来乍到

    70

    主题

    329

    帖子

    0

    高级会员

    Rank: 4

    积分
    952
    最后登录
    2021-1-4
    发表于 2012-8-23 15:01:44 | 显示全部楼层 |阅读模式
    我在debug时,怎么我的程序总是停在 void isr_default(void) 这个函数里面?
    我只使能了PIT0,用过的帮我看看
    下面是PIT0的初始化函数
    void pitInitial(void)
    {
     DisableInterrupts
     
     PIT_MCR = (uint32_t)(PIT_MCR_FRZ_MASK
            | PIT_MCR_MDIS_MASK);//Clock for PIT Timers is disabled
     PIT_TCTRL0 = 0;//disable timer0 and timer0 interrupt
     PIT_TFLG0 = (uint32_t)PIT_TFLG_TIF_MASK;//clear the Timer Interrupt Flag.
     
     PIT_LDVAL0 = PIT_TIMER0_1MS_INTERRUPT;
     
     PIT_TCTRL0 = PIT_TCTRL_TEN_MASK | PIT_TCTRL_TIE_MASK; 
     PIT_MCR = (uint32_t)PIT_MCR_FRZ_MASK;
     
     enable_irq(INT_PIT0 - 16);
     EnableInterrupts
    }
    这是中断服务服务函数
    void pitIniteruptServer(void)
    {
     PIT_TFLG0 = (uint32_t)PIT_TFLG_TIF_MASK;//clear the Timer Interrupt Flag.
     pitCounter++;
     if(pitCounter & 0x01)
     {
      GPIOB_PDOR = 0x0f;
     }
     else
     {
      GPIOB_PDOR = 0x0e;
     }
    }
     
    我知道答案 目前已有9人回答
    回复

    使用道具 举报

  • TA的每日心情
    难过
    2021-12-15 16:01
  • 签到天数: 1 天

    连续签到: 1 天

    [LV.1]初来乍到

    305

    主题

    4701

    帖子

    0

    中级会员

    Rank: 3Rank: 3

    积分
    377
    最后登录
    2023-8-16
    发表于 2012-8-23 16:13:07 | 显示全部楼层

    RE:k53 PIT 中断问题

    在ISR中断配置文件里面,你没有指到正确的ISR中断向量地址.打开ISR.h,你可以找到PIT0定义的向量,你把PIT0定义的向量那一行的isr_default(void)这个换成void pitIniteruptServer(void)就可以了.
    该会员没有填写今日想说内容.
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    开心
    2018-9-14 09:26
  • 签到天数: 2 天

    连续签到: 1 天

    [LV.1]初来乍到

    70

    主题

    329

    帖子

    0

    高级会员

    Rank: 4

    积分
    952
    最后登录
    2021-1-4
     楼主| 发表于 2012-8-23 16:26:49 | 显示全部楼层

    RE:k53 PIT 中断问题

    ISR中断配置文件?ISR.h?
    我没看到这个文件?
    它在什么目录下,我用的是CW10.2
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    难过
    2021-12-15 16:01
  • 签到天数: 1 天

    连续签到: 1 天

    [LV.1]初来乍到

    305

    主题

    4701

    帖子

    0

    中级会员

    Rank: 3Rank: 3

    积分
    377
    最后登录
    2023-8-16
    发表于 2012-8-23 16:38:03 | 显示全部楼层

    RE:k53 PIT 中断问题

    你找一下isr_default(void)这个函数在哪个文件里面,这个文件的对应的.h就可以找到了。
    该会员没有填写今日想说内容.
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    开心
    2018-9-14 09:26
  • 签到天数: 2 天

    连续签到: 1 天

    [LV.1]初来乍到

    70

    主题

    329

    帖子

    0

    高级会员

    Rank: 4

    积分
    952
    最后登录
    2021-1-4
     楼主| 发表于 2012-8-28 11:20:28 | 显示全部楼层

    回复:k53 PIT 中断问题

    pit.JPG
    我现在已经可以进入中断了,之前是使能时钟的顺序不对,程序问题
    但是现在我的定时还是不准确,我用的是缺省的FEI,看程序是21MHz的外设时钟,实际只有17MHz左右。
    这是怎么回事?
    PIT计数器用外设总线计数?
     
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    难过
    2021-12-15 16:01
  • 签到天数: 1 天

    连续签到: 1 天

    [LV.1]初来乍到

    305

    主题

    4701

    帖子

    0

    中级会员

    Rank: 3Rank: 3

    积分
    377
    最后登录
    2023-8-16
    发表于 2012-8-28 15:19:22 | 显示全部楼层

    RE:k53 PIT 中断问题

    把你的配置代码发出来看看.注意分频和倍频.
    该会员没有填写今日想说内容.
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    1

    主题

    27

    帖子

    0

    新手上路

    Rank: 1

    积分
    37
    最后登录
    1970-1-1
    发表于 2012-8-29 15:08:15 | 显示全部楼层

    RE:k53 PIT 中断问题

    楼主,怎么没有下文了?
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    开心
    2018-9-14 09:26
  • 签到天数: 2 天

    连续签到: 1 天

    [LV.1]初来乍到

    70

    主题

    329

    帖子

    0

    高级会员

    Rank: 4

    积分
    952
    最后登录
    2021-1-4
     楼主| 发表于 2012-8-29 20:26:38 | 显示全部楼层

    RE:k53 PIT 中断问题

    这两天事太多,没顾得上这个。
    有可能我的K53是次品,随便找的。现在手里这有这两颗,等几天吧,
    我看了资料,典型的20MHz---25MHz(默认的FEI),我实测只有17MHz,
    我在void sysinit (void)中把core_clk_mhz = 21;改成17MHz,串口也正常了。
    我也查了MCG_C3 = 0xff的值和SCFTRIM =1,不知道是不是trim的问题。
    我现在在调其他的模块,也没时间耽搁在这儿
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    开心
    2018-9-14 09:26
  • 签到天数: 2 天

    连续签到: 1 天

    [LV.1]初来乍到

    70

    主题

    329

    帖子

    0

    高级会员

    Rank: 4

    积分
    952
    最后登录
    2021-1-4
     楼主| 发表于 2012-8-29 20:33:07 | 显示全部楼层

    RE:k53 PIT 中断问题

    我没写程序,程序是现成的,原厂程序。
    #if defined(NO_PLL_INIT)
        core_clk_mhz = 20;                      //如果定义不初始化锁相环,则进入 FEI mode
    #else
        /* 增强系统频率   可以在这里设置超频  */
        core_clk_mhz = pll_init(MCG_CLK_MHZ);
    #endif
    我只是定义了一下NO_PLL_INIT
    SIM_CLKDIV1 我也查了,没有对bus clock 分频,就算分频,也分不出17MHz
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    难过
    2021-12-15 16:01
  • 签到天数: 1 天

    连续签到: 1 天

    [LV.1]初来乍到

    305

    主题

    4701

    帖子

    0

    中级会员

    Rank: 3Rank: 3

    积分
    377
    最后登录
    2023-8-16
    发表于 2012-8-30 09:26:07 | 显示全部楼层

    RE:k53 PIT 中断问题

    晶振是多少M的?其实你到时钟配置那算一下大概就能算出出来。
    该会员没有填写今日想说内容.
    回复 支持 反对

    使用道具 举报

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

    本版积分规则

    关闭

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

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

    GMT+8, 2025-7-18 19:09 , Processed in 0.105022 second(s), 31 queries , MemCache On.

    Powered by Discuz! X3.4

    Copyright © 2001-2024, Tencent Cloud.

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