单片机C语言怎么判断上升沿触发
3个回答
展开全部
用一个外部中断,把B=B+1写在中断处理函数中就行了。
追问
我是用红外对管,检测到黑色线的时候为1(其余情况为0),然后B=B+1,但是if(红外对管==1) B=B+1; 是让B无限加下去的···········所以想在上升沿触发的时候做B=B+1,但不清楚能不能这样···
追答
红外检测到黑线的时候是高电平吧。
你可以试一下外部中断,反正也不难。
而且边沿触发方式,CPU响应中断时也会自动清除中断请求标志的。
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
上升沿触发方式 是硬件在初始化的时候,通过程序设置端口的控制方式,直接给寄存器赋值。
只有设置好了后,当外部有上升沿触发中断的时候,就能进行在终端函数里面执行你所说的B=B+1运算。
其实,就是的写一个外部中断函数。不是很难的,有很大相关的参考。。。
只有设置好了后,当外部有上升沿触发中断的时候,就能进行在终端函数里面执行你所说的B=B+1运算。
其实,就是的写一个外部中断函数。不是很难的,有很大相关的参考。。。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询