keil5(蜂鸣报警器)

这篇具有很好参考价值的文章主要介绍了keil5(蜂鸣报警器)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

前言

10秒内的报警器,若想增加,可更改代码


详细代码

main.c

#include <REGX52.H>
#include"Twonum.h"
#include"key.h"
#include"Delay.h"

sbit Buzzer=P2^5;      //ÊÓƵΪP3^5

unsigned char keynum;
unsigned int i,s;
void main()
{
	Twonum(3,s);
	while(1)
	{
		keynum=key();
		if(keynum)
		{
			if(keynum==1)
			{
				s+=1;
				Twonum(3,s);
				if(s==10)
				{
					s=0;
					Twonum(3,s);
				}
			}
			if(keynum==2)
			{
				while(1)
				{
					Twonum(3,s);
					Delay(1000);
					Twonum(3,s);
					s--;
					if(s<=0)
					{
						s=0;
						Twonum(3,s);
						while(s==0)
						{
							for(i=0;i<=500;i--)
							{
							Buzzer=!Buzzer;
							Delay(1);
							}
						}
					}
				}
			}
		}
	}
}

 key.c

#include"Delay.h"
#include <REGX52.H>
unsigned char key()
{
	unsigned char keynum = 0;
	if(P3_1==0){Delay(20);while(P3_1==0);Delay(20);keynum=1;}
	if(P3_0==0){Delay(20);while(P3_0==0);Delay(20);keynum=2;}
	if(P3_2==0){Delay(20);while(P3_2==0);Delay(20);keynum=3;}
	if(P3_3==0){Delay(20);while(P3_3==0);Delay(20);keynum=4;}
	return keynum;
}

Twonum.c

#include <REGX52.H>
#include"Delay.h"
unsigned char a[]={0x3F,0X06,0X5B,0X4F,0X66,0X6D,0X7D,0x07,0X7F,0X6F}; 
void Twonum(unsigned char Loc,Num)
{
	switch(Loc)
	{
		case 1:P2_4=1;P2_3=1;P2_2=1;break;  
		case 2:P2_4=1;P2_3=1;P2_2=0;break;
		case 3:P2_4=1;P2_3=0;P2_2=1;break;
		case 4:P2_4=1;P2_3=0;P2_2=0;break;
		case 5:P2_4=0;P2_3=1;P2_2=1;break;
		case 6:P2_4=0;P2_3=1;P2_2=0;break;
		case 7:P2_4=0;P2_3=0;P2_2=1;break;
		case 8:P2_4=0;P2_3=0;P2_2=0;break;
	}
	P0=a[Num];
	Delay(1);
}

Delay.c 

void Delay(unsigned char xms)
{
	unsigned char i, j;
	while(xms--)
	{
		i = 2;
		j = 239;
		do
		{
			while (--j);
		} while (--i);
	}
}

key.h 

#ifndef __KEY_H__
#define __KEY_H__
unsigned char key();
#endif

//ÖжϺ¯Êý
//unsigned int T0Count;
//void Timer0_Routine() interrupt 1
//{
//	TL0 = 0x18;		
//	TH0 = 0xFC;		
//	T0Count++;
//	if(T0Count>=500)
//	{
//		T0Count=0;
//		if(LEDmood==1)
//			P2=_crol_(P2,1);
//		if(LEDmood==2)
//			P2=_cror_(P2,1);
//		if(LEDmood==3)
//			P2=_cror_(P2,0);
//	}
//}

Delay.h 

#ifndef __DELAY_H__
#define __DELAY_H__
void Delay(unsigned char xms);
#endif

Twonum.h 

#ifndef __TWONUM_H__
#define __TWONUM_H__
void Twonum(unsigned char Loc,Num);
#endif

总结

keil5+c语言实现10秒内的报警器,若想增加,可更改代码

 文章来源地址https://www.toymoban.com/news/detail-513138.html

到了这里,关于keil5(蜂鸣报警器)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 定时报警器课程设计(基于单片机)

            定时报警器 设计一个单片机控制的简易定时报警器。要求根据设定的初始值(1-59秒)进行倒计时,当计时到0时数码管闪烁“00”(以1Hz闪烁),按键功能如下: (1)设定键:在倒计时模式时,按下此键后停止倒计时,进入设置状态;如果已经处于设置状态则此

    2024年02月09日
    浏览(42)
  • 基于单片机的家庭防盗报警器设计

    摘 要 II Abstract III 引 言 1 1 系统方案设计 4 1.1 方案论证 4 1.2 项目总体设计 5 2 项目硬件设计 7 2.1 单片机型号的选择 7 2.2 单片机的引脚说明 8 2.3 单片机的最小系统 9 2.3.1 时钟电路设计 9 2.3.2 复位电路设计 10 2.4 红外信号采集及其处理 11 2.5 蜂鸣器电路的设计 12 2.6 发光二极管电

    2024年03月12日
    浏览(51)
  • 基于51单片机的烟雾报警器设计

    硬件方案         火灾报警器采用51单片机为核心控制器,利用气体传感器MQ-2、ADC0809模数转换器、DS18B20温度传感器等实现基本功能。通过这些传感器和芯片,当环境中可燃气体浓度或温度等发生变化时系统会发出相应的灯光报警信号和声音报警信号,以此来实现火灾报警

    2024年02月11日
    浏览(43)
  • 烟感报警器单片机方案开发,解决方案

    烟感报警器也叫做烟雾报警器。烟感报警器适用于火灾发生时有大量烟雾,而正常情况下无烟的场所。例如写字楼、医院、学校、博物馆等场所。烟感报警器一般安装于所需要保护或探测区域的天花板上,因火灾中烟雾比空气轻,更容易向上飘散,安装部位在上方,提高感烟

    2024年02月09日
    浏览(49)
  • 基于MicroPython的智能火灾报警器系统的设计与实现

    最近闲来没事,总结一下自己的一个物联网综合课程设计的内容,将它上传到往上,一方面可以供自己日后的学习和回顾,另一方面希望帮助到其他有需要的人。 基于MicroPython的智能火灾报警器系统的设计与实现 硬件方面:主控板使用的是 ESP-WROOM-32 开发板,另外,传感器使

    2024年02月10日
    浏览(50)
  • 可燃气体报警器检定:保障家庭和工业安全的必要步骤

    随着可燃气体报警器在家庭和工业环境中的广泛应用,确保其正常运行和准确性变得至关重要。可燃气体报警器检定是一项关键的程序,通过对其进行定期检测和校准,来验证其测量准确性和灵敏度,以确保其能够及时、可靠地检测到可燃气体的存在,并发出警报。 前不久,

    2024年02月04日
    浏览(45)
  • 可燃气体报警器校准:法律法规和安全要求的必要措施

    可燃气体报警器是一种重要的安全设备,它能够监测空气中的可燃气体浓度并在超过安全阈值时发出警示。为了确保报警器的准确性、可靠性和合规性,定期校准是非常必要的。 在这篇文章中, 佰德 将介绍一些可燃气体报警器校准的规范以及相关的优质实践,希望对您了解

    2024年01月22日
    浏览(44)
  • 51单片机学习--DS18B20温度读取&温度报警器

    需要先编写OneWire模块,再在DS18B20模块中调用OneWire模块的函数 先根据原理图做好端口的声明: 接下来像之前一样把时序结构用代码模拟出来: 至此,OneWire模块就写好了,接下来在DS18B20模块中模拟数据帧: 之后只需要在main中调用即可 接下来进行一些综合的应用:温度报警

    2024年02月14日
    浏览(48)
  • MCU-51:单片机DS18B20温度报警器

    DS18B20是一种常见的数字温度传感器,其控制命令和数据都是以数字信号的方式输入输出,相比较于模拟温度传感器,具有功能强大、硬件简单、易扩展、抗干扰性强等特点 测温范围:-55°C 到 +125°C 通信接口:1-Wire(单总线) 其它特征:可形成总线结构、内置温度报警功能、

    2024年02月02日
    浏览(51)
  • STM32 Proteus仿真语音播报SGP30火灾报警器温度湿度-0072

    STM32 Proteus仿真语音播报SGP30火灾报警器温度湿度-0072 Proteus 仿真小实验: STM32 Proteus仿真语音播报SGP30火灾报警器温度湿度-0072 功能: 硬件组成:STM32F103C6单片机 +0.960LED显示屏+DHT11温度湿度+电位器模拟SGP30二氧化碳传感器+蜂鸣器LED+串口模拟语音播报+电机模拟电风扇换气+多

    2024年02月16日
    浏览(46)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包