智能车制作

标题: 增强型捕捉定时器中断问题 [打印本页]

作者: wys398d    时间: 2009-5-23 16:07
标题: 增强型捕捉定时器中断问题
增强型捕捉定时器中断是不是只有在输入捕捉下才能出发中断,还是,输出比较也能触发中断!
作者: zdhly0401    时间: 2009-5-23 17:04
输出比较也能触发中断!
作者: riyakiss    时间: 2009-5-23 17:31
都可以触发中断,芯片手册上说的很清楚的,看看就知道了!
作者: zhizhi    时间: 2010-3-7 09:54
就是
作者: cqqjliyuan    时间: 2010-3-11 10:24
ddddddddddddddd
作者: xiaokk    时间: 2010-3-11 11:15
输入捕捉于输出比较都可以触发中断,输入捕捉的中用来计算断可以用来捕捉事件或信号发生时刻,还可以用来计算输入信号的周期和脉宽。
作者: gimmooncher    时间: 2010-3-16 20:20
书上都有,北京航空航天大学出版的那本书不错!
作者: jiao19880804    时间: 2010-3-19 21:18

作者: xiaohaipolang    时间: 2010-3-20 11:21
切实
作者: nigel1946    时间: 2010-3-25 14:35
dddddddddd
作者: hex    时间: 2010-4-3 11:04
学习    都很厉害啊
作者: bj_dongnan123    时间: 2010-4-3 23:51
输出比较也能触发中断
作者: zhangqiangfei    时间: 2010-4-8 00:19
都可以,但是在一个时刻,端口只能工作在输入捕捉或是输出比较模式下
作者: 锦芫    时间: 2010-4-19 20:11
[调试类] 定时器中计数器计数问题
计数器, 定时器
main里面
for(;;)
{
   PORTB=0X00;
   if(count==300)
      {
         count=0;
         PORTB=0xfa;
         while(count<400);count=0;

       }
}
其中count为定时器0的中断函数中的计数变量每中断一次自加1,PB口已定义为输出
但是程序执行到while(count<400);count=0;这步就一直在中断里运行,PORTB口接出的小灯在显示0x00值之后只有显示的一直显示0xfa的值,请问为什么会这样?
while(count<400);count=0;这条语句不是当count大于400后退出吗?但是在if语句里面就不行了?
我知道是   if(count==300)这句语句中的count==300的原因,但是想不明白,各位大虾帮小弟解解惑吧!谢谢了!


收藏 分享  
让车子飞起来!
孙晨曦 开通了自己的个人主页
回复 引用 报告 使用道具

  

justing88 发短消息
加为好友
justing88 当前离线

UID11197 帖子66 精华0 积分304 阅读权限30 来自浙江 在线时间20 小时 注册时间2009-11-4 最后登录2010-4-19   
中级会员



帖子66 积分304 威望109  金钱4  贡献35  学校浙江理工大学 注册时间2009-11-4
2#
发表于 4 天前 22:26 | 只看该作者
你if 语句进入之后,count变为0,之后while()语句一直是成立的,成立了之后,一直在做分号,就做不下去了

your mind matters
回复 引用 报告 使用道具 TOP

  

时代还怪 发短消息
加为好友
时代还怪 当前离线

UID14074 帖子131 精华0 积分703 阅读权限50 在线时间28 小时 注册时间2010-1-11 最后登录2010-4-19   
高级会员



帖子131 积分703 威望208  金钱10  贡献89  学校广东海洋大学 注册时间2010-1-11
3#
发表于 3 天前 11:21 | 只看该作者
你if 语句进入之后,count变为0,之后while()语句一直是成立的,成立了之后,一直在做分号,就做不下去了
justing88 发表于 2010-4-15 22:26



    但是不是在中断里count一直在计数加1,当加到400后不是就退出while()了吗?但是就退不出去,想不明白这里!

让车子飞起来!
回复 引用 报告 使用道具 TOP

  

justing88 发短消息
加为好友
justing88 当前离线

UID11197 帖子66 精华0 积分304 阅读权限30 来自浙江 在线时间20 小时 注册时间2009-11-4 最后登录2010-4-19   
中级会员



帖子66 积分304 威望109  金钱4  贡献35  学校浙江理工大学 注册时间2009-11-4
4#
发表于 3 天前 14:12 | 只看该作者
回复 3# 时代还怪


    你永远也无法加到400的,因为当你加到300的时候,你就进入IF语句,然后执行count=0;把count变为0了,之后在中断里加,加到300后又重复相同的动作,所以while语句一直是成立的,因此就一直在做分号

your mind matters
回复 引用 报告 使用道具 TOP

  

huachou 发短消息
加为好友
huachou 当前离线

UID17406 帖子250 精华0 积分510 阅读权限50 在线时间11 小时 注册时间2010-3-19 最后登录2010-4-19   
高级会员



帖子250 积分510 威望250  金钱4  贡献48  学校重庆理工大学 注册时间2010-3-19
5#
发表于 昨天 19:35 | 只看该作者
楼上的说的对


回复 引用 报告 使用道具 TOP

  

锦芫 发短消息
加为好友
锦芫 当前在线

UID11523 帖子119 精华0 积分215 阅读权限30 来自哈尔滨 在线时间9 小时 注册时间2009-11-12 最后登录2010-4-19   
中级会员



帖子119 积分215 威望180  金钱4  贡献3  学校华北电力 注册时间2009-11-12
6#
发表于 5 分钟前 | 只看该作者
学习
作者: ziyou4533    时间: 2010-8-6 16:56
回复 10# nigel1946


   ddddddddd




欢迎光临 智能车制作 (http://dns.znczz.com/) Powered by Discuz! X3.2