打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
单片机警报系统(原创)
单片机警报系统(原创)
2010-11-15 19:23

4个开关接到P2.0-P2.3
LED接到P0.0-P0.3
喇叭接到P1.0
参考程序(实验板运行正常)

/*****************************
名称 : 单片机警报系统(原创)
晶振 : 6MHz
作者 : dsu5566
日期 : 2011年11月15日
备注 : 转载请注明出处
*****************************/
#include <REG51.H>
#define uint unsigned int
#define uchar unsigned char

sbit BP=P1^0; //定义喇叭

sbit K1=P2^0; //定义按键
sbit K2=P2^1;
sbit K3=P2^2;
sbit K4=P2^3;

sbit LED1=P0^0; //定义指示灯
sbit LED2=P0^1;
sbit LED3=P0^2;
sbit LED4=P0^3;

void delay(uchar i) //1ms延时程序
{ uint x;
for(;i>0;i--)
for(x=124;x>0;x--);
}

void initTimer(void) //定时器初始化
{
TMOD=0x1;
TH0=0xFF;
TL0=0x6;
}

void timer0(void) interrupt 1//定时器T0
{
TH0=0xFF;
TL0=0x6;
BP=~BP; //1KHz方波信号
}

void main(void)//主程序
{
initTimer();
ET0=1;
EA=1;
while(1)
{
if(P2!=0xFF) //检测按键
   {
   delay(10); //按键消抖
   if(P2!=0xFF)
    {
    P0=P2; //LED显示按键状态
    TR0=1; //开T0发出警报声
    while(P2!=0xFF);//等待按键放开
    TR0=0; //关定时器
    BP=1; //关报警声
    P0=0xFF;//关LED显示
    }
   }
}
}

电路系统

本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
怎样用keil编写4位数码管显示1234的程序
按键分时检测程序
51单片机定时闹钟程序(带按键)
51单片机数码管交通灯程序
[51单片机学习笔记FOUR]
51单片机外部中断的C51编程
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服