智能车制作

 找回密码
 注册

扫一扫,访问微社区

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

XS128两路PIT为什么不能同时使用?急求!!!谢谢!

[复制链接]

26

主题

96

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1507
威望
824
贡献
283
兑换币
0
注册时间
2012-2-10
在线时间
200 小时
跳转到指定楼层
1#
发表于 2012-2-26 20:20:59 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
代码如下
void PIT_init(void)//定时中断初始化函数  
{
    PITCFLMT_PITE=0; //定时中断通道关
    PITINTE_PINTE0=0;
    PITINTE_PINTE1=0;
******************************************************************************   
    PITMUX_PMUX0=0;
    PITMTLD0=64-1;//8位定时器初值设定,64分频,在64MHzBusClock下,为1MHz。即1us
    PITLD0=250-1;//16位定时器初值设定。PITTIME*1uS  即250us中断一次     
   
******************************************************************************   
    PITMUX_PMUX1=1;
    PITMTLD1=64-1;//8位定时器初值设定,64分频,在64MHzBusClock下,为1MHz。即1us
    PITLD1=50000-1;//16位定时器初值设定。PITTIME*1uS  即50ms中断一次     
   
******************************************************************************
    PITINTE_PINTE0=1;//定时器中断通道0中断使能
    PITINTE_PINTE1=1;//定时器中断通道1中断使能
    PITCE_PCE0=1;//定时器通道0使能
    PITCE_PCE1=1;//定时器通道1使能  
    PITCFLMT_PITE=1;//定时器通道使能   
}  

2

主题

22

帖子

0

精华

高级会员

Rank: 4

积分
901
威望
507
贡献
246
兑换币
91
注册时间
2010-11-10
在线时间
74 小时
推荐
发表于 2012-12-24 09:45:50 | 只看该作者
在中断函数里清中断标志位一定要PITTF=0x01;不是像这样PITTF_PTF0 = 1; 不然两路PIT其实只有1路在工作。
回复 支持 1 反对 0

使用道具 举报

8

主题

148

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
2052

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

威望
1146
贡献
574
兑换币
210
注册时间
2011-4-25
在线时间
166 小时
2#
发表于 2012-3-1 20:51:40 | 只看该作者
把你的中断函数拿出来。这两个好像中断好像不能是整倍数关系吧,我以前也碰到过,不过先把你的中断函数拿来,是不是没有清除标志位
回复 支持 反对

使用道具 举报

12

主题

119

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1295
威望
775
贡献
302
兑换币
35
注册时间
2012-2-22
在线时间
109 小时
3#
发表于 2012-3-2 20:32:41 | 只看该作者
还有这样的问题呀,我正打算用两路PIT呢,可别真不能用呀
回复 支持 反对

使用道具 举报

1

主题

34

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1059
威望
597
贡献
212
兑换币
111
注册时间
2012-2-3
在线时间
125 小时
毕业学校
常州大学
4#
发表于 2012-3-2 20:58:59 | 只看该作者
值得思考一下
回复 支持 反对

使用道具 举报

4

主题

144

帖子

0

精华

高级会员

Rank: 4

积分
987
威望
580
贡献
203
兑换币
33
注册时间
2012-3-5
在线时间
102 小时
5#
发表于 2012-3-28 06:23:28 | 只看该作者
楼主问题解决了吗?我也遇到同样的问题
回复 支持 反对

使用道具 举报

2

主题

22

帖子

0

精华

高级会员

Rank: 4

积分
901
威望
507
贡献
246
兑换币
91
注册时间
2010-11-10
在线时间
74 小时
7#
发表于 2012-12-24 09:50:03 | 只看该作者
1.首先两路PIT同时使用时,在中断函数里清中断标志位一定要使用
PITTF=0x01;
不是像这样PITTF_PTF0 = 1; 不然两路PIT其实只有1路在工作。

回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-12-26 12:31 , Processed in 0.131963 second(s), 28 queries , Gzip On.

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

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