51单片机蜂鸣器

蜂鸣器

蜂鸣器的工作原理

三极管的工作原理

三极管是一种半导体器件,通常由三个掺杂不同的半导体材料层构成。它常用于放大和开关电路中。三极管的工作原理可简述如下:

  1. 放大作用:三极管可以放大电流和电压信号。它的工作原理基于控制一个较大电流或电压的输入信号,来控制另一个电流的输出。这种放大作用是通过控制基极电流来实现的。

  2. 基本结构:三极管通常由发射极、基极和集电极构成。发射极和集电极之间是由一个掺杂较少的基极隔开的。当在基极-发射极之间施加正向电压时,会使得发射极和基极之间的结区扩大,从而导致发射极与集电极之间的电流增加。

  3. 工作原理:当在基极-发射极之间施加一定的电压时,会使得发射极与基极之间的结区导通,从而使得发射极与集电极之间的电流增加。这个过程可以被控制,通过对基极输入的电流或电压的变化来控制输出的电流或电压。

总体来说,三极管的工作原理是基于对不同掺杂层之间的电流和电压的控制,使得它可以被用作放大器、开关、振荡器等电子电路中的重要组件。

蜂鸣器的原理图:给I/0口一个逻辑0那么E级别和B级别的时候就会导通蜂鸣器就会工作反之就不会工作

使用两张简单的图描述

单片机的上拉电阻单片机IO空的电压是很小的无法直接驱动设备工作,单片机不是功率器件只适合做控制用不适合驱动功率器件

蜂鸣器函数实现文件(主要是延时函数)

cpp 复制代码
void Delay(unsigned int xms)		//@11.0592MHz 单片机的系统中int 表示的是16位的,在计算机中是32位或者是64位的
{
	unsigned char i, j;
  while(xms){
		i = 2;
		j = 239;
		do{
		   while(--j);
		}while(--i);
	  xms--;
	}
	
}

蜂鸣器函数头文件(主要运用的是模块化开发实现)

cpp 复制代码
#ifndef __BEER_H_
#define __BEER_H_
void Delay(unsigned int xms);

#endif

主程序代码

cpp 复制代码
#include <REGX52.H>
#include "main.h"
#include <INTRINS.H>
#define unit unsigned int
#define uchar unsigned char 
	
sbit  beep = P2^3;
void main(){
    int temp;
	  temp = 0xf0;
	  P1 = temp;
	  Delay(500);
	  while(1){
		   temp = _crol_(temp,1);
			 P1 = temp;
			// 在低电平和高电平之间来回的切换发出声音
			 beep = ~beep;
			 Delay(500);
		}
}
相关推荐
广药门徒4 小时前
PADS 为什么router里面两元件放置在一个地方不会报错
嵌入式硬件
振浩微433射频芯片6 小时前
433MHz在智能家居中的应用大全(二):智能安防篇——安全不容“信号死角”
网络·单片机·嵌入式硬件·物联网·智能家居
dadaobusi6 小时前
手搓单片机
单片机
xingzhemengyou17 小时前
STM32 CAN总线通信:从原理到实战开发指南
stm32·单片机·嵌入式硬件
辰哥单片机设计8 小时前
STM32项目分享:宠物喂食(蓝牙升级版)
stm32·嵌入式硬件·宠物
FreakStudio8 小时前
MicroPython LVGL基础知识和概念:底层渲染与性能优化
python·单片机·嵌入式·电子diy
Flamingˢ10 小时前
ZYNQ + OV5640 视频系统开发(四):HDMI 显示链路
嵌入式硬件·fpga开发·硬件架构·音视频
LCMICRO-1331084774611 小时前
国产长芯微LDC5141完全P2P替代DAC80501,数模转换器 (DAC)
单片机·嵌入式硬件·fpga开发·硬件工程·dsp开发·数模转换器 dac
普中科技12 小时前
【普中 51-Ai8051 开发攻略】-- 第 9 章 按键控制实验
单片机·嵌入式硬件·开发板·keil·按键·普中科技·ai8051u
曼亿点13 小时前
STM32HAL驱动L298N电机驱动模块(PWM调速+双电机控制)保姆级教程
stm32·单片机·嵌入式硬件