智能车制作

 找回密码
 注册

扫一扫,访问微社区

查看: 2480|回复: 8
打印 上一主题 下一主题

[软件类] 大哥大姐们 帮我看看为什么我的程序不能进入中断~简单的程序

[复制链接]

5

主题

26

帖子

0

精华

高级会员

Rank: 4

积分
784
威望
221
贡献
519
兑换币
6
注册时间
2010-3-5
在线时间
22 小时
跳转到指定楼层
#
发表于 2010-4-4 20:43:56 | 只看该作者 回帖奖励 |正序浏览 |阅读模式
1贡献
就是0通道输入捕捉  然后有45个上升沿时LED亮灭求反~
谢谢!!!!





#include <hidef.h>      /* common defines and macros */
#include <MC9S12XS128.h>     /* derivative information */
#pragma LINK_INFO DERIVATIVE "mc9s12xs128"
uchar i=0;
//*****************************setup clock***************************************************//
void PLL_Init(void)
{
  REFDV=1;
  SYNR=2;
  while (!(CRGFLG&0x08));
  CLKSEL=0X80;
}  //make clock=24MHZ
void delay (int x)
{ int a,b;
  for (a=x;a>0;a--)
    for (b=1000;b>0;b--)  ;
}
//****************************定时器使能**************************************************//
void Time_init(void)
  {
  TSCR1=0X90;
  TSCR2=0X03;//预分频为8
  TIOS=0x00;//IOS1为输入捕捉
  TCTL4=0X01;//上升沿捕捉
  TIE=0x01;//允许中断
  }
  

//******************************MAIN*******************************************************//
void main(void) {
  DisableInterrupts;
  DDRE=0xFF;

  PLL_Init();
  Time_init();
  EnableInterrupts;
  for (;;){
  
  }
}
//**************************定时器中断入口*************************************************
#pragma CODE_SEG  NON_BANKED
   interrupt 15 void Time_Catch(void)
  {
    i++;
   
   
   
    if(i==45)
     {
        PORTE_PE6=!PORTE_PE6;
        i=0;
     }
     TFLG1_C0F=1;
   }   

   
   #pragma CODE_SEG DEFAULT

5

主题

8

帖子

0

精华

注册会员

Rank: 2

积分
184
威望
134
贡献
34
兑换币
0
注册时间
2012-4-14
在线时间
8 小时
8#
发表于 2012-6-30 15:38:24 | 只看该作者
TSCR1=0X90;
是不是0x80
回复

使用道具 举报

5

主题

26

帖子

0

精华

高级会员

Rank: 4

积分
784
威望
221
贡献
519
兑换币
6
注册时间
2010-3-5
在线时间
22 小时
7#
 楼主| 发表于 2010-4-5 14:21:39 | 只看该作者
嗯 !谢谢楼上各位  我再试试
回复

使用道具 举报

5

主题

26

帖子

0

精华

高级会员

Rank: 4

积分
784
威望
221
贡献
519
兑换币
6
注册时间
2010-3-5
在线时间
22 小时
6#
 楼主| 发表于 2010-4-5 14:21:34 | 只看该作者
嗯 !谢谢楼上各位  我再试试
回复

使用道具 举报

5

主题

26

帖子

0

精华

高级会员

Rank: 4

积分
784
威望
221
贡献
519
兑换币
6
注册时间
2010-3-5
在线时间
22 小时
5#
 楼主| 发表于 2010-4-5 14:21:32 | 只看该作者
嗯 !谢谢楼上各位  我再试试
回复

使用道具 举报

9

主题

358

帖子

42

精华

金牌会员

Rank: 6Rank: 6

积分
1296
威望
80
贡献
506
兑换币
206
注册时间
2008-9-18
在线时间
355 小时
4#
发表于 2010-4-5 11:06:46 | 只看该作者
这个貌似要调试了吧!PORTE_PE6=!PORTE_PE6;
你原来PORTE_PE6电平时高还是低?e6接led了??为了保险起见if(i==45)最好写成if(i>=45)!再调试一下看看中断是否能进去。

补充内容 (2015-4-23 09:15):
真人游戏|足球篮球|时时彩| 六合投注| 网络赚钱去SO娱乐城:顶级信用,提现百分百即时到账SO.CC

回复

使用道具 举报

5

主题

26

帖子

0

精华

高级会员

Rank: 4

积分
784
威望
221
贡献
519
兑换币
6
注册时间
2010-3-5
在线时间
22 小时
3#
 楼主| 发表于 2010-4-5 10:53:37 | 只看该作者
回复 3# 夜色里的幽魂

呵呵  是老乡  我也是安徽人
不好意思我的中断号写的是8,但是在这上面弄错了,但是8还是不行~
回复

使用道具 举报

4

主题

151

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1335
威望
779
贡献
372
兑换币
346
注册时间
2009-11-28
在线时间
92 小时
2#
发表于 2010-4-4 22:01:37 | 只看该作者
如果你是用  0通道   输入捕捉的话
那么你的中断类型号设置错误了
应该改成
interrupt 8 void Time_Catch(void)
你可以试试
回复

使用道具 举报

6

主题

193

帖子

0

精华

高级会员

Rank: 4

积分
681
威望
448
贡献
151
兑换币
0
注册时间
2010-1-10
在线时间
41 小时
1#
发表于 2010-4-4 21:52:59 | 只看该作者
期待高人~~~~~~
回复

使用道具 举报

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

本版积分规则

关于我们|联系我们|小黑屋|智能车制作 ( 黑ICP备2022002344号

GMT+8, 2024-9-21 22:04 , Processed in 0.144709 second(s), 29 queries , Gzip On.

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

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