找回密码
 注册
关于网站域名变更的通知
查看: 387|回复: 3
打印 上一主题 下一主题

单片机蜂鸣器间歇报警程序,怎么改成一直报警

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2019-11-22 15:59 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

EDA365欢迎您登录!

您需要 登录 才可以下载或查看,没有帐号?注册

x
如题% X$ l: }0 E6 t) {
一个超声波测距报警程序,可以设定距离报警阈值。" O) u4 y. A, ^' Z7 O$ v9 P
我把beep = ~beep;         改成beep =0; 后一直报警,但返回报警距离外还是一直报警,数码管显示的距离也停在了报警那里不变化了,请教各位怎样解决,谢谢!. I9 X2 }. {7 p- d6 {. P7 H) B. n
程序如下:) L) c" u* i7 @. i' E  D7 s# M

1 Z0 f; P6 f5 P* g# u$ _6 `/****************报警函数***************/1 k5 v3 a# R) U9 w: d
void clock_h_l()
( l8 a, F; G& a, ^{* ]7 e1 d" c& ?) d/ F* b. f3 N
        static uchar value;
8 @" c4 a- r3 l( e; i! s! n        if(distance <= set_d)
* R; @* \/ j/ N& y: V) X        {
# U7 ]- p4 v# x6 t1 g                value ++;  //消除实际距离在设定距离左右变化时的干扰( w" H' Z$ Z7 ~' s
                if(value >= 2)3 q& t2 T9 T3 t1 s0 v3 K! D
                {/ z. s9 M% |2 U% _5 Y! E7 }  y
                          
3 i% U' Z! N4 r$ l3 l                beep = ~beep;           //蜂鸣器报警        
! q! p: E6 h( c$ T* e                }
+ ?. s& S' O  p* E9 E        }
. a$ {7 Y+ A* o% W" O# W* K8 N$ g        else & @' V) i$ B; z
        {
  `6 Z& S* ?, h  O5 |                value = 0;
1 C) {) ~" {+ g+ A3 n                beep = 1;                //取消报警
6 R0 d# G' u0 P( h0 w% e1 ~1 T. s" J        }        ) p! X8 `  ]' U9 S7 ?/ I- C
}! Q, E! L( h) d7 J0 y5 u0 M
' l2 H/ o, J+ c9 n$ e
/ q5 W# K3 _; u, \. O

该用户从未签到

3#
发表于 2019-12-2 18:49 | 只看该作者
同报警程序无关,需要检查你的报警触发条件

该用户从未签到

4#
发表于 2019-12-2 18:50 | 只看该作者
1 c. R9 o/ d3 ~
可以让蜂鸣器的报警动作只执行一段时间; n; c% x7 n4 W) l1 w2 y
一段时间后让蜂鸣器的脚口恢复到默认电平
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

推荐内容上一条 /1 下一条

EDA365公众号

关于我们|手机版|EDA365电子论坛网 ( 粤ICP备18020198号-1 )

GMT+8, 2025-10-11 20:48 , Processed in 0.156250 second(s), 23 queries , Gzip On.

深圳市墨知创新科技有限公司

地址:深圳市南山区科技生态园2栋A座805 电话:19926409050

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