普中51单片机学习笔记——蜂鸣器

蜂鸣器如果一直在高或低电平是不会发声的,频率要在1.5kHz到5kHz

代码如下

#include "reg52.h"
typedef unsigned int u16;
typedef unsigned char u8;
sbit BEEP=P2^5;
void delay_1(u16 ten){
	while(ten--);
}
void main(){
	u16 i=2000;//调节周期次数
	while(1){
		while(i--)
		{
			BEEP=!BEEP;//让BEEP在0和1之间来回切换
			delay_1(100);//调节频率
		}
		i=0;//不让i变负
		BEEP=0;//可以省略
	}
}

调节声音大小需要把while(i--)里的程序变为如下

            BEEP=0;
            delay_1(50);
            BEEP=1;
            delay_1(150);

调节高电平持续时间,不过可能觉得不明显

如果在测试过程中觉得蜂鸣器过于响,可以按下开关把单片机暂时关一下

相关推荐

  1. 51单片机学习笔记——蜂鸣器

    2024-04-01 10:52:05       29 阅读
  2. 51单片机学习(八)

    2024-04-01 10:52:05       55 阅读
  3. 51单片机学习(七)

    2024-04-01 10:52:05       50 阅读
  4. 51单片机学习笔记——点亮第一个LED

    2024-04-01 10:52:05       40 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-04-01 10:52:05       94 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-04-01 10:52:05       100 阅读
  3. 在Django里面运行非项目文件

    2024-04-01 10:52:05       82 阅读
  4. Python语言-面向对象

    2024-04-01 10:52:05       91 阅读

热门阅读

  1. 多线程面试题

    2024-04-01 10:52:05       31 阅读
  2. Photoshop笔记大全

    2024-04-01 10:52:05       39 阅读
  3. android中include标签

    2024-04-01 10:52:05       34 阅读
  4. 【Go】面向萌新的Gin框架知识梳理学习笔记

    2024-04-01 10:52:05       29 阅读
  5. StatefulSet介绍-更新-扩容缩容-HPA

    2024-04-01 10:52:05       27 阅读
  6. 2024.3.31力扣(1200-1400)刷题记录

    2024-04-01 10:52:05       37 阅读
  7. 著名的分布式数据库

    2024-04-01 10:52:05       30 阅读
  8. 从适用场景看,Spring Boot和Spring的不同

    2024-04-01 10:52:05       38 阅读
  9. Servlet

    Servlet

    2024-04-01 10:52:05      31 阅读
  10. Spring Boot集成Elasticsearch 8.12.2客户端

    2024-04-01 10:52:05       35 阅读