标题: 萌新求教关于一个简易门铃的单片机程序问题 [打印本页]

作者: 明日香    时间: 2020-7-16 16:50
标题: 萌新求教关于一个简易门铃的单片机程序问题
本帖最后由 明日香 于 2020-7-17 15:36 编辑



这是完整的程序
请问下图这一段程序里n是什么?n每次加一的时间是多少?为什么要判断n等于两千呢?以及为什么要判断flag等于0?


还有下图这一段程序:ding++和dong++是什么意思?有什么作用呢?

谢谢各位大佬们指教,萌新实在没看懂,谢谢!


作者: xxpp2011    时间: 2020-7-16 22:38
无图无程序,解释不了哦
作者: 权威人物    时间: 2020-7-17 09:31
小兄弟图呢?无图言*
作者: 明日香    时间: 2020-7-17 15:37
xxpp2011 发表于 2020-7-16 22:38
无图无程序,解释不了哦

加上图了,大佬能帮忙看一下吗?
作者: 权威人物    时间: 2020-7-18 11:06
你这真的够小白的,250us这么大的备注没看到吗?250*n ==> n=2000时 ==> 2000*250us=500000us=0.5s,n是用来计算时间的。
flag、 ding  和 dong 都是标志位,组合控制声响,按键按下时flag=0,n从0开始计算到2000,即为0.5s,在这0.5s内  ding++,每次加到一即if(ding==1),翻转一次IO口,直到n到达2000时,此时满足if(n==2000)和if(flag==0)进入flag=~flag,即flag=1,n=0,n重新计数到2000,此时flag=1则进行dong++,每加到dong==2时,IO口翻转一次。直到n加到2000,同样是0.5s,然后关闭定时器等待下一次按键按下。为什么这么设计呢?了解无源蜂鸣器工作。




欢迎光临 (http://www.51hei.com/bbs/) Powered by Discuz! X3.1