找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 3507|回复: 19
收起左侧

单片机+蜂鸣器不响

  [复制链接]
ID:983695 发表于 2021-11-23 13:19 | 显示全部楼层 |阅读模式
刚学单片机,蜂鸣器接在P1^5管脚,不知道为啥不响

用的51最小系统

用的51最小系统

低电平触发的有源蜂鸣器

低电平触发的有源蜂鸣器

代码是这样的

代码是这样的
回复

使用道具 举报

ID:94031 发表于 2021-11-23 14:11 | 显示全部楼层
量一下供电电压够不够。
回复

使用道具 举报

ID:28752 发表于 2021-11-23 14:25 | 显示全部楼层
有源蜂鸣器直接给高低电平,无源蜂鸣器要输出蜂鸣器的谐振频率,一般2-4khz
回复

使用道具 举报

ID:983695 发表于 2021-11-23 14:31 | 显示全部楼层
grb7906 发表于 2021-11-23 14:25
有源蜂鸣器直接给高低电平,无源蜂鸣器要输出蜂鸣器的谐振频率,一般2-4khz

直接给也不响...
回复

使用道具 举报

ID:130230 发表于 2021-11-23 14:42 | 显示全部楼层
用电压表量一下,io引脚的电压。如果为低就证明和程序没关系是蜂鸣器模块的问题。多半是虚焊了,把每个脚都用烙铁出溜一遍。
回复

使用道具 举报

ID:624769 发表于 2021-11-23 14:58 | 显示全部楼层
先做试验, 模块不接单片机, VCC 接5V , GND 接 GND, IO 也接 GND 看看响不响,不响就是模块问题,响得话,再琢磨刷原因:
首先,代码而言,  delay_10us(100); 相当于1ms 对有源蜂鸣器相当的不友好, 即便要让有源蜂鸣器 滴滴滴地 响,一般也要100ms 以上的间隔,不然不说有源蜂鸣器里面震荡电路是否有问题,耳朵都听不出间隔。
回复

使用道具 举报

ID:28752 发表于 2021-11-23 15:04 | 显示全部楼层

直接通电不响,那就是无源蜂鸣器,要给2-4khz信号,单片机输出对应频率一试...
回复

使用道具 举报

ID:254579 发表于 2021-11-23 15:15 | 显示全部楼层
示波器测试一下,BEEP脚频度多少, 电磁式有源蜂鸣器的响应范围是2300+/-300HZ 无源蜂鸣器是靠方波驱动的,频率是1900-4000HZ 不等
回复

使用道具 举报

ID:590050 发表于 2021-11-23 15:28 | 显示全部楼层
grb7906 发表于 2021-11-23 15:04
直接通电不响,那就是无源蜂鸣器,要给2-4khz信号,单片机输出对应频率一试...

正解
回复

使用道具 举报

ID:983867 发表于 2021-11-23 15:37 | 显示全部楼层
频率是1900-4000HZ
回复

使用道具 举报

ID:896483 发表于 2021-11-23 17:02 | 显示全部楼层
你这程序,就算蜂鸣器可以响也只能响一声吧,while循环结束以后你把i置为0
回复

使用道具 举报

ID:980889 发表于 2021-11-23 20:30 | 显示全部楼层
直接都不响的话,确认线路没接错,用万用表量模块排针的焊盘,不排除杜邦线开路或接触不良的情况。
回复

使用道具 举报

ID:944237 发表于 2021-11-23 20:50 | 显示全部楼层
可能是电流不够,用一个驱动模块或者三级管试一下
回复

使用道具 举报

ID:983884 发表于 2021-11-23 21:01 | 显示全部楼层
可能真的是电压不够,或者已经坏了
回复

使用道具 举报

ID:517951 发表于 2021-11-24 08:26 | 显示全部楼层
用示波器或者逻辑分析仪看下单片机port1.5是否有输出脉冲波形, 再单独试下蜂鸣器模块接上电源,输入脚碰下地线是不是有声音。
回复

使用道具 举报

ID:275826 发表于 2021-11-24 09:02 | 显示全部楼层
显然是程序错误造成不响
回复

使用道具 举报

ID:984105 发表于 2021-11-24 09:18 | 显示全部楼层
程序加进去了么
回复

使用道具 举报

ID:385830 发表于 2021-11-24 10:43 | 显示全部楼层
1   蜂鸣器故障。杜邦线接触不良或蜂鸣器坏了;2   程序问题。将20、21行屏蔽,在18行后面添加17、18行语句并将形参改为 10000 试试。
回复

使用道具 举报

ID:397211 发表于 2021-11-24 11:45 | 显示全部楼层
蜂鸣器分有源和无源,无源的是需要2K-4Khz左右的脉冲才能响
回复

使用道具 举报

ID:556568 发表于 2021-11-24 12:08 | 显示全部楼层
你程序I=0,根本进不去循环中,改成I=2000;并且beep=0,不要在循环中,在while外定义初始状态就行
回复

使用道具 举报

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

本版积分规则

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

Powered by 单片机教程网

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