智能车制作

 找回密码
 注册

扫一扫,访问微社区

查看: 1176|回复: 3
打印 上一主题 下一主题

[单片机] K60的PIT中断无法正常开启,急求!

[复制链接]

2

主题

6

帖子

0

精华

注册会员

Rank: 2

积分
88
威望
48
贡献
24
兑换币
24
注册时间
2016-4-13
在线时间
8 小时
毕业学校
nudt
跳转到指定楼层
1#
发表于 2016-4-14 00:07:25 | 只看该作者 回帖奖励 |正序浏览 |阅读模式
在iar下我进行了程序调试
我的部分程序是:
void main()
{
  //关中中断
  DisableInterrupts;
  //硬件初始化
  init();                              
  //SPILCD_Init();
  //初始化投影参数  
  InitProjectPara();   
  //初始化传感器参数
  InitSensorPara();                  
     
  //开总中断
  EnableInterrupts;                  

  //传感器标定z
  speed_Init();
  
  parainit();
  //开PIT0中断
  enable_pit_int(PIT0);
}
其中:
void enable_pit_int(uint8 pitno)
{
        PIT_TCTRL(pitno)|=(PIT_TCTRL_TIE_MASK); //开pit中断
        switch(pitno)
        {
                case 0:
                        enable_irq(68);                              //开接收引脚的IRQ中断
                break;
                case 1:
                        enable_irq(69);                              //开接收引脚的IRQ中断
                break;
                case 2:
                        enable_irq(70);                              //开接收引脚的IRQ中断
                break;
                case 3:
                        enable_irq(71);                              //开接收引脚的IRQ中断
                break;
        }
}
程序上都似乎没有什么问题。在分步调试的时候,enable_pit_int(PIT0);出现了问题,显示:
Target is running,fail to stop the target.Maybe the target need to reset.Try again?
点击yes,自动跳转至crt0.s文件:
          SECTION .noinit : CODE
          EXPORT  Reset_Handler
Reset_Handler                           ;本来是命名为 __startup 的,改为 Reset_Handler  需要修改 vectors.h

         CPSIE   I;
    MOV     r0,#0                   ; Initialize the GPRs     初始化寄存器
        MOV     r1,#0
        MOV     r2,#0
        MOV     r3,#0
        MOV     r4,#0
        MOV     r5,#0
        MOV     r6,#0
        MOV     r7,#0
        MOV     r8,#0
        MOV     r9,#0
        MOV     r10,#0
        MOV     r11,#0
        MOV     r12,#0
                     
    import start
    BL      start               ; call the C code       调用 C语言 编写的 start 函数
__done
        B       __done


        END
分步时,在BL start 这一步调试再次出现上面那条WARNING

求教各位大神,这是怎么回事?这一套程序其他同学的板子可以正常运行,但是我的不可以。但是我的板子在运行一些Keil的历程时能够正常运行,pit也能正常工作。实在困扰太久,求教各位大神!!!!
回复

使用道具 举报

3

主题

52

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
2035
威望
1030
贡献
653
兑换币
686
注册时间
2016-1-28
在线时间
176 小时
毕业学校
青州街职业技术学院
4#
发表于 2016-4-14 18:19:46 | 只看该作者
EnableInterrupts
回复 支持 反对

使用道具 举报

2

主题

6

帖子

0

精华

注册会员

Rank: 2

积分
88
威望
48
贡献
24
兑换币
24
注册时间
2016-4-13
在线时间
8 小时
毕业学校
nudt
3#
 楼主| 发表于 2016-4-14 00:08:38 | 只看该作者
真心求教。。
回复 支持 反对

使用道具 举报

2

主题

6

帖子

0

精华

注册会员

Rank: 2

积分
88
威望
48
贡献
24
兑换币
24
注册时间
2016-4-13
在线时间
8 小时
毕业学校
nudt
2#
 楼主| 发表于 2016-4-14 00:08:22 | 只看该作者
另外,我尝试了将CPSIE i改到底部,然而好像并没有什么用
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-12-26 16:11 , Processed in 0.076446 second(s), 26 queries , Gzip On.

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

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