51单片机实验——模拟三台机器故障检测与指示系统

发布者:EternalBliss最新更新时间:2022-09-06 来源: csdn关键字:51单片机  故障检测 手机看文章 扫描二维码
随时随地手机看文章

1.实验题目:

在proteus中模拟实现一个三台机器故障检测与指示系统,如图2所示,当无故障时,LED0 灯亮;当有故障时,LED0 灯灭,1故障(P2.0为0)时,LED1 灯亮,2故障(P2.1为0)时,LED1 灯亮,3 号故障(P2.2为0)时,LED3灯亮。


2.KEIL代码

#include

sbit LED=P1^0;

sbit LED1=P1^1;

sbit LED2=P1^2;

sbit LED3=P1^3;

sbit P20=P2^0;

sbit P21=P2^1;

sbit P22=P2^2;

void INT0_Init() //编写中断初始化函数

{

EA=1;//开启中断总开关

EX0=1;//开启外部中断1

IT0=1;//设定为下降沿触发

}

void main()

{

INT0_Init();

while (1)

{

if(P20==1&&P21==1&&P22==1) {LED=0;LED1=1;LED2=1;LED3=1;}

else LED=1;

}

}

void INT0_Rupt() interrupt 0//编写外部中断0服务函数

{

LED1=P20;

LED2=P21;

LED3=P22;

}


3.Protues仿真图

按键均未按下时LED亮:

按键2按下时,LED灯灭,LED2灯亮

关键字:51单片机  故障检测 引用地址:51单片机实验——模拟三台机器故障检测与指示系统

上一篇:51单片机实验——用定时器0实现流水灯,要求每个led轮流显示1s
下一篇:51单片机实验——按键外部中断实现四进制计数器

推荐阅读最新更新时间:2024-11-09 10:18

51单片机IO口模拟串口通讯的设计
#include sbit BT_SND =P1^0; sbit BT_REC =P1^1; IO 口模拟232通讯程序 使用两种方式的C程序 占用定时器0 #define MODE_QUICK #define F_TM F0 #define TIMER0_ENABLE TL0=TH0; TR0=1; #define TIMER0_DISABLE TR0=0; sbit ACC0= ACC^0; sbit ACC1= ACC^1; sbit ACC2= ACC^2; sbit ACC3= ACC^3; sbit ACC4= ACC^4; sbit ACC5= ACC^5; sbit ACC6= ACC^6; sbit AC
[单片机]
基于AT89C51单片机的无级调光系统的实现
在生活中有很多可以自主调节挡位的设备,比如台灯的亮度、玩具车的速度、风扇的转速等等。它们调节档位的方式各有不同,有些是改变功率,有些是改变动力,但都离不开对激励或输入信号的改变,我们这里简单介绍一下对LED灯的无级调光的实现,可以自己动手做一个可变亮度的小灯。 一、所需器材: AT89C51×1、100Ω定值电阻×1、LED×1、示波器×1、滑动变阻器×1、直流电压表×1、ADC0808×1、500kHz时钟信号×1、+5V直流电源×2。 主要器材介绍:(我们这里只做简单介绍,各接口定义可自行查阅资料——反正这里也用不着) (1)AT89C51:AT89C51是一种带4K字节FLASH存储器(FPEROM—Flas
[单片机]
基于AT89C<font color='red'>51单片机</font>的无级调光<font color='red'>系统</font>的实现
基于STC51单片机的计数器
设计要求:# 写出矩阵键盘的驱动 分别按下对应的键。数码管会将键盘对应的值累加并显示 设计概述:#   按照设计要求,所需要的单片机芯片为STC89C52,所用的硬件工具是由华清远见开发的基于STC89C52的智能小车。该小车配备所需要的矩阵按键模块和数码管模块,矩阵按键模块由P3口控制,数码管模块位选P2.7口控制,段选由P2.6口控制,数字显示由P0口控制。STC89C52是一种低功耗,高性能的8位微控制器,是加强版的80C51单片机。 矩阵键盘:4x4矩阵键盘共有16个按键,每个按键的左端都连接在一根线上形成行线,每个按键的右端也都连接在一根线上形成列线。P3口的低4位分别于行线连接,高4位分别与列线连接。通过扫
[单片机]
基于STC<font color='red'>51单片机</font>的计数器
51单片机学习:LED闪烁实验
实验名称:LED闪烁实验 接线说明: 实验现象:下载程序后“LED模块”的D1指示灯闪烁 注意事项: ***************************************************************************************/ #include reg52.h typedef unsigned int u16; //对系统默认数据类型进行重定义 typedef unsigned char u8; sbit LED1=P2^0; //将P2.0管脚定义为LED1 /**********************************************************
[单片机]
学习笔记之-51单片机中断
1.中断的概念 通俗的讲,中断就是cup正在工作的时候,突然外部来了某一请求,要求cpu转去处理请求的事件,当事情做完之后cup再回来继续它的工作。这一过程称为中断 。 单片机中断响应可以分为以下几个步骤: 1、停止主程序运行。当前指令执行完后立即终止现行程序的运行; 2、保护断点。把程序计数器PC 的当前值压入堆栈,保存终止的地址(即断点地址),以便从中断服务程序返回时能继续执行该程序; 3、寻找中断入口; 4、执行中断处理程序; 5、中断返回。执行完中断处理程序后,就从中断处返回到主程序,继续往下执行。 流程图如下:     中断技术不仅解决了快速主机与慢速I/O设备的数据传送问题,而且还具有如下优点: 分时操作:CP
[单片机]
学习笔记之-<font color='red'>51单片机</font>中断
51单片机可以做什么实用的产品?
我用51的单片机做过不少于10款产品了。 我看到很多文章,说51已经过时了,新手没必要学习51单片机,可以直接学STM32。 我个人认为这种说法存在一定的误导, 51还是有很大的市场 。 很多人想从事嵌入式单片机开发,觉得这个行业会随着物联网和5G等技术的发展,前景越来越好。 但是又不知道从哪里入手,该学习哪个单片机,别人都说现在主流是用STM32,你就随波逐流去学习STM32。 但是却 忽略了一个很重要的前提,就是你的基础 。 每个人的基础都不一样,很多人没什么学历,也是从别的行业转过来的,很多连c语言基本语法和电路基础都不懂。 这个时候去学习stm32属于跨级打怪了,能学会学好才怪。 这就是为什么我们无际单片机编程对每个新加入
[单片机]
51单片机定时器中断_51单片机中断系统_51单片机扩展中断的四种方法
  中断是为使单片机具有对外部或内部随机发生的事件进行处理而设置的。51单片机有5种中断源,即有5种对应的情况发生时会使单片机去处理中断程序(中断函数)。   此篇主要整理定时器中断笔记。采用定时器中断会涉及中断寄存器,定时器/计数器相关寄存器(TCON,TMOD),中断函数等知识点。   其中,中断寄存器,定时器/计数器相关寄存器本身或者相关位用来做初始化,中断函数的内容主要是体现发生中断后所需要的操作(在中断函数内写代码)。   1.中断允许寄存器IE      图1.中断寄存器IE   中断寄存器用来设定各个中断源的打开和关闭,IE在特殊功能寄存器中,字节地址为A8H,位地址(由低位到高位)分别是A8H~AFH
[单片机]
<font color='red'>51单片机</font>定时器中断_<font color='red'>51单片机</font>中断<font color='red'>系统</font>_<font color='red'>51单片机</font>扩展中断的四种方法
Keil C51单片机变量的使用方法详细介绍
引言 8051内核单片机是一种通用单片机,在国内占有较大的市场份额。在将C语言用于51内核单片机的研究方面,Keil公司做得最为成功。由于51内核单片机的存储结构的特殊性,Keil C51中变量的使用与标准C有所不同。正确地使用变量,有利于获得高效的目标代码。下面详细介绍Keil C51中变量的使用方法。 1 CPU存储结构与变量的关系 变量都需要有存储空间,存储空间的不同使得变量使用时的工作效率也不同。 标准C的典型运行环境是8086(含IA-32系列)内核,其存储结构是CPU内部有寄存器,外部有存储器,寄存器的访问速度大大高于存储器的访问速度。在标准C中,不加特别定义的变量是放在存储器中的,使用register可以强制变量
[单片机]
Keil C<font color='red'>51单片机</font>变量的使用方法详细介绍
小广播
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved