智能车制作

 找回密码
 注册

扫一扫,访问微社区

查看: 1544|回复: 6
打印 上一主题 下一主题

关于PIT定时的问题

[复制链接]

6

主题

103

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1013
威望
401
贡献
256
兑换币
148
注册时间
2013-7-19
在线时间
178 小时
跳转到指定楼层
1#
发表于 2013-11-15 19:01:20 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
PIT不是有8个独立的定时通道么?  
我设置了两个中断,要是我让其中一个中断进入了一个死循环,如何做到不影响另一个通道定时呀?
比如下面这样:
#pragma CODE_SEG __NEAR_SEG NON_BANKED   
interrupt 66 void PIT0(void){
  
  PITTF=0x01;   
for(;;){   
a++;  }  
}
interrupt 67 void PIT1(void){
   PITTF=0x02;   
  c++;
}
#pragma CODE_SEG DEFAUL   

32

主题

256

帖子

0

精华

常驻嘉宾

Rank: 8Rank: 8

积分
3807
威望
2179
贡献
1054
兑换币
888
注册时间
2012-11-6
在线时间
287 小时
2#
发表于 2013-11-15 19:18:20 | 只看该作者
如果你用的芯片是XS128 那么PIT只有4个独立的通道。四个独立的通道工作室是不影响的,你在中断服务函数里面设置死循环,请问中断函数还有什么意义?  但是我想这样也是可以做到的,在PIT0死循环的条件下,你可以测试c值得变化。
回复 支持 反对

使用道具 举报

6

主题

103

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1013
威望
401
贡献
256
兑换币
148
注册时间
2013-7-19
在线时间
178 小时
3#
 楼主| 发表于 2013-11-15 19:38:30 | 只看该作者
我测试了,上面哪个进入了死循环之后a一直在加,但是c的值没有改变
回复 支持 反对

使用道具 举报

6

主题

103

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1013
威望
401
贡献
256
兑换币
148
注册时间
2013-7-19
在线时间
178 小时
4#
 楼主| 发表于 2013-11-15 19:38:57 | 只看该作者
小杨木叶 发表于 2013-11-15 19:18
如果你用的芯片是XS128 那么PIT只有4个独立的通道。四个独立的通道工作室是不影响的,你在中断服务函数里面 ...

我测试了,上面哪个进入了死循环之后a一直在加,但是c的值没有改变,这是为什么呢?

回复 支持 反对

使用道具 举报

32

主题

256

帖子

0

精华

常驻嘉宾

Rank: 8Rank: 8

积分
3807
威望
2179
贡献
1054
兑换币
888
注册时间
2012-11-6
在线时间
287 小时
5#
发表于 2013-11-16 10:24:56 | 只看该作者
wenshuai536 发表于 2013-11-15 19:38

实践证明,在那个设置死循环的中断服务函数里面跳不出来,一直在占用CPU资源,无法进如另一个中断服务函数。你应该看一下中断 机制在CPU内部是怎么执行的。。。
回复 支持 反对

使用道具 举报

6

主题

103

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1013
威望
401
贡献
256
兑换币
148
注册时间
2013-7-19
在线时间
178 小时
6#
 楼主| 发表于 2013-11-16 10:39:51 | 只看该作者
小杨木叶 发表于 2013-11-16 10:24
实践证明,在那个设置死循环的中断服务函数里面跳不出来,一直在占用CPU资源,无法进如另一个中断服务函数 ...

额,诺诺的问下,应该怎么看他的中断机制?   手册吗?  全是英文呀
回复 支持 反对

使用道具 举报

32

主题

256

帖子

0

精华

常驻嘉宾

Rank: 8Rank: 8

积分
3807
威望
2179
贡献
1054
兑换币
888
注册时间
2012-11-6
在线时间
287 小时
7#
发表于 2013-11-16 10:55:11 | 只看该作者
wenshuai536 发表于 2013-11-16 10:39
额,诺诺的问下,应该怎么看他的中断机制?   手册吗?  全是英文呀

我想说你都不了解中断机制,你怎么理解中断的执行过程。中断机制都是一样的,你到网上百度中断的执行过程,看看中断信号是怎么产生的,CPU又是怎么处理的。。。
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-6-18 09:07 , Processed in 0.037057 second(s), 25 queries , Gzip On.

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

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