找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 987|回复: 14
收起左侧

这个蜂鸣器电路一通电就响,写这个单片机代码还是会响,怎么办

  [复制链接]
ID:1076325 发表于 2024-4-30 20:43 | 显示全部楼层 |阅读模式
大家好求助一下,

用的是有源+5V供电的蜂鸣器
这个是单片机代码
  1. uint16_t A;
  2. int main(void)
  3. {
  4.         OLED_Init();

  5.         Serial_Init();
  6.          RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOB, ENABLE);        //蜂鸣器
  7.         
  8.     GPIO_InitTypeDef GPIO_InitStructure;
  9.     GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP;
  10.     GPIO_InitStructure.GPIO_Pin = GPIO_Pin_8;
  11.     GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;
  12.     GPIO_Init(GPIOB, &GPIO_InitStructure);                       //蜂鸣器

  13.         while (1)
  14.         {
  15.         Serial_SendByte(A);
  16.                 A++;
  17. Delay_ms(500);
  18.         OLED_ShowNum(1,1,60,3);
  19.                 OLED_ShowNum(2,1,60,3);
  20.             GPIO_ResetBits(GPIOB, GPIO_Pin_8); //设置蜂鸣器引脚为高电平,这个地方设置为SetBits还是会响
  21.         }
复制代码
GPIO_ResetBits(GPIOB, GPIO_Pin_8); // 设置蜂鸣器引脚为高电平,这个地方设置为SetBits还是会响

蜂鸣器

蜂鸣器
回复

使用道具 举报

ID:1076325 发表于 2024-4-30 20:44 | 显示全部楼层
这个电路是不是应该用无源蜂鸣器啊
回复

使用道具 举报

ID:276663 发表于 2024-5-1 07:03 | 显示全部楼层
你单片机是不是3.3V的啊?量量Resetbit   和 Setbit  两种设置 蜂鸣器两边的压差。
回复

使用道具 举报

ID:338503 发表于 2024-5-1 08:19 | 显示全部楼层
用漏电流小的管子如AO3415或继电器就可以了。
回复

使用道具 举报

ID:1076325 发表于 2024-5-1 09:59 | 显示全部楼层
IdeaMing 发表于 2024-5-1 07:03
你单片机是不是3.3V的啊?量量Resetbit   和 Setbit  两种设置 蜂鸣器两边的压差。

是的,是3.3的,好的
回复

使用道具 举报

ID:1076325 发表于 2024-5-1 09:59 | 显示全部楼层
gsr64 发表于 2024-5-1 08:19
用漏电流小的管子如AO3415或继电器就可以了。

怎么用啊
回复

使用道具 举报

ID:59202 发表于 2024-5-1 15:37 | 显示全部楼层
你这个电路用3.3v控制5v不行,换成8050的电路试试
回复

使用道具 举报

ID:883242 发表于 2024-5-1 16:29 | 显示全部楼层
Output_PP肯定不行,输出高电平3.3V管子还会导通,试试open drain。
回复

使用道具 举报

ID:639698 发表于 2024-5-1 16:51 | 显示全部楼层
PB8默认输出高电平,输出低电平试试
回复

使用道具 举报

ID:1076325 发表于 2024-5-1 22:14 | 显示全部楼层
xxxevery 发表于 2024-5-1 15:37
你这个电路用3.3v控制5v不行,换成8050的电路试试

好的,换成了8050成功了
回复

使用道具 举报

ID:916499 发表于 2024-5-2 23:16 来自手机 | 显示全部楼层
把蜂鸣器断开就不响了,拆下来,只要你不通电,它绝对不响
回复

使用道具 举报

ID:373976 发表于 2024-5-3 10:25 | 显示全部楼层
我看下面说是你单片机供电是3V3,那不管你出高电平还是低电平蜂鸣器肯定都会响。你可以在PB8端串进去一个2V稳压管,或者把单片机供电改成5V,再或者把PNP三极管改成NPN三极管。
回复

使用道具 举报

ID:815949 发表于 2024-5-4 15:04 | 显示全部楼层
普通PNP VEB大于0.7V就会导通,3.3V供电的单片机输出高电平也是3.3V, 蜂鸣器的供电VCC是5V, Vbe有2V肯定导通,蜂鸣器就响,改NPN管可以解决
回复

使用道具 举报

ID:1122292 发表于 2024-5-26 12:39 | 显示全部楼层
你这个正常现象,蜂鸣器的供电VCC是5V, Vbe有2V肯定导通,蜂鸣器就会响,你试着改用改NPN管的话就可以了
回复

使用道具 举报

ID:34298 发表于 2024-5-26 16:18 | 显示全部楼层
加一个10k上拉电阻就可以了
回复

使用道具 举报

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

本版积分规则

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

Powered by 单片机教程网

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