6.1 输入/输出 6.2 CPU与外设数据传送方式 6. 3 MCS-51中断系统 6. 4 中断应用举例

Slides:



Advertisements
Similar presentations
5.1 中断的概述 5.2 MCS - 51中断系统 5.3 中断系统的应用
Advertisements

主讲人:刘利 交通大学网络控制课程系列 上海交通大学机电控制研究所 交通大学网络控制课程系列 考试课、专业基础课、必修课
第7章 AT89S51单片机的 串行口 1.
6 单片机的中断与定时系统 I/O设备必须通过I/O接口与计算机连接。 I/O接口的功能: 1.速度匹配: 锁存数据、传送联络信号。
项目二 中断应用系统设计 本项目学习目标: (1)制作一个单片机控制的彩灯电路。 (2) 理解中断的基本概念;
第5章 中断系统 5.1 中断的概念 5.2 MCS-51单片机的中断流程 5.3 MCS-51的中断响应条件和中断处理
本章内容: 中断的概念 MCS-51单片机中断系统 外部事件中断及应用
邵阳学院 信息工程系电子实践教学中心 江世明
第四章 指令系统及汇编语言程序设计.
8051 指令.
第四章 指令系统及汇编语言程序设计.
本章分为四节,主要介绍: 4.1 程序编制的方法和技巧 4.2 源程序的编辑和汇编 4.3 基本程序结构 4.4 常用程序举例.
项目2 2个LED发光二极管控制 知识与能力目标 熟悉单片机的I/O口功能与特性。
得技通电子 问题 1 右何者非為假指令 (1) XRL (2) EQU (3) MACRO (4) ORG.
本章小结 C51单片机指令系统概述 C51单片机寻址方式 C51单片机指令系统
单片机原理与应用.
第9章 串行扩展技术 (课时:6学时).
第9章 数模转换器与模数转换器 本章学习目标 了解数模转换器的工作原理及性能指标 掌握模数转换器的应用 掌握数模转换器的应用.
第2章 MCS-51单片机指令系统与汇编语言程序设计
報告者:朱耿育 紀翔舜 組員:詹以群 張永傑 指導老師:梁新潁
复 习 一. 计算机中的数和编码 1. 2,10,16进制数及其之间的转换(整数) 按权展开,除x取余 2
第二部分 微机原理 第4章 汇编语言 程序设计 主讲教师:喻红.
单片机应用技术 项目一 循环彩灯装置 第6讲 指令功能及汇编语言程序设计(一) 《单片机应用技术》精品课程组 湖北职业技术学院机电工程系.
本章内容: 中断的概念 MCS-51单片机中断系统 外部事件中断及应用
6.3 定时器/计数器的应用 初始化 初始化的内容如下:
第8章 模拟接口 8.1 模拟接口概述 8.2 DAC及其接口 8.3 ADC及其接口.
第二部分 微机原理 第3章 MCS-51的 指令系统 主讲教师:喻红.
一、任务描述 二、任务分析 三、任务演示 四、相关知识 五、任务布置. 一、任务描述 二、任务分析 三、任务演示 四、相关知识 五、任务布置.
第6章 MCS - 51单片机内部定时器/ 计数器 及串行接口 6.1 定时器/计数器的结构及工作原理 6.2 方式和控制寄存器
單晶片微電腦控制實習 使用計時中斷作走馬燈 計時器的基礎實習 國立大甲高工 電機科 2018年11月21日
本章分为三节,主要介绍: 6.1 计算机串行通信基础 C51的串行口 6.3 单片机串行口应用举例.
第七章 MCS-51系统扩展 一、程序存储器扩展
第十一章 复位、时钟和省电方式控制.
第3章 AT89C51指令系统 3.1基本概念内部结构和引脚功能 指令、指令系统、机器代码
单片机原理及应用 MCS-51系列单片机的基本硬件结构 MCS-51指令系统 MCS-51单片机的系统扩展与应用.
第七章 MCS-51并行口的扩展 MCS51单片机内部有4个并行口,当内部并行口不够用时可以外扩并行口芯片。可外扩的并行口芯片很多,分成2类:不可编程的并行口芯片(74LS3734和74LS245)和可编程的并行口芯片(8255)。 7.1 不可编程并行口芯片的扩展 7.2 可编程并行口芯片的扩展.
第2章 单片机的结构原理与 简单应用 (课时:10学时).
第八章 MCS-51与数码显示器和键盘的接口 一、MCS-51与数码显示器接口 数码显示器是单片机应用产品中最常用的廉价的输 出设备,它由8个发光二极管按一定规律排列而成, 当某一发光二极管导通时,则会被点亮,控制不同 组合的二极管导通,就能显示出各种字符。 1.显示器的结构.
本 章 重 点 单片机的简单I/O扩展 8255A可编程并口芯片 8279可编程键盘/显示器接口芯片 单片机键盘接口技术
单片机原理 单 片 机 单片机接口技术 单片机应用技术.
第七章 定时/计数器.
第三章 指令系统.
第3章 指令系统及程序设计举例 3.1 指令格式与寻址方式 一、指令格式 1. 指令 操作码 目标操作数,源操作数
第10章 综合实训 课题一 水温控制系统设计 一、实训目的 二、课题要求 熟悉常用温度传感器AD590的特性及接口电路的设计方法;
第8章 MCS-51串行口 8.1 串行口及其通信方式 8.2 IBM-PC系列机与 单片机 的通信技术.
第2章 单片机系统组成原理 2.1 MCS-51单片机组成原理 2.2 单片机复位电路设计 2.3 MCS-51存储器配置
单元五 MCS-51单片机内部资源 5.1 任务九 单片机计数并显示 5.2 任务十 单片机流水灯控制 5.3 任务十一 两台单片机数据互传
本 章 重 点 单片机的结构特点 单片机的存储器特点 I/O端口的特点 CPU时序 课时安排:3个课时.
一、任务描述 二、任务分析 三、任务演示 四、相关知识 五、任务布置. 一、任务描述 二、任务分析 三、任务演示 四、相关知识 五、任务布置.
第四章 指令系统及汇编语言程序设计.
微机原理与接口技术 微机原理与接口技术 朱华贵 2015年11月19日.
第4章 中断技术 一个完整的微机系统是由硬件和软件共同构成的。微机系统的硬件有CPU、存储器和I/O口,外设组成。CPU与存储器之间的信息交换比较简单,而CPU与外设之间进行信息交换之前必须确定外设是否准备好,即选择I/O传送方式。I/O传送方式有4种:无条件、查询、中断和DMA。本章学习中断传送方式的有关内容。
数码管数字时钟电路的设计 1. 系统硬件电路的设计
第3章 MCS-51指令系统 介绍MCS—51系列单片机的寻址方式 介绍MCS—51系列单片机的指令系统
第4章 80C51系列指令系统 教学目的:熟悉80C51系列单片机的寻址方式及 每一种寻址方式对应的寻址空间;掌 握每一条指令功能。
本章内容 MCS-51单片机指令系统的格式 MCS-51单片机寻址方式 指令系统的分析
5-6 串列埠模式0輸出埠擴充實習.
单片机原理与应用 主讲人:张荣刚 福建师范大学福清分校.
CPU中的专用寄存器(SFR) 一、累加器Acc 二、通用寄存器B 三、程序计数器PC 四、堆栈指针SP 五、数据指针DPTR
第三章 计算机系统的组成与工作原理.
汽车单片机应用技术 学习情景1: 汽车空调系统的单片机控制 主讲:向楠.
四、手工汇编 完成汇编的方法有两种:手工汇编和汇编程序汇编 1.手工汇编步骤 A
单片机原理与应用.
简单芯片扩展I/O接口 8155可编程接口芯片及其使用 键盘及显示器接口设计 A/D和D/A转换接口技术
单片机应用技术 (C语言版) 第3章 MCS-51指令系统及 汇编程序设计
第二章 MCS-51单片机程序设计 第一章 8086程序设计 第三章 微机基本系统的设计 第四章 存贮器与接口 第五章 并行接口
第4章 MCS-51汇编语言程序设计 教学基本要求: (1)、了解MCS-51汇编语言程序设计的特点;
第2章 80C51单片机的硬件结构 教学基本要求: (1)、熟悉单片机的定义、名称、分类方法;
第1章 微型计算机基础.
Presentation transcript:

6.1 输入/输出 6.2 CPU与外设数据传送方式 6. 3 MCS-51中断系统 6. 4 中断应用举例 2019/2/19 第六章 输入/输出和中断 6.1 输入/输出 6.2 CPU与外设数据传送方式 6. 3 MCS-51中断系统 6. 4 中断应用举例

2019/2/19 6.1 输入/输出 查询方式 直接传送方式

6.2 CPU与外设数据传送方式 一、直接传送方式(无条件) 也称无条件传送方式,例: 驱动指示灯、继电器、启动电机等

二、查询方式 送数据或发命令前先检查设备状态 初始化 Busy? 输出数据 结束? 例:打印机的“忙”状态 1)输出:P1(8位), 接打印机数据口 2)输入:P3.1(1位), 接打印机的“忙”信号 低电平表示状态“忙” SETB P3.1 Busy: JNB P3.1, Busy … MOV P1, A DJNZ Rn, Busy 有什么办法可以提高CPU效率?

三、中断传送方式 有直接、查询、中断、DMA等传送方式。 查寻方式 中断方式 CPU不主动查询外设,只执行自己的程序,当外设准备好需要传送数据时,主动提出申请,(突发的),若CPU准于请求,(响应),放下正在执行的程序,去传送外设的数据。见下页图

查询 中断 仿真

中断有硬件中断和软件中断,仅讨论硬件中断。 中断的特点:外设主动提出申请,突发性,软硬件共同完成。 中断的好处: 1、CPU分时操作(与多个外设并行工作,多任务) 2、实现实时处理 3、故障处理和调试程序 外设 CPU 温度 压力 断电 CPU 处理 机器如何实现中断? 中断是软硬件共同组成的系统。

外设向CPU发出的“中断申请信号”称“中断请求”。 1、中断请求 外设向CPU发出的“中断申请信号”称“中断请求”。 2、中断源 引起中断的原因,或能发出中断申请的源,称为“中断源”。通常中断源有: (1)一般的输入输出设备,如键盘,打印机等。 (2)数据通道,如磁盘,磁带等。 请求 CPU 外设 键盘 打印机 磁盘 掉电 定时器 (3)定时器。 (4)故障源,如电源掉电。 (5)为调试程序而设的中断,如单步、断点设置等。

中断源提出申请 → CPU决定是否响应 → 若响应转去中断处理 → 完成后返回原中断处。 4、中断系统的功能 (1)响应中断及返回 主程序 (2)能实现优先权排队 中断请求 中断请求 RETI (3)能实现中断嵌套 RETI 5、中断及响应的过程 中断源提出申请 → CPU决定是否响应 → 若响应转去中断处理 → 完成后返回原中断处。

6、CPU响应中断的条件 (1)有中断请求 (2)中断请求没有被屏蔽 (3)中断是开放的或者是允许的 (4)在现行指令结束后才响应中断 7、中断响应及中断期间应做的工作 (1)关中断(硬件自动实现) (2)保留断点(硬件自动实现) (3)保护现场(软件完成) (4)给出中断,入口转入相应的中断服务程序(硬件自动完成) (5)恢复现场 (6)开中断与返回(由RETI指令实现)

RETI与RET的异同点? ①相同: 匀执行恢复断点操作,即从堆栈中弹出断点给PC。 ②不同:RETI将清“0”响应时所置的优先级触发器,RET没有该功能。 中断与子程序调用的区别?

6.3 MCS-51 中断系统 MCS-51允许5个中断请求源,提供二个中断优先级,可实现二级中断服务程序嵌套。 外部中断0 中断允许 定时器0 外部中断1 定时器1 串行口中断 总允许 与中断系统相关的特殊功能寄存器有: 中断源寄存器:TCON(88H),SCON(98H) 中断允许控制寄存器IE(A8H) 中断优先级控制寄存器IP(B8H)

1、TCON(Timer Control)定时器/计数器的控制寄存器,锁存外部中断请求标志。 一、中断请求源 1、TCON(Timer Control)定时器/计数器的控制寄存器,锁存外部中断请求标志。 (1)IT0、IT1 (interrupt trigger mode)外部中断请求触发方式 ①ITi=0 为低电平触发方式; ITi=0 ITi=1 INT0 INT1 ②ITi=1 为边沿触发方式; ③ ITi 可由软件置“1”或清“0”。 (2)IE0、IE1(external interrupt flag) 外部中断标志,当有外部中断请求时,置“1”该位 ①当ITi=0 时,若INTi=0,则置“1”IEi,否则清“0” IEi; ②当ITi=1 时,若INTi= 置“1”Iei; ③ IEi=1表示外部正在向CPU申请中断,CPU响应中断后自动清IEi

(3) TF0、TF1(Timer overflow interrupt flag)定时器溢出中断标志 当定时器/计数器最高位进位时,置“1”TFi表示正在向CPU申请中断,CPU响应中断后,自动清“0” TFi。 二、中断控制 1、IE(Interrupt Enable)中断允许寄存器:控制中断是开放还是屏蔽的。 (1)EA(Enable All)总中断允许标志 (2)ES(Enable Series)串行口允许标志 (3)ET0、ET1(Enable Timer)定时器/计数器溢出中断标志 (4) EX0、EX1(Enable eXternal)外部中断允许标志 上述中:“1”表示允许中断,“0”表示屏蔽中断。

2、IP(Interrupt priority) 中断优先权控制寄存器(B8H) (1)PS:串行口中断优先级控制位 (2)PT0、PT1:定时器/计数器中断优先级控制位 (3)PX0、PX1:外部中断优先级控制位 上述中:“1”表示高优先级,“0”表示低优先级。

三、中断响应过程 每个周期S6→对中断源进行采样→在下一个周期按优先级顺序依次查询→如果某个中断标志在上一个周期S6已被置“1” →CPU执行硬件LCALL转向相应中断的特定单元,进入中断服务程序,但是如果遇上下列条件之一,硬件将受阻: (1)正在执行同级或高级中断服务程序。 (2)当前的查询周期不是执行指令的最后一个机器周期。 (3)正在执行RETI或任何仿问IE或IP的指令。 CPU响应中断时先置“1”相应的优先级触发器,然后执行硬件LCALL(压栈与转移),同时清“0”中断请求标志(TI、RI除外)。

中断服务程序入口: IE0 0003H~000AH IT0 000BH~0012H IE1 0013H~001AH IT1 001BH~0022H IS 0023H~002AH 在中断服务程序的最后,须放一条指令RETI,该指令清“0”响应时所置的优先级触发器(RET没有此操作),然后返回。 举例:

ORG 0100H ORG 0003H LJMP INTP ORG 0040H CLR P1.0 CLR IT0 ;低电平触发 SETB PX0 ;高优先级 SETB EA ;开总中断 SETB EX0 ;开INT0中断 ORG 0100H INTP:JB F0, FS CLR P1.0 ;F0=0,关水 CPL F0 RETI FS: SETB P1.0 ;F0=1,放水 主程序

简单I/O实验(实验四)(交通灯控制) 系统晶振是 11.0592 MHz ORG 0000H LJMP START ORG 0040H START: MOV SP,#60H LCALL STATUS0 ;初始状态(都是红灯) CIRCLE: LCALL STATUS1 ;南北绿灯,东西红灯 LCALL STATUS2 ;南北绿灯闪转黄灯,东 LCALL STATUS3 ;南北红灯,东西绿灯 LCALL STATUS4 ;南北红灯,东西绿灯 LJMP CIRCLE STATUS0: ;南北红灯,东西红灯 MOV DPTR,#8300H MOV A,#0FH MOVX @DPTR,A MOV R2,#10 ;延时1秒

LCALL DELAY RET STATUS1: ;南北绿灯,东西红灯 MOV DPTR,#08300H MOV A,#96H ;南北绿灯,东西红灯 MOVX @DPTR,A MOV R2,#200 ;延时20秒 STATUS2: ;南北绿灯闪转黄灯, MOV DPTR,#8300H MOV R3,#03H ;绿灯闪3次 FLASH: MOV A,#9FH MOV R2,#03H MOV A,#96H

MOV R2,#03H LCALL DELAY DJNZ R3,FLASH MOV A,#06H ;南北黄灯,东西红灯 MOVX @DPTR,A MOV R2,#10 ;延时1秒 RET STATUS3: ;南北红灯,东西绿灯 MOV DPTR,#8300H MOV A,#69H MOV R2,#200 ;延时20秒 STATUS4: ;南北红灯,东西绿灯 MOV R3,#03H ;绿灯闪3次

FLASH1: MOV A,#6FH MOVX @DPTR,A MOV R2,#03H LCALL DELAY MOV A,#69H DJNZ R3,FLASH1 MOV A,#09H ;南北红灯,东西黄灯 MOV R2,#10 ;延时1秒 NOP RET DELAY: ;延时子程序 PUSH 2 PUSH 1

PUSH 0 DELAY1: MOV 1,#00H DELAY2: MOV 0,#0B2H DJNZ 0,$ DJNZ 1,DELAY2 ;延时 100 mS DJNZ 2,DELAY1 POP 0 POP 1 POP 2 RET END

举例: 外部中断实验(实验五)(急救车与交通灯) 系统晶振是 11.0592 MHz ORG 0000H LJMP START ORG 0003H ;INT 0 中断入口地址 LJMP INT0 ORG 0040H START: MOV SP,#60H SETB EX0 ;INT 0 中断有效 SETB IT0 SETB EA LCALL STATUS0 ;初始状态(都是红灯) CIRCLE: LCALL STATUS1 ;南北绿灯,东西红灯 LCALL STATUS2 ;南北绿灯闪转黄灯,东 LCALL STATUS3 ;南北红灯,东西绿灯 LCALL STATUS4 ;南北红灯,东西绿灯闪

LJMP CIRCLE INT0: PUSH PSW ;保护现场 PUSH 2 PUSH ACC MOV DPTR,#8300H MOV A,#0FH ;南北,东西都亮红灯 MOVX @DPTR,A MOV R2,#100 ;延时10秒 LCALL DELAY POP ACC ;恢复现场 POP 2 POP PSW RETI STATUS0: ;南北红灯,东西红灯 MOV A,#0FH

MOVX @DPTR,A MOV R2,#10 ;延时1秒 LCALL DELAY RET STATUS1: ;南北绿灯,东西红灯 MOV DPTR,#8300H MOV A,#96H ;南北绿灯,东西红灯 MOV R2,#200 ;延时20秒 STATUS2: ;南北绿灯闪转黄灯,东 MOV R3,#03H ;绿灯闪3次 FLASH: MOV A,#9FH MOV R2,#03H

MOV A,#96H MOVX @DPTR,A MOV R2,#03H LCALL DELAY DJNZ R3,FLASH MOV A,#06H ;南北黄灯,东西红灯 MOV R2,#10 ;延时1秒 RET STATUS3: ;南北红灯,东西绿灯 MOV DPTR,#8300H MOV A,#69H MOV R2,#200 ;延时20秒 STATUS4: ;南北红灯,东西绿灯

MOV DPTR,#8300H MOV R3,#03H ;绿灯闪3次 FLASH1: MOV A,#6FH MOVX @DPTR,A MOV R2,#03H LCALL DELAY MOV A,#69H DJNZ R3,FLASH1 MOV A,#09H ;南北红灯,东西黄灯 MOV R2,#10 ;延时1秒 NOP RET

DELAY: ;延时子程序 PUSH 2 PUSH 1 PUSH 0 DELAY1: MOV 1,#00H DELAY2: MOV 0,#0B2H DJNZ 0,$ DJNZ 1,DELAY2 ;延时 100 mS DJNZ 2,DELAY1 POP 0 POP 1 POP 2 RET END

练习题 P112-1 ORG 100H INBUF EQU 30H OUTBUF EQU 1000H MOV R0, #INBUF MOV DPTR, #OUTBUF MOV R7, #10H LOOP: CLR C MOV A, @R0 SUBB A, #0DH JZ END1 MOV @R1, A INC R0 INC R1 DJNZ R7, LOOP END1: RET END

P112-3 ORG 100H MOV R7, #08H MOV B, R7 MOV DPTR, #TABLE LOOP: CLR A MOV R0, A MOVC A,@A+DPTR ADD A, R0 INC DPTR DJNZ R7, LOOP DIV AB RET TABLE: DB 00H,01H,02H,03H,04H,05H,06H,07H END

P112-7 ORG 100H MOV DPTR, #TABLE MOV R7, #0AH LOOP: MOVX A, @DPTR SETB ACC.7 MOVX @DPTR, A INC DPTR DJNZ R7, LOOP RET TABLE: DB 00H,01H,02H,03H,04H,05H,06H,07H,08H,09H

P112-13 ORG 100H DATA1 EQU 30H MOV R0, #DATA1 MOV A, @R0 CPL A ADD A, 1 MOV @R0, A INC R0 ADDC A, 0 RET END