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

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

[复制链接]

该用户从未签到

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

EDA365欢迎您登录!

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

x
如题+ i3 j# B& o' Y2 @8 W, E
一个超声波测距报警程序,可以设定距离报警阈值。' c0 i7 y: O; F7 o  ?+ [, _
我把beep = ~beep;         改成beep =0; 后一直报警,但返回报警距离外还是一直报警,数码管显示的距离也停在了报警那里不变化了,请教各位怎样解决,谢谢!
3 J) ^$ R  ^" L+ i, U* A程序如下:9 V% ~" M7 x5 ?, r+ F, F

. h$ r2 I# F" [8 _. y9 D/****************报警函数***************/: l0 ?+ m9 {% w% ~2 H5 r
void clock_h_l()
% n" F2 ?7 W; N" w2 T{1 V9 j1 P4 A* i/ K
        static uchar value;: F4 j+ d3 [# a
        if(distance <= set_d)! @; U% s# L% ~$ a
        {
& L' I% \0 R4 M1 g, p( \                value ++;  //消除实际距离在设定距离左右变化时的干扰
7 u8 ^; `8 l# `) ~1 n                if(value >= 2)4 g7 A' P" a2 s5 X/ I: @
                {
" {: h5 R9 G1 T- |                          
, O; n7 O3 O3 M6 H                beep = ~beep;           //蜂鸣器报警        
9 C2 Q2 _4 w* k. e7 d8 S                }* Y3 B5 f( k. h
        }
7 c8 v7 b7 e8 @, \9 H; a" C, w        else ' Z1 {* d2 c+ s$ y* C6 r
        {
0 k; _8 m" t  J0 O+ M                value = 0;
6 k# |8 H, K6 W7 ?5 B( H: l( ]% h                beep = 1;                //取消报警
$ v; ]0 _- o# X2 P: e8 g. G3 W        }        * Q% o( G5 n- M
}7 E2 o7 e% r( Z" @+ o/ o. V/ L
) i6 K7 M% k3 G) s: [+ X

" b7 u7 {; p& C

该用户从未签到

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

该用户从未签到

4#
发表于 2019-12-2 18:50 | 只看该作者
* ~- p. T; C( V% z6 K9 t
可以让蜂鸣器的报警动作只执行一段时间: X! Q6 J7 {4 e! c3 Q0 ?$ }! c3 t
一段时间后让蜂鸣器的脚口恢复到默认电平
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

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

EDA365公众号

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

GMT+8, 2025-7-26 21:07 , Processed in 0.109375 second(s), 23 queries , Gzip On.

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

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

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