查看: 4162|回复: 4

[分享] KL25Z不进中断函数

[复制链接]

该用户从未签到

5

主题

12

帖子

0

注册会员

Rank: 2

积分
59
最后登录
1970-1-1
发表于 2014-7-10 14:36:09 | 显示全部楼层 |阅读模式
 我的KL25Z怎么进不了中断啊,中断也开了,中断函数也写了,就是进不去啊
void Pit_init(void)
{
  SIM_SCGC6 |= SIM_SCGC6_PIT_MASK;        /*PIT定时器系统时钟使能*/
  enable_irq(INT_PIT-16);                 /*定时器中断向量使能*/
  PIT_MCR=0X00;                           /*标准定时器时钟使能*/
  PIT_TCTRL1=0X00;                        /*定时器的级联位,使能位,中断位全部清除*/
  PIT_LDVAL1=48000;                       //定时器初始值,定时器采用倒计时方式,记到0是产生中断,这里计时PIT_LDVAL1/SYSCLOCK,这里相当于1ms
  PIT_TCTRL1=PIT_TCTRL_TIE_MASK;          //定时器中断使能位使能
  PIT_TFLG1=0X01;                         //中断标志位,标志超时并发送中断请求,向该位写1,即为清除该标志
  PIT_TCTRL1=PIT_TCTRL_TEN_MASK;          //定时器使能位使能
}
 
void Pit1_isr(void)
{
 
 //PIT_TCTRL1=PIT_TCTRL_TEN_SHIFT;          // 关闭定时器  
 PIT_TFLG1=0X01;                          //清除标志位
 
 RED_ON;                                   //红灯亮
 BLUE_ON;                                  //蓝灯亮
// PIT_TCTRL1=PIT_TCTRL_TEN_MASK;
 
}
 
 
在isr.h里也定义了
#ifndef __ISR_H
#define __ISR_H 1
 
extern void tpm0_isr(void);
extern void tpm1_isr(void);
extern void Pit1_isr(void);
 
 
#undef  VECTOR_033
#define VECTOR_033 tpm0_isr
 
#undef  VECTOR_034
#define VECTOR_034 tpm1_isr
 
#undef VECTOR_038
#define VECTOR_038 Pit1_isr
 
 
#endif  //__ISR_H
不知道为什么就是不执行中断,求帮助
回复

使用道具 举报

该用户从未签到

124

主题

3600

帖子

0

金牌会员

Rank: 6Rank: 6

积分
5781
最后登录
1970-1-1
发表于 2014-7-10 15:43:52 | 显示全部楼层

RE:KL25Z不进中断函数

你好,楼主!
一般要使能模块的中断,还要添加enable_irq(xx); 函数来使能外围模块的。
建议你最好去下载FRDM-KL25例程包,参考例程包中的中断函数设置。
FRDM-KL25界面:
https://www.freescale.co
m/zh-Hans/webapp/sps/site/prod_summary.jsp?code=FRDM-KL25Z
回复 支持 反对

使用道具 举报

该用户从未签到

16

主题

705

帖子

0

金牌会员

Rank: 6Rank: 6

积分
1745
最后登录
1970-1-1
发表于 2014-7-11 17:19:33 | 显示全部楼层

RE:KL25Z不进中断函数

总中断开了莫有啊?
没看到你开总中断啊。
回复 支持 反对

使用道具 举报

该用户从未签到

1

主题

802

帖子

0

金牌会员

Rank: 6Rank: 6

积分
1763
最后登录
1970-1-1
发表于 2014-7-18 17:35:17 | 显示全部楼层

RE:KL25Z不进中断函数

恩,  看来还是设置的问题
回复 支持 反对

使用道具 举报

该用户从未签到

11

主题

354

帖子

0

高级会员

Rank: 4

积分
693
最后登录
1970-1-1
发表于 2014-7-22 09:58:01 | 显示全部楼层

回复:KL25Z不进中断函数

楼主还要注意一点:
定时器诸如:PIT、LPTMR、TPM之类的模块都有设置调试状态时他们的counter是如何运行的。
如果设置的不好,他们的counter在调试时是不会增长的,自然就会导致无法进入中断。
回复 支持 反对

使用道具 举报

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

本版积分规则

关闭

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

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

GMT+8, 2025-7-20 11:54 , Processed in 0.088446 second(s), 21 queries , MemCache On.

Powered by Discuz! X3.4

Copyright © 2001-2024, Tencent Cloud.

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