用51单片机实现外围设备中断

发布者:美好回忆最新更新时间:2017-10-10 来源: eefocus关键字:51单片机  外围设备  中断 手机看文章 扫描二维码
随时随地手机看文章

有5台外围设备,分别为EX1~EX5,均需要中断。现要求EX1与EX2的优先级为高,其他的优先级为低,请用51单片机实现,要求画出电路图并编制程序(假设中断信号为低电平),要执行相应的中断服务子程序WORK1~WORK5。


        org     0000h

        ljmp    main 

        org     0003h 

        ljmp    int0_int


        org     0013h

        ljmp    int1_int 

        org     0030h

main:   mov     sp,#60h


        orl     tcon,#00000101b 

        mov     ie,#10000101b


              mov        ip,#000000001b


        orl     p1,#00011111b


        sjmp    $ 

int0_int: jb    p1.0,work1


          jb    p1.1,work2


          reti 

int1_int: jb    p1.2,work3


          jb    p1.3,work4


          jb    p1.4,work5


          reti


work1:    ......


          reti 

work2:    ...... 

          reti 

work3:    ......


          reti 

work4:    ......


          reti

work5:    ......


          reti

          end


关键字:51单片机  外围设备  中断 引用地址:用51单片机实现外围设备中断

上一篇:什么是中断优先级?中断优先级处理的原则是什么?
下一篇:分析以下几个单片机中断优先级的排列顺序

推荐阅读最新更新时间:2024-03-16 15:40

51单片机如何进行ROM外扩
强烈建议用户尽可能不要考虑外扩程序存储器,如果非扩不可,可以仿照下图所示电路进行扩展 图中P0口输出外部ROM的低8位地址信号,P2口输出高8位地址信号;ALE端输出地址锁存信号,/PSEN输出程序存储器输出使能信号。 两个模块 P89V51RD2单片机内部有64K用户ROM区和8K BOOT ROM区两个模块 两个模块在物理上是分开的,尽管地址重合,但一般不会发生冲突。 用户程序存储区 P89V51RD2内部有64K Flash ROM,不需要用户再进行ROM扩展 地址范围:0000H~FFFFH 其内部分配和其他51系列单片机是相同的 Flash ROM可以反复擦除和下载程序 擦除和编程的方法 并行编程
[单片机]
<font color='red'>51单片机</font>如何进行ROM外扩
MSP430F149中中断优先级问题
1、MSP430F149中UART0的接收中断高于定时器TimerA的中断优先级。但是在程序的调试过程中确发现了不合适的现象。 2、程序调试场景是这样的:定时器计时到1S后,通过UART0向触摸屏写入数据;点击触摸屏后,向单片机上传该处的坐标。设置断点在定时器的某一处,单步运行到该处后,点击触摸屏上的某一点,单击调试的下一步,之后发现程序没有跳转到串口的接收中断程序,而是运行定时器中断程序内的下一行命令。
[单片机]
51单片机的C语言延时的一些总结
在网上搜了一些关于C51单片机C语言的精确延时(相对)的例子和方法 现总结如下: 1,_nop_() 适用于us级的少量延时 标准的C语言中没有空语句。但在单片机的C语言编程中,经常需要用几个空指令产生短延时的效果。 这在汇编语言中很容易实现,写几个nop就行了。 在keil C51中,直接调用库函数: #include // 声明了void _nop_(void); _nop_(); // 产生一条NOP指令 作用:对于延时很短的,要求在us级的,采用 _nop_ 函数,这个函数相当汇编NOP指令,延时几微秒。 NOP指令为单周期指令,可由晶
[单片机]
51单片机简易计算器程序 实现数字的加减乘除运算
单片机源程序如下: #include reg51.h //头文件 #define uint unsigned int #define uchar unsigned char sbit lcden=P1^1; //LCD1602控制引脚 sbit rs=P1^0; sbit rw=P1^2; sbit busy=P0^7;//LCD忙 char i,j,temp,num,num_1; long a,b,c; //a,第一个数 b,第二个数 c,得数 float a_c,b_c; uchar flag,fuhao;//flag表示是否有运算符键按下,fuhao表征按下的是哪个运算符 //flag=1表示运算符键按
[单片机]
<font color='red'>51单片机</font>简易计算器程序 实现数字的加减乘除运算
PPC 405EP在电力监测系统中的应用
1 引言 目前,作为监测系统核心器件的微处理器一般采用高性能单片机、数字信号处理器(DSP)等提高系统的处理速度。但是,随着电力系统监测趋于多功能、智能化、可视化的发展。上述单一的器件已不能完全满足要求。本文介绍了一种新型嵌入式微处理器PPC 405EP以及基于PPC 405EP的电力监测系统,能够满足高实时性、良好的人机交互和多种通信方式要求。 2 PPC 405EP微处理器 20世纪90年代,IBM和Motorola以及Apple公司共同开发了32位/64位PowerPC系列微处理器,主要应用于PC、网络通讯、工业控制领域。PowerPC灵活的体系结构可实现多种专用系统。PPC405EP是IBM/AMCC公司高性能嵌入式
[应用]
AVR PS/2 硬件中断控制程序
/********************************************************************* 目 的: 建立操作PC键盘的示例程序(硬件中断读取PS/2接收到的数据) 目标系统: 基于AVR单片机 应用软件: ICCAVR 版 本: Version 1.0 *********************************************************************/ /*010101010
[单片机]
CPLD与51单片机总线接口程序
CPLD与51单片机总线接口程序 `timescale 1ns/1ns module IO_KZ(Data,P27,WR,RD,ALE,CLR,OUTKEY,OUT30,CS,CS1,LEDCS,OC); inout Data; input WR; input P27; input RD; input ALE; input CLR; input OC; input OUTKEY; output OUT30; output CS; output CS1; output LEDCS; reg LEDCS; reg OUT30; reg CS; wire CS1; //wire Data; reg IOADD; reg Da
[单片机]
什么是中断优先级?中断优先级处理的原则是什么?
中断 优先级是CPU响应中断的先后顺序。中断优先处理的原则是: (1)先响应优先级高的中断请求,再响应优先级低的中断请求。 (2)如果一个中断请求己被响应,同级的其他中断请求将被禁止。 (3)如果同级的多个中断请求同时出现,CPU则按单片机内部的自然优先级顺序响应各中断请求。 单片机内部自然优先级顺序(由高到低)为: 外部中断0→定时器0中断→外部中断l→定时器1中断→串行接口中断。
[单片机]
小广播
添点儿料...
无论热点新闻、行业分析、技术干货……
设计资源 培训 开发板 精华推荐

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

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

换一换 更多 相关热搜器件
随便看看
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved