找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 4394|回复: 5
打印 上一主题 下一主题
收起左侧

单片机无源蜂鸣器如何响一声自动关闭问题

[复制链接]
跳转到指定楼层
楼主
ID:473504 发表于 2020-4-28 16:08 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
void main()
{        
  unsigned char i;
  for (i=0;i<10;i++)
   {
   delayms(50);        
   beep=~beep;                 //BEEP取反
   }
beep=1;                      //关闭蜂鸣器,蜂鸣器低电平触发。
}



这个是程序,也才是过确定是无源蜂鸣器,但是跑的时候就是一直响,停不下来。各位能否给点建议呢?

分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖 顶 踩
回复

使用道具 举报

沙发
ID:584814 发表于 2020-4-28 16:19 | 只看该作者
beep=1;   后面加
while(1)就可以否则main()主体会循环。
回复

使用道具 举报

板凳
ID:15020 发表于 2020-4-28 16:39 | 只看该作者
beep = 1;下面放一条while(1);语句
回复

使用道具 举报

地板
ID:94031 发表于 2020-4-28 16:48 | 只看该作者
你的蜂鸣器是通电就一直响,停电就不响,你可以先通电,再延时,然后断电,实现响一声自动关闭。
回复

使用道具 举报

5#
ID:89217 发表于 2020-4-28 16:59 | 只看该作者
你的程序while(1)去哪了??
回复

使用道具 举报

6#
ID:311846 发表于 2020-4-29 09:58 | 只看该作者
无源的蜂鸣器一般用PWM做,你这个程序没有while语句,那么他执行完beep=1;  后,单片机会从main()再次进入函数,一直循环执行
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

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