STC51单片机-中断控制LED-物联网应用系统设计项目开发

简介: STC51单片机-中断控制LED-物联网应用系统设计项目开发

一、说明

单片机中“中断”处理主要是指单片机暂停当前主程序的执行,而去执行更重要或需急迫处理的事件请求的处理程序,处理完成后,再回到主程序暂停处继续执行。这个事件叫“中断源”,发出的中断信号叫“中断请求”,事件处理程序叫“中断处理程序”或“中断服务程序”,暂停主程序的程序位置叫“断点”。


中断技术主要用于实时监测与控制,避免单片机CPU花大量的时间去查询和判断需要处理的事件是否发生。有了中断系统,CPU就可以减少大量的查询时间而去处理其他工作,当事件发生提出处理要求,单片机能及时地响应中断请求源提出的服务请求,并快速响应与及时处理。


单片机对于中断的处理是由中断响应和中断服务二个部分组成。中断响应主要由单片机硬件实现,中断服务主要由软件(中断服务程序)完成。


一个中断源中断请求被响应,须满足以下必要条件:

  • (1)总中断允许开关接通,即IE寄存器中的中断总允许位EA=1。
  • (2)该中断源发出中断请求,即该中断源对应的中断请求标志为“1”。
  • (3)该中断的中断允许位=1,即该中断被允许。
  • (4)无同级或更高级中断正在被服务。

中断响应就是CPU对中断源提出的中断请求的判断和处理,只有满足上述条件时,就进行中断响应。

利用C51设计2个基本的I/O控制程序,编程实现以下功能:

  • 对外部按键的状态读取
  • 对多个按键的判断处理
  • 根据按键进行不同的输出控制LED显示
  • 8个LED的4-6种“花样”显示控制

二、重点

  • 51系列单片机的基本结构特点、引脚功能及其使用的基本方法
  • 掌握keil c51的程序设计特点及方法

三、实现

#include <reg52.h>
sbit INT_0 = P3^2;
sbit P26 = P2^6; 
unsigned  int i=0,count=0;
unsigned char kc1=0x01,kc2=0x0f,kc3=0x03,kc4=0;   //不同中断次数下LED显示的初值
void delay10ms(void)          //约10ms延时子程序(12MHZ),用于防键抖动
   {  unsigned char  i,j,k;    
for(i=5;i>0;i--)   
for(j=4;j>0;j--)  
for(k=248;k>0;k--);  
}
void delay500ms(void)         //约500ms延时子程序(12MHZ),用于显示变化的间隔
   {  unsigned char  i,j,k;   
      for(i=10;i>0;i--)  
for(j=132;j>0;j--)  
for(k=150;k>0;k--); 
}
void main() 
{ EA=1; EX0=1; IT0=1;   //允许/INT0中断,IT0=1为边沿触发
  while(1)
  {   
    switch (count) 
      { case 0:P0=kc1; P26=1;P26=0; kc1<<=1;delay500ms();if (kc1==0) kc1=0x01;break; //0次
        case 1: P0=kc2; P26=1;P26=0;kc2=~kc2;delay500ms(); break;            //1次
        case 2: P0=kc3;P26=1;P26=0;kc3<<=1; kc3<<=1;delay500ms();          //2次
                  if (kc3==0x00) kc3=0x03; break;
        case 3: P0=kc4; P26=1;P26=0; delay500ms();kc4++; break;            //3次
      }
  }
}
void int0(void) interrupt 0     ///INT0中断服务函数
{
  delay10ms();          //防按钮抖动,可根据实际情况调整
  if (INT_0==0)
   { count++;
      if (count==4) count=0;
   }
} 

b7e355d108514c659b15c69dba50841e.png

四、下载

详见:STC51单片机-中断控制LED-物联网应用系统设计项目开发

相关实践学习
阿里云AIoT物联网开发实战
本课程将由物联网专家带你熟悉阿里云AIoT物联网领域全套云产品,7天轻松搭建基于Arduino的端到端物联网场景应用。 开始学习前,请先开通下方两个云产品,让学习更流畅: IoT物联网平台:https://iot.console.aliyun.com/ LinkWAN物联网络管理平台:https://linkwan.console.aliyun.com/service-open
目录
相关文章
|
数据采集 监控 网络协议
​MCP协议深度解析:原理、应用与物联网时代的机遇-优雅草卓伊凡
​MCP协议深度解析:原理、应用与物联网时代的机遇-优雅草卓伊凡
1610 40
​MCP协议深度解析:原理、应用与物联网时代的机遇-优雅草卓伊凡
|
传感器 边缘计算 物联网
淘宝商品详情 API 与物联网技术融合的创新应用探索
在传统电商架构中,商品数据主要存储于云端服务器,但物联网设备的实时数据采集需求催生了边缘计算节点的部署。以智能货架为例,每个货架内置的RFID传感器与重量感应器实时采集商品库存变动数据,通过边缘计算网关进行数据预处理(如去重、异常值过滤),仅将关键信息(如库存低于阈值、商品被频繁拿起)通过淘宝商品详情API同步至云端。这种“边缘过滤+云端聚合”的模式,将数据传输量降低70%以上,同时确保库存数据的秒级更新。
Java 大视界 -- 基于 Java 的大数据实时流处理在工业物联网设备状态监测中的应用与挑战(167)
本文围绕基于 Java 的大数据实时流处理技术,深入探讨其在工业物联网设备状态监测中的应用与挑战。不仅介绍了技术架构、原理和案例,还引入边缘计算技术,提出应对数据质量、性能和安全等问题的策略。
|
存储 监控 安全
工业物联网关应用:PLC数据通过智能网关上传阿里云实战
本文介绍如何使用智能网关将工厂PLC数据传输至阿里云平台,适合中小企业远程监控设备状态。硬件准备包括三菱FX3U PLC、4G智能网关和24V电源。接线步骤涵盖PLC编程口与网关连接、运行状态检测及天线电源接入。配置过程涉及通讯参数、阿里云对接和数据点映射。PLC程序关键点包括数据上传触发和温度值处理。阿里云平台操作包含实时数据查看、数据可视化和规则引擎设置。最后提供常见故障排查表和安全建议,确保系统稳定运行。
1611 1
|
编译器 C语言 开发者
单片机原理与应用:探索微型计算机世界
单片机原理与应用:探索微型计算机世界
296 1
|
数据采集 数据处理 C语言
单片机:探索其原理、应用与编程实践
单片机:探索其原理、应用与编程实践
562 1
|
物联网
STC51单片机-实验开发装置仿真-物联网应用系统设计
STC51单片机-实验开发装置仿真-物联网应用系统设计
394 0
|
物联网
STC51单片机-控制LED闪亮的仿真-物联网应用系统设计
STC51单片机-控制LED闪亮的仿真-物联网应用系统设计
306 0
|
传感器 存储 物联网
单片机的原理与应用
单片机是一种将计算机的CPU、存储器、输入输出接口等功能集成在一块芯片上的微型计算机,被广泛应用于各类控制系统和智能设备中。
1076 5
|
传感器 物联网 C语言
单片机在智能家居中的应用:以LED灯控制为例
单片机在智能家居中的应用:以LED灯控制为例
单片机在智能家居中的应用:以LED灯控制为例