首页 > 其他分享 >51单片机 - 蜂鸣器按键提示音代码

51单片机 - 蜂鸣器按键提示音代码

时间:2024-09-12 22:53:47浏览次数:13  
标签:Buzzer 蜂鸣器 void 51 unsigned 提示音 KeyNum include

作者:王开心

main.c

#include <REGX52.H>
#include "Delay.h"
#include "Key.h"
#include "Nixie.h"
#include "Timer0.h"
#include "Buzzer.h"



unsigned char KeyNum ;



void main()
{
	Nixie(1,0);
	
	while(1)
	{	
	    KeyNum = Key();
		
		if(KeyNum)
		{
			Buzzer_Timer(100);
						
			Nixie(1,KeyNum);
		}
	
	}
}

Buzzer.c

#include "Buzzer.h"
#include "intrins.h"
#include <REGX52.H>




sbit Buzzer = P2^5; //蜂鸣器位声明

/**
  * @brief  蜂鸣器私有延时函数 延时500us
  * @param  无
  * @retval 无
  */

void Buzzer_Delay500us()		//@11.0592MHz
{
	unsigned char i;

	_nop_();
	i = 227;
	while (--i);
}


/**
  * @brief  蜂鸣器发声
  * @param  发生的延时
  * @retval 
  */


void Buzzer_Timer(unsigned int ms)
{
	unsigned int i;

	for(i=0; i<ms*2; i++)
		{
			Buzzer = !Buzzer;
			Buzzer_Delay500us();
		}
}

标签:Buzzer,蜂鸣器,void,51,unsigned,提示音,KeyNum,include
From: https://blog.csdn.net/qq_58662017/article/details/142133702

相关文章

  • 51单片机-AT24C02(IIC总线介绍及其时序编写步骤)-第一节(下一节实战)
    IIC开始通信(6大步)我以前的文章也有对基本常用的通信协议讲解,如SPIUARTIICRS232RS485CAN的讲解,可前往主页查询,(2024.9.12,晚上20:53,将AT24C02存储芯片,掉电不丢失,容量256字节)......
  • 代码随想录算法训练营,9月12日 | 513.找树左下角的值,112. 路径总和,106.从中序与后序遍
    513.找树左下角的值题目链接:513.找树左下角的值文档讲解︰代码随想录(programmercarl.com)视频讲解︰找树左下角的值日期:2024-09-12想法:1.迭代:用层序遍历,遍历每层时记录下第一个节点的值,到最后一层就是要求的值;2.递归:根据最大的深度来找目标值。Java代码如下://迭代classSolut......
  • 今日打卡:洛谷:P1248 加工生产调度/P1251 餐巾计划问题
    昨天虽然打了卡,但是因为时间问题,所以没做题,今天补回来。今天的运势也真服了,我今天没出过门,也不会装逼啊!还有,我不开电脑怎么做题啊?请教问题也找不到人啊!P1248加工生产调度:#include<bits/stdc++.h>usingnamespacestd;structnumber{ intnum,ind; boolsign; boolo......
  • 51c大模型~合集51
    #LLaMA大模型是如何炼成的?本文介绍来自MetaAI的 LLaMa 模型,类似于OPT,也是一种完全开源的大语言模型。LLaMa的参数量级从7B到65B大小不等,是在数万亿个token上面训练得到。值得一提的是,LLaMa虽然只使用公共的数据集,依然取得了强悍的性能。 本文介绍来自MetaAI的LL......
  • P3515
    高效高效分块。here#include<bits/stdc++.h>usingnamespacestd;intn,a[500010];doubledp[500010],sqr[500010];doublew(intj,inti){ returndouble(a[j])+sqr[i-j];}voidwork(intl,intr,intL,intR){ if(l>r)return; intmid=l+r>>1,p; d......
  • 51nod 1720 祖玛
    51nod1720祖玛这又是一个区间dp,但这题又和其他的不一样,这题又用记忆化搜索,但是多学一种方法也没事,但其实用搜索后就模拟即可了。#include<bits/stdc++.h>usingnamespacestd;//定义全局变量intn;//数组长度intdp[505][505];//dp[l][r]表示在区间[l,r]之间的......
  • 51nod 3180 矩阵连乘
    51nod3180矩阵连乘感觉区间dp还是要感性理解,但好像区间有套路的,这和石子合并很像,就根据题意模拟。这个写法的区间比较巧妙,左右同时增加,相当于滑动窗口,因为一开始花费一个是0,所以注意dp的初始化。#include<bits/stdc++.h>usingnamespacestd;intn;......
  • luogu2516题解
    随机说话第一次交的时候写的版本是这个。下面在sum的计算上少了个else,遂出错。以后写的时候还是尽量简单点,主要是调试的时候好调。题目分析题目里面的公共子序列就是可以不连续可以为空的在字符串里出现顺序相同的子串。对于一个公共子序列,在找到最后一个公共的字符的时......
  • Goby 漏洞发布|(CVE-2024-45195)Apache OFBiz /viewdatafile 代码执行漏洞【已复现】
    漏洞名称:ApacheOFBiz/viewdatafile代码执行漏洞(CVE-2024-45195)EnglishName:ApacheOFBiz/viewdatafileCodeExecutionVulnerability(CVE-2024-45195)CVSScore: 8.0漏洞描述:ApacheOFBiz是一个开源企业资源规划(ERP)系统。它提供了一套企业应用程序,集成并自动化企业的......
  • 20240910_104851 mysql 存储过程 2006班
    修改结束符号delimiter新符号创建一个存储过程要求:查询所有的老师信息只显示id与nameDELIMITER$CREATEPROCEDUREshow1()BEGIN SELECTid,NAMEFROMteacher;END$使用存储过程CALLshow1();查看存储过程的创建语句查看名为p1的存储过程的名称showcreatep......