单片机/MCU论坛
直播中

幻昼夜空

4年用户 57经验值
私信 关注
[问答]

为什么八路抢答器蜂鸣器响声不连续?

这是我做的八路抢答器,按下抢答键的时候蜂鸣器响。但是蜂鸣器的响声不是哔~的一声,而是哔..哔。这是什么原因啊,有没有大神教下。
  • mmexport1582952149632.jpg

回帖(4)

小猫猫爱吃鱼

2020-2-29 13:00:19

最佳答案

你好!
在单片机和三极管之间加个 1k 电阻试试看
9 举报
  • 幻昼夜空: 不行,加了电阻之后连声音都没了。应该不是驱动电路的问题吧。只有在按下抢答键时才有这个问题,答题时间结束时连续响两秒都没事。而且按下抢答键时有时可以连续嘟一声有时会断断续续的。
  • 王栋春 回复 幻昼夜空: 是不是你对按键输入信号方式有问题
  • 幻昼夜空 回复 王栋春: at89c51的按键输入不是低电平有效吗
  • 幻昼夜空 回复 王栋春: case 0xfe:  检测到p1.0引脚输入低电平,表示按键1被按下,然后蜂鸣器响1秒。
  • 幻昼夜空 回复 王栋春: 问题找到了,原来是我按下按键之后移动鼠标导致的蜂鸣器响声断断续续,谢谢。
  • 幻昼夜空: switch(P1)//检测哪位选手按下抢答按钮         {                 case 0xfe://1号                 beep = 1;        //蜂鸣器响                 delay50ms(20);                 beep = 0;                         qd_num = 1;//回答选手号为1                         qd_time = 30;                         timeout_num=0;                         InitTimer0();                         work_status = ACK_QD_STATUS;                         break;
  • 幻昼夜空: switch(P1)//检测哪位选手按下抢答按钮         {                 case 0xfe://1号                 beep = 1;        //蜂鸣器响                 delay50ms(20);                 beep = 0;                         qd_num = 1;//回答选手号为1                         qd_time = 30;                         timeout_num=0;                         InitTimer0();                         work_status = ACK_QD_STATUS;                         break;
  • 幻昼夜空: 是我的程序有问题吗
  • 幻昼夜空: 问题找到了,原来是我按下按键之后移动鼠标导致的蜂鸣器响声断断续续,谢谢。

幻昼夜空

2020-2-29 14:05:12
是要加上拉电阻或者加延时函数吗。
举报

houjue

2020-3-3 11:32:00
实践证明【马虎不得】,下次注意就是了。
1 举报

啊李先生

2020-4-18 11:40:20
在单片机和三极管之间加个 470 电阻试试看
举报

更多回帖

发帖
×
20
完善资料,
赚取积分