智能车制作

 找回密码
 注册

扫一扫,访问微社区

查看: 3585|回复: 11
打印 上一主题 下一主题

[咨询] Pit

[复制链接]

7

主题

43

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
487
威望
242
贡献
137
兑换币
118
注册时间
2012-10-24
在线时间
54 小时
跳转到指定楼层
1#
发表于 2013-1-23 10:05:22 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
我看了下pit的例程,发现pit的初始化是关闭了pit中断,另一本书上是打开了,到底怎样算初始化,求解

1、
  void hw_pit_init(uint8 pitno,uint32 timeout)
    {
      SIM_SCGC6|=SIM_SCGC6_PIT_MASK;              //使能PIT时钟
      PIT_MCR&=~(PIT_MCR_MDIS_MASK);              //调试模式下禁止
      PIT_MCR|=PIT_MCR_FRZ_MASK;                  //使能PIT模块时钟
      PIT_LDVAL(pitno)=timeout;                   //设置周期
      PIT_TCTRL(pitno)|=PIT_TCTRL_TEN_MASK;       //使能pit模块运行
      PIT_TCTRL(pitno)&=~(PIT_TCTRL_TIE_MASK);    //关pit中断
    }



2、void PIT_init(void){
   SIM_SCGC6 | = (1<<2);
PIT_MCR = 0X0;
  PIT_LDVAL0=256000;
PIT_TCTRL0 =0X03;
}

6

主题

741

帖子

0

精华

常驻嘉宾

大坏蛋

Rank: 8Rank: 8

积分
3542

优秀会员奖章论坛元老奖章在线王奖章活跃会员奖章

威望
2051
贡献
627
兑换币
193
注册时间
2012-3-11
在线时间
432 小时
2#
发表于 2013-1-23 10:15:20 | 只看该作者
最少单片机的型号的标出来吧。。。。
回复 支持 反对

使用道具 举报

7

主题

43

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
487
威望
242
贡献
137
兑换币
118
注册时间
2012-10-24
在线时间
54 小时
3#
 楼主| 发表于 2013-1-23 10:40:15 | 只看该作者
一毛钱~~~~~~ 发表于 2013-1-23 10:15
最少单片机的型号的标出来吧。。。。

额,我的失误。是k60.
那个,能不能给我讲讲irq中断的知识啊,一直没找到相关资料,它和pit的关系以及在什么地方用啊
谢谢
回复 支持 反对

使用道具 举报

34

主题

337

帖子

0

精华

跨届大侠

Rank: 10Rank: 10Rank: 10

积分
6372

优秀会员奖章活跃会员奖章在线王奖章论坛元老奖章

威望
2947
贡献
1651
兑换币
1488
注册时间
2012-1-8
在线时间
887 小时
4#
发表于 2013-1-23 10:59:16 | 只看该作者
阳光见雨 发表于 2013-1-23 10:40
额,我的失误。是k60.
那个,能不能给我讲讲irq中断的知识啊,一直没找到相关资料,它和pit的关系以及在 ...

你用PIT可以初始化一个时间,当你的定时器到了这个时间你可以触发一个中断,在中断函数里你可以写你的中断函数。一般中断都需要对应的中断向量号,你可以去看几个中断例程就能明白应该怎么用了
回复 支持 反对

使用道具 举报

6

主题

741

帖子

0

精华

常驻嘉宾

大坏蛋

Rank: 8Rank: 8

积分
3542

优秀会员奖章论坛元老奖章在线王奖章活跃会员奖章

威望
2051
贡献
627
兑换币
193
注册时间
2012-3-11
在线时间
432 小时
5#
发表于 2013-1-23 11:01:14 | 只看该作者
阳光见雨 发表于 2013-1-23 10:40
额,我的失误。是k60.
那个,能不能给我讲讲irq中断的知识啊,一直没找到相关资料,它和pit的关系以及在 ...

IRQ的全称是“Interupt ReQuest”,即“中断要求”。当电脑内的周边硬件需要处理 器去执行某些工作时,该硬件就会发出一个硬件信号,通知处理器工作,而这个信号就是IRQ,简单地说是外部中断。。。。。PIT : programmable interval timer 可编程间隔定时器 ,内部中断即软件中断。。。。个人理解,不明正确否。。。。仅供参考、、、
回复 支持 反对

使用道具 举报

7

主题

43

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
487
威望
242
贡献
137
兑换币
118
注册时间
2012-10-24
在线时间
54 小时
6#
 楼主| 发表于 2013-1-23 11:04:02 | 只看该作者
676431432 发表于 2013-1-23 10:59
你用PIT可以初始化一个时间,当你的定时器到了这个时间你可以触发一个中断,在中断函数里你可以写你的中断 ...

谢谢了,我想知道它的中断向量号是怎么确定的,我看龙丘的例程里是68、69、70、71
    这些需要外接吗?
回复 支持 反对

使用道具 举报

7

主题

43

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
487
威望
242
贡献
137
兑换币
118
注册时间
2012-10-24
在线时间
54 小时
7#
 楼主| 发表于 2013-1-23 11:05:22 | 只看该作者
一毛钱~~~~~~ 发表于 2013-1-23 11:01
IRQ的全称是“Interupt ReQuest”,即“中断要求”。当电脑内的周边硬件需要处理 器去执行某些工作时,该 ...

谢谢
回复 支持 反对

使用道具 举报

34

主题

337

帖子

0

精华

跨届大侠

Rank: 10Rank: 10Rank: 10

积分
6372

优秀会员奖章活跃会员奖章在线王奖章论坛元老奖章

威望
2947
贡献
1651
兑换币
1488
注册时间
2012-1-8
在线时间
887 小时
8#
发表于 2013-1-23 12:12:06 | 只看该作者
阳光见雨 发表于 2013-1-23 11:04
谢谢了,我想知道它的中断向量号是怎么确定的,我看龙丘的例程里是68、69、70、71
    这些需要外接吗? ...

不需要,那个向量号是需要查表的,你可以去芯片手册去查查
回复 支持 反对

使用道具 举报

7

主题

43

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
487
威望
242
贡献
137
兑换币
118
注册时间
2012-10-24
在线时间
54 小时
9#
 楼主| 发表于 2013-1-23 13:04:41 | 只看该作者
676431432 发表于 2013-1-23 12:12
不需要,那个向量号是需要查表的,你可以去芯片手册去查查


回复 支持 反对

使用道具 举报

42

主题

1054

帖子

0

精华

常驻嘉宾

Rank: 8Rank: 8

积分
3034

优秀会员奖章活跃会员奖章

QQ
威望
1650
贡献
780
兑换币
625
注册时间
2012-7-6
在线时间
302 小时
10#
发表于 2013-1-23 14:17:21 | 只看该作者
这个看你自己的情况啊 初始化打开的话 就是在总中断开启时PIT也就打开了    你在主程序也可以使能啊  一般总中断在死循环之前,你要PIT在某种条件下开启的话 初始化就不能使能!!!  如果不是在某种条件下开启PIT的话,就可以初始化时就使能      不知道 我说的你懂没?
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-12-27 04:06 , Processed in 0.068765 second(s), 27 queries , Gzip On.

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

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