IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 嵌入式 -> Step2:【C51】蜂鸣器发声实验 -> 正文阅读

[嵌入式]Step2:【C51】蜂鸣器发声实验

S t e p 2 Step2 Step2 :【C51】蜂鸣器发声实验

蜂鸣器简介

①按驱动方式的不同。可分为有源蜂鸣器和无源蜂鸣器。

有源蜂鸣器内部有振荡电路,能将恒定的直流电转化成一定频率的脉冲信号,从而引起磁场交变,带动振动膜片振动发音。因此它工作的理想信号是直流电,一旦供电,蜂鸣器就会发出声音。

无源蜂鸣器内部不带震荡源,如果提供直流信号,因为磁路恒定,振动膜片不能振动发音,蜂鸣器不工作。因此,它工作的理想信号是方波,方波的频率不同,发出的声音也不同。

②按构造方式的不同。可分为电磁式蜂鸣器和压电式蜂鸣器。

电磁式蜂鸣器由振荡器、电磁线圈、磁铁、振动膜片及外壳等组成。接通电源后,振荡器产生的音频信号电流通过电磁线圈,使电磁线圈产生磁场,振动膜片在电磁线圈和磁铁的相互作用下,周期性地振动发声。

压电式蜂鸣器主要由多谐振荡器、压电蜂鸣片、阻抗匹配器及共鸣箱、外壳等组成。多谐振荡器由晶体管或集成电路构成,当接通电源后(1.5~15V 直流工作电压),多谐振荡器起振,输出 1.5~5kHZ 的音频信号,阻抗匹配器推动压电蜂鸣片发声。

即想要电磁式蜂鸣器发声, 只需提供电源即可;想要压电式蜂鸣器发声, 需提供一定频率的脉冲信号;

硬件设计

因为 51 单片机 IO 口的驱动能力较弱,而蜂鸣器驱动需要约 30mA,所以非常困难。因此我们不会直接使用 IO 口驱动蜂鸣器,而是通过三极管把电流放大后再驱动蜂鸣器,这样51单片机的 IO 口只需要提供不到 1mA 的电流就可控制蜂鸣器。 所以我们也经常说到 51 单片机芯片是用来做控制的,而不是驱动。

蜂鸣器发声实验

在我所使用的开发板中,使用的是无源蜂鸣器,需要一定频率的脉冲才会发声。蜂鸣器控制管脚直接连接到 51 单片机的P1^5口上。并有一个PNP 三极管起到电流放大作用,从而可以驱动蜂鸣器。

#include<reg52.h>
void delay(int times);//延时函数
sbit beep=P1^5;//蜂鸣器控制管脚连接到 51 单片机的P1^5口上。
void main()
{
	while(1)
	{
		 beep=1;
		 delay(1000);//延时约为1s,
        			 //蜂鸣器发出声音的时间间隔不同,频率就不同,所发出的声音也就不同。
        			 //根据这一原理,可通过改变蜂鸣器发声和停止发声的时间间隔,发出不同频率的声音。
		 beep=0;
		 delay(1000);
	}
}
void delay(int times)
{
	times=times*10000;
	while(times--);
}

扩展实验–灯光报警器(LED&蜂鸣器)

要求:在LED跑马灯的基础上附加要求:当LED3点亮时,蜂鸣器发出声音,报警;LED3熄灭时,蜂鸣器停止发声。

PS:LED跑马灯

#include<reg52.h>
#include<intrins.h>//进行移位操作的头文件
sbit beep=P1^5;//蜂鸣器控制管脚连接到 51 单片机的P1^5口上。
void delay(int times);
void main()
{
	int i;
	while(1)
	{
		 P2=0xFE;//P2口的8个引脚被赋值成1111,1110,代表只有P2^0口是低电平,其余都是高电平。
                 //即只有LED0亮,其余LED灯处于熄灭状态。 
                 //8个引脚与0xFE的2进制分别对应!
		 for(i=0;i<8;i++)
		 {
		  	P2=_crol_(P2,1);//每次循环左移一位。
			if(P2==0xF7)//P2=11110111,如果LED3亮(即第四个LED灯亮起时),蜂鸣器报警
			{
				beep=1;
				delay(500);
				beep=0;//蜂鸣器停止发声
			}
			delay(1000);
		 }
	}
}
void delay(int times)
{
	times=times*10000;
	while(times--);
}

补充知识

①NPN型三极管、PNP 型三极管
在这里插入图片描述

C:集电极 c o l l e c t o r collector collectorB:基极 b a s e base baseE:发射极 e m i t t e r emitter emitter

开关特性

对NPN型三极管,只要B极电压比E高0.7V以上,E、C之间就可以导通。所以NPN为高电平导通,低电平截止。

对PNP型三极管,只要E极电压比B高0.7V以上,E、C之间就可以导通。所以PNP为低电平导通,高电平截止。

三种工作状态

(1)截止:

截止条件:对NPN,低电平为截止状态;对PNP,高电平为截止状态。

截止状态下,各电极的电流几乎为0,E极和C极互不相通,相当于一个断开的开关。E、C极电压近似于电源电压。

(2)放大:

放大条件:对NPN: U C > U B > U E U_C>U_B>U_E UC?>UB?>UE?;对PNP: U E > U B > U C U_E>U_B>U_C UE?>UB?>UC?

I B I_B IB? I C I_C IC?近似于线性关系, I B I_B IB?微小的变化就能引起 I C I_C IC?较大的变化。

(3)饱和:

饱和条件:对NPN: U B > U E U_B>U_E UB?>UE? U B > U C U_B>U_C UB?>UC?;对PNP: U B < U E U_B<U_E UB?<UE? U B < U C U_B<U_C UB?<UC?

当B、E极间的电流增大到某一值后,E、C极间电流将不再变化,就称三极管达到了饱和状态。此时 I B I_B IB?的变化对 I C I_C IC?的影响很小,两者不成比例。饱和状态下E极和C极间电压值很小,通常硅管约为0.3V,若忽略不计,则E极和C极之间相当于短路,即相当于一个闭合的开关。

三张图让你弄懂三极管截止状态、放大状态和饱和状态

三极管工作原理及三种基本工作状态

  嵌入式 最新文章
基于高精度单片机开发红外测温仪方案
89C51单片机与DAC0832
基于51单片机宠物自动投料喂食器控制系统仿
《痞子衡嵌入式半月刊》 第 68 期
多思计组实验实验七 简单模型机实验
CSC7720
启明智显分享| ESP32学习笔记参考--PWM(脉冲
STM32初探
STM32 总结
【STM32】CubeMX例程四---定时器中断(附工
上一篇文章      下一篇文章      查看所有文章
加:2021-07-30 12:54:10  更:2021-07-30 12:54:24 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年5日历 -2024/5/1 11:04:52-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码