第四章 MCS-51汇编语言程序设计.ppt

0590、单片机课件

收藏

压缩包内文档预览:
预览图 预览图 预览图 预览图 预览图 预览图 预览图 预览图 预览图 预览图 预览图 预览图
编号:6127019    类型:共享资源    大小:12.55MB    格式:ZIP    上传时间:2017-11-24 上传人:超****计 IP属地:浙江
4.8
积分
关 键 词:
单片机 课件
资源描述:
0590、单片机课件,单片机,课件
内容简介:
第一章 单片机概述,1.1 单片机的概念,1.2 单片机的发展,1.2.1 单片机的发展概述,1.2.2 MCS-51单片机系列,1.3 单片机的应用,2 单片机芯片的硬件结构,2.1 MCS-51单片机的逻辑结构及信号引脚,2.1.1 MCS-51单片机结构框图,2.1.2 MCS-51单片机芯片内部逻辑结构,2.1.3 MCS-51的信号引脚,2.2 MCS-51单片机的内部存储器,2.2.1 内部数据存储器低128单元,2.2.2 内部数据存储器高128单元,通用寄存器区、位寻址区、用户RAM区,寄存器,2.2.3 MCS-51的堆栈操作,2.2.4 内部程序存储器,2 单片机芯片的硬件结构,2.3 MCS-51单片机并行输入/输出口电路,2.4 MCS-51单片机时钟电路与时序,2.5 MCS-51单片机工作方式,3 MCS-51单片机指令系统,3.1 MCS-51单片机指令格式和寻址方式,3.1.2 MCS-51单片机指令格式,3.1.3 MCS-51单片机寻址方式,寻址方式:指定操作数所在单元的方式。(共七种),3.2 MCS-51单片机指令分类介绍,5-1随机读写存储器RAM,5 半导体存储器及其应用,5-2只读存储器ROM,5-3存储器的连接,5-3-1 存储器芯片的扩充,5-3-2 单片机与存储器的连接,6 单片机的中断与定时系统,6.1 MCS-51单片机中断系统,6.2 MCS-51单片机的定时器/计数器,7 单片机I/0扩展及应用,7.1单片机为什么需要I/O扩展,7.2单片机简单I/O扩展,7.38255A可编程通用并行接口芯片,7.3.4 8255A控制字及初始化编程,7.48155带RAM和定时器/计数器的可编程并行接口芯片,8 单片机串行数据通信,9 A/D与D/A,PORT EQU 0CFA0H ;片选地址CS0CSEG AT 0000H LJMP STARTCSEG AT 4100HSTART: MOV DPTR,#PORT MOV A,#03H ;两个红灯亮,黄灯、绿灯灭 MOVX DPTR,A ACALL DE3S ;延时3秒,实验三 简单I/O口扩展实验-交通灯控制实验,LLL: MOV A,#12H ;东西路口绿灯亮;南北路口红灯亮 MOVX DPTR,A ACALL DE10S ;延时10秒 MOV A,#02H ;东西路口绿灯灭;南北路口红灯亮 MOVX DPTR,A,MOV R2,#05H ;R2中的值为黄灯闪烁次数TTT: MOV A,#06H ;东西路口黄灯亮;南北路口红灯亮 MOVX DPTR,A ACALL DE02S ;延时0.2秒 MOV A,#02H ;东西路口黄灯灭;南北路口红灯亮 MOVX DPTR,A ACALL DE02S ;延时0.2秒 DJNZ R2,TTT ;返回TTT,使东西路口;黄灯闪烁五次,MOV A,#03H ;两个红灯亮,黄灯、绿灯灭 MOVX DPTR,A ACALL DE02S ;延时0.2秒 MOV A,#21H ;东西路口红灯亮;南北路口绿灯亮 MOVX DPTR,A ACALL DE10S ;延时10秒 MOV A,#01H ;东西路口红灯亮;南北路口绿灯灭 MOVX DPTR,A,MOV R2,#05H ;黄灯闪烁五次GGG: MOV A,#09H ;东西路口红灯亮;南北路口黄灯亮 MOVX DPTR,A ACALL DE02S ;延时0.2秒 MOV A,#01H ;东西路口红灯亮;南北路口黄灯灭 MOVX DPTR,A ACALL DE02S ;延时0.2秒 DJNZ R2,GGG ;返回GGG,使南北路口;黄灯闪烁五次 MOV A,#03H ;两个红灯亮,黄灯、绿灯灭 MOVX DPTR,A ACALL DE02S ;延时0.2秒 JMP LLL ;转LLL循环,DE10S: MOV R5,#100 ;延时10秒 JMP DE1DE3S: MOV R5,#30 ;延时3秒 JMP DE1DE02S: MOV R5,#02 ;延时0.2秒DE1: MOV R6,#200DE2: MOV R7,#126DE3: DJNZ R7,DE3 DJNZ R6,DE2 DJNZ R5,DE1 RET END,;延时程序,实验五 中断实验-交通灯控制实验,PORT EQU 0CFA0H ;端口地址SAVE EQU 55H ;save保存从端口cfa0输出的数据CSEG AT 0000H LJMP STARTCSEG AT 4003H LJMP INTCSEG AT 4100HSTART: MOV DPTR,#PORT MOV A,#03H ;置首显示码 MOV SAVE,A ;保存 SETB EX0 SETB EA SETB IT0 MOVX DPTR,A ;显示输出 ACALL DE3S ;延时3秒,;开总允许开关,;开INT0中断,;负跳变触发中断,INT: PUSH ACC ;中断处理 PUSH PSW MOV A,R5 PUSH ACC MOV A,#0C3H ;红灯全亮,绿、黄灯全灭 MOVX DPTR,ADEL10S: MOV R3,#100 ;延时10秒DEL1: MOV R4,#200DEL2: MOV R5,#126DEL3: DJNZ R5,DEL3 DJNZ R4,DEL2 DJNZ R3,DEL1,MOV A,SAVE ;取SAVE中保存数据输出到cfa0端口 MOVX DPTR,A POP ACC ;出栈 MOV R5,A,POP PSWPOP ACCSETB EX0 ;允许外部中断RETIEND,第一章 单片机概述,1.1 单片机的概念,控制器,运算器,存储器,输入/输出设备,CPU,单片机,电子管,晶体管,集成电路,大规模、超大规模集成电路,甚大规模集成电路,发展方向:,1.高速度、大容量、高性能,2.体积小、价格廉、稳定可靠,第一章 单片机概述,1.1 单片机的概念,1.1.1 单片机的名称,一片芯片相当于一个计算机系统,单片机Single Chip MicroComputer,微控制器Micro Control Unit,国内通称,国际通称,嵌入式微控制器Embed,第一章 单片机概述,1.1 单片机的概念,1.1.1 单片机的名称,1.1.2 通用单片机和专用单片机,ASIC,1.1.3 单片机和单片机系统,(1)单片机:芯片本身,(2)单片机系统:以单片机为中心组成的一定功能的 计算机系统。,1.1.5 单片机的程序设计语言和软件,(1)单片机的程序设计语言:,机器语言、,汇编语言、,C语言,(2)单片机的软件:,编程软件、,仿真软件、,编译软件、,写入软件、,监控软件。,1.1.4 单片机的应用系统和开发系统,(1)应用系统,(2)开发系统:仿真器,第一章 单片机概述,1.1 单片机的概念,1.2 单片机的发展,1.2.1 单片机的发展概述,1946 第一台计算机诞生,1971 第一个微处理器诞生,1976 MCS-48(8位),1980 MCS-51(8位),80年代末 Motorola 680X Zilog Z-8 Rockwell 650X,1983 MCS-96(16位),当前:,(1) MCS-51、MCS-96系列发展。,(2) PIC (Microchip公司),(3) DSP (公司),第一章 单片机概述,1.2 单片机的发展,1.2.1 单片机的发展概述,1.2.2 MCS-51单片机系列,1.2.3 80C51单片机系列,80C51是MCS-51系列单片机的发展:性能、功耗,第一章 单片机概述,1.1 单片机的概念,1.2 单片机的发展,1.3 单片机的应用,1.3.1 单片机应用的特点,1. 控制系统的在线应用,(1) 控制系统中的离线应用。,(2) 控制系统中的在线应用。,2. 软硬件结合,3. 应用现场环境恶劣,4. 应用的广泛性极其重要意义,民用级 0+70 工业级 -40 +85 军用级 -65 +125,1.3 单片机的应用,1.3.1 单片机应用的特点,1.3.2 单片机的应用领域,1. 工业自动化方面,2. 仪器仪表方面,3. 家用电器方面,4. 信息和通信产品方面,5. 军事装备方面,7 单片机I/0扩展及应用,7.1单片机为什么需要I/O扩展,7.1.1I/O口的直接使用,1. 数据的无条件传送,2. 中断方式的条件传送,7.1.2为什么要扩展I/O口,1.单片机本身接口功能有限,1)口电路只有数据所存和缓冲无控制功能。,2)口电路数量少。P0、P2数据地址线,P3控制信号。,2.单片机控制应用中的复杂接口要求,1)速度差异大。,2)设备种类繁多。,3)数据信号形式多种多样。,7 单片机I/0扩展及应用,7.1单片机为什么需要I/O扩展,7.1.1I/O口的直接使用,7.1.2为什么要扩展I/O口,1.单片机本身接口功能有限,2.单片机控制应用中的复杂接口要求,3.扩展I/O接口电路的功能,1)速度协调(异步)。,2)输出数据所存。,3)输入数据三态缓冲。,4)数据转换。,7.1.3I/O扩展的相关技术,1. 接口与端口(一个接口包含多个端口)。,2. 数据总线隔离技术。,3. 单片机I/O编址计数(独立编址、统一编址)。,7 单片机I/0扩展及应用,7.1单片机为什么需要I/O扩展,7.1.1I/O口的直接使用,7.1.2为什么要扩展I/O口,7.1.3I/O扩展的相关技术,7.1.4单片机I/O控制方式,1. 无条件传送方式,2. 查询方式,3. 中断方式,7.2单片机简单I/O扩展,7.2.1简单输入口扩展,使用74LS244(三态缓冲器),7.2.2简单输出口扩展,使用74LS377(8D锁存器),7 单片机I/0扩展及应用,7.1单片机为什么需要I/O扩展,7.2单片机简单I/O扩展,7.38255A可编程通用并行接口芯片,7.3.1 可编程I/O接口扩展概述,中小规模集成电路:74LS244、74LS377,可编程接口芯片:,8255A(可编程通用并行接口),8155 (带RAM和定时器的可编程并行接口),8259 (可编程中断控制器),8279 (可编程键盘/显示器接口),6253 (可编程通用定时器),1. 口电路,1)3个8位并行I/O接口A口(数据口)、B口(数据口)和C口(数据口、控制口)。,2)2组控制 A组:PA和PC03、B组:PB和PC47 。,7.3.2 8255A的逻辑结构和信号引脚,1. 口电路,2. 总线接口电路,1)数据总线缓冲器:8位、三态,2)读、写控制逻辑,:片选信号(低电平有效),:读信号 (低电平有效),:写信号 (低电平有效),A1 、A0:端口选择信号,3)控制逻辑电路,7.3.2 8255A的逻辑结构和信号引脚,7.38255A可编程通用并行接口芯片,7.3.1 可编程I/O接口扩展概述,7.3.2 8255A的逻辑结构和信号引脚,7.3.3 8255A的工作方式及数据I/O操作,1. 8255A的工作方式,1)方式0:基本输入/输出方式,输出锁存,输入三态,不用联络信号。,2)方式1:选通输入/输出方式,输入/输出均锁存,C口用于传送联络信号,读C口可了解外设当前状态。,:选通信号,输入,低电平有效。,IBF :输入缓冲器信号,输出,高电平有效。,INTR :中断请求信号,输出,高电平有效。,输入:,7.3.3 8255A的工作方式及数据I/O操作,1. 8255A的工作方式,1)方式0:基本输入/输出方式,2)方式1:选通输入/输出方式,输入:,输出:,:输出缓冲器满信号,输出,低电平有效。,INTR :中断请求信号,输出,高电平有效。,:应答信号,输出,低电平有效。,7.3.3 8255A的工作方式及数据I/O操作,1. 8255A的工作方式,1)方式0:基本输入/输出方式,2)方式1:选通输入/输出方式,3)方式2:双向数据传送方式,输入:,仅A口、C口控制线,输出:,7.38255A可编程通用并行接口芯片,7.3.1 可编程I/O接口扩展概述,7.3.2 8255A的逻辑结构和信号引脚,7.3.3 8255A的工作方式及数据I/O操作,7.3.4 8255A控制字及初始化编程,1. 8255A的控制字,1)工作方式控制字:基本输入/输出方式,D7: 工作方式标志。,D6、D5: A组方式选择。00(方式0)、01(方式1)、1X(方式2),D4: 口A方向。 1(输入)、0(输出),D3: 口C高四位方向。 1(输入)、0(输出),D2: B组方式选择。 1(方式1)、0(方式0),D1: 口B方向。 1(输入)、0(输出),D0: 口C低四位方向。 1(输入)、0(输出),7.3.4 8255A控制字及初始化编程,1. 8255A的控制字,1)工作方式控制字:基本输入/输出方式,2)C口位置位/复位控制字:基本输入/输出方式,D3、D2 、D1 : 口C位方式选择。,D7: 工作方式标志。,D0: 口C所选位值。,7.3.4 8255A控制字及初始化编程,1. 8255A的控制字,2. 8255A的初始化编程,例:PA口以方式0输入,PB口以方式1输出,PC口高位输出、 PC口低位输入。控制寄存器地址为003AH。,MOVR0,#3AH;控制口地址MOVA,#10010101B;写控制字MOVXR0,A;设工作方式,MOVDPTR,#7F03H;控制口地址MOVA,#10000110B;写控制字MOVXDPTR,A;设工作方式MOVDPTR,#7F00H;PA数据口地址MOVA,R0;取RAM的数据MOVXDPTR,A;由PA口输出,例:8255的片选 地址为7F00H-7F03H,PA口以方式0输出单片机片内RAM数据,PB口工作于方式1输入。,例:8255的片选 地址为7F00H-7F03H,PA口以方式0输出单片机片内RAM数据,PB口工作于方式1输入。,8051,8255A,P2.7P2.0,PA.7PA.0,PB.7PB.0,D.7D.0,MOVDPTR,#7F03H;控制口地址MOVA,#10000110B;写控制字MOVXDPTR,A;设工作方式MOVDPTR,#7F00H;PA数据口地址MOVA,R0;取RAM的数据MOVXDPTR,A;由PA口输出,7 单片机I/0扩展及应用,7.1单片机为什么需要I/O扩展,7.2单片机简单I/O扩展,7.38255A可编程通用并行接口芯片,7.48155带RAM和定时器/计数器的可编程并行接口芯片,8155=8255A+RAM+定时器/计数器,7.4.1 8155基本结构及工作方式,7.48155带RAM和定时器/计数器的可编程并行接口芯片,7.4.1 8155基本结构及工作方式,1. 主要接口信号,AD7-AD0 :地址数据复用线,ALE :地址锁存信号,:读选通信号,:写选通信号,:片选信号,:接口与存储器选择信号,:复位信号,2. I/O口及其工作方式,PA(8位)、PB(8位)口:数据输入、输出控制方式,PC(6位)口:数据输入(ALT1)、输出(ALT2)、 PA口控制端口方式(ALT3)、 PA和PB口控制端口方式(ALT4),7.48155带RAM和定时器/计数器的可编程并行接口芯片,7.4.1 8155基本结构及工作方式,1. 主要接口信号,2. I/O口及其工作方式,1) 无条件传送:PA、PB、PC口数据输入/输出,2) 中断方式传送:PA、PB口数据输入/输出 PC口控制信号,INTR:中断请求信号。,BF:缓冲器满信号。,:选通信号。,7.48155带RAM和定时器/计数器的可编程并行接口芯片,7.4.1 8155基本结构及工作方式,1. 主要接口信号,2. I/O口及其工作方式,3. RAM单元及I/O口编址,1) RAM单元:256单元。AD7-AD0,2) I/O口:6个单元。AD2-AD0,3),7.48155带RAM和定时器/计数器的可编程并行接口芯片,7.4.1 8155基本结构及工作方式,7.4.2 8155与MCS-51单片机的连接,8155与MCS-51的兼容信号,2)IO地址:00H-07H,3)RAM地址:08H-FFH,缺陷:系统中只能有8155,8155无片选。,7.48155带RAM和定时器/计数器的可编程并行接口芯片,7.4.1 8155基本结构及工作方式,7.4.2 8155与MCS-51单片机的连接,3) IO地址:0100H-0105H,2)RAM地址:0000H-00FFH,7.48155带RAM和定时器/计数器的可编程并行接口芯片,7.4.1 8155基本结构及工作方式,7.4.2 8155与MCS-51单片机的连接,7.4.3 8155的命令/状态寄存器,7.48155带RAM和定时器/计数器的可编程并行接口芯片,7.4.1 8155基本结构及工作方式,7.4.2 8155与MCS-51单片机的连接,7.4.3 8155的命令/状态寄存器,7.48155带RAM和定时器/计数器的可编程并行接口芯片,7.4.1 8155基本结构及工作方式,7.4.2 8155与MCS-51单片机的连接,7.4.3 8155的命令/状态寄存器,7.4.4 8155的定时器/计数器,1. 定时器/计数器的计数结构,输出方式,计数器高6位,计数器低8位,7.4.4 8155的定时器/计数器,1. 定时器/计数器的计数结构,2. 定时器/计数器的使用,7.48155带RAM和定时器/计数器的可编程并行接口芯片,1)采用减法计数方式(MCS-51采用加法计数),初值直接确定,2)固定计数方式(MCS-51有三种计数方式),3)由外部提供计数脉冲(MCS-51由内部或外部提供),4)计数溢出方式,7.4.5 8155初始化,7.48155带RAM和定时器/计数器的可编程并行接口芯片,8155定时器/计数器对计数脉冲进行千分频,即计数到1000后,TIMER OUT端重新置数产生连续方波。PA口为输入方式,PB口为输出方式,PC口为输入方式,禁止中断。,0,1,7 单片机I/0扩展及应用,7.1单片机为什么需要I/O扩展,7.2单片机简单I/O扩展,7.38255A可编程通用并行接口芯片,7.48155带RAM和定时器/计数器的可编程并行接口芯片,7.58279可编程键盘/显示器接口芯片,7.6MCS-51单片机键盘接口技术,7.6.1 单片机键盘和键盘概述,独立式键盘,矩阵式键盘,键盘接口的功能:,1)键盘扫描(判断是否有键按下),2)键识别(确定按键的行列位),3)产生闭合键的键码,4)排除多键、串键(复按)及去抖动,7.6MCS-51单片机键盘接口技术,7.6.1 单片机键盘和键盘概述,7.6.2 单片机键盘接口和键功能的实现,1. 键盘接口处理的内容,1)键盘扫描(判断是否有键按下),7.6.2 单片机键盘接口和键功能的实现,1. 键盘接口处理的内容,1)键盘扫描(判断是否有键按下),2)去抖动,硬件法(触发器等),软件法(延时20- 30ms),3)键码计算,键码=行首号+列号,00H08H10H18H,7.6.2 单片机键盘接口和键功能的实现,1. 键盘接口处理的内容,1)键盘扫描(判断是否有键按下),2)去抖动,3)键码计算,4)等待键释放,加延时,5)键盘接口小结,软硬件结合:,附加功能:,屏蔽功能:对一个键处理时屏蔽其它键,等待功能:对一个键无论按多长时间仅 处理一次,7.6.2 单片机键盘接口和键功能的实现,1. 键盘接口处理的内容,2. 键盘接口的控制方式,随机方式,中断方式,定时方式,3. 键处理子程序,有键按下,处理,软件(子程序),7.6.3 使用8155作单片机键盘接口,7.6MCS-51单片机键盘接口技术,7.6.1 单片机键盘和键盘概述,7.6.2 单片机键盘接口和键功能的实现,1. 接口电路逻辑图,A为输出,地址:0101H;,C为输入,地址:,0103H,2. 判定有无闭合键的子程序,7.6.3 使用8155作单片机键盘接口,1. 接口电路逻辑图,2. 判定有无闭合键的子程序,3. 键盘扫描程序,延时程序,判断有键按下,判断何键按下,7.6.3 使用8155作单片机键盘接口,1. 接口电路逻辑图,2. 判定有无闭合键的子程序,3. 键盘扫描程序,判断何键按下,键码计算,扫描下一列,去抖动,7 单片机I/0扩展及应用,7.1单片机为什么需要I/O扩展,7.2单片机简单I/O扩展,7.38255A可编程通用并行接口芯片,7.48155带RAM和定时器/计数器的可编程并行接口芯片,7.58279可编程键盘/显示器接口芯片,7.6MCS-51单片机键盘接口技术,7.7MCS-51单片机显示器接口技术,7.7MCS-51单片机显示器接口技术,LED(发光二极管)显示器,LCD(液晶显示器)显示器,7.7.1 LED显示器接口,1. LED显示原理,符号与引脚,共阴极接法,共阳极接法,显示代码,2. 用8155作 LED显示器接口,7.7.1 LED显示器接口,1. LED显示原理,2. 用8155作 LED显示器接口,1)LED显示器接口概述,2)用8155做接口电路的连接,7.7.1 LED显示器接口,1. LED显示原理,2. 用8155作 LED显示器接口,1)LED显示器接口概述,2)用8155做接口电路的连接,3)显示缓冲区,3. LED显示程序,3. LED显示程序,3 MCS-51单片机指令系统,3.1 MCS-51单片机指令格式和寻址方式,3.1.1 指令系统概述,3.1.2 MCS-51单片机指令格式,3.1.3 MCS-51单片机寻址方式,操作码:规定指令进行什么操作。,操作数:规定指令操作的对象。,寻址方式:指定操作数所在单元的方式。(共七种),3。寄存器寻址方式,MOV A,R0,2。直接寻址方式,MOV A,3AH,4。寄存器间接寻址方式,MOV A,R0,1。立即寻址方式,MOV A,#3AH,MOV DPTR,#123AH,MOV A,R1,3.1.3 MCS-51单片机寻址方式,3.1 MCS-51单片机指令格式和寻址方式,5。变址寻址方式,MOVC A,A+DPTR,MOVC A,A+PC,JMP A,A+DPTR,6。位寻址方式,MOV C,3AH,MOV C,0F0H,MOV C,PSW.5,7。相对寻址方式,目的地址=转移指令地址+转移指令字节书+rel,用于转移指令,3 MCS-51单片机指令系统,3.1 MCS-51单片机指令格式和寻址方式,3.2 MCS-51单片机指令分类介绍,数据传送类指令(29条),算术运算类指令(24条),逻辑运算及移位类指令(24条),控制转移类指令(17条),位操作类指令(17条),3.2 MCS-51单片机指令分类介绍,3.2.1 指令格式中符号意义说明,direct:8位直接地址。,#data :8位立即数。,#data16:16位立即数。,DPTR:数据指针。,bit:内部RAM中的直接寻址位。,:间址寄存器的前缀标志。,/:位地址前表示对该位取反。,Rn:通用寄存器R0-R7。,Ri:间接寻址寄存器R0、R1。,3.2 MCS-51单片机指令分类介绍,3.2.1 指令格式中符号意义说明,3.2.2 数据传送类指令,1. 概述,MOV 目的操作数,源操作数,目的操作数,:累加器A、通用寄存器Rn、直接地址direct、 间址寄存器,源操作数,:累加器A、通用寄存器Rn、直接地址direct、 间址寄存器、立即数,3.2 MCS-51单片机指令分类介绍,3.2.2 数据传送类指令,1. 概述,2. 内部RAM数据传送指令组,(1) 立即数传送指令,MOV A,#data,MOV direct,#data,MOV Rn,#data,MOV Ri,#data,8位立即数传送指令,MOV DPTR,#data16,16位立即数传送指令,例:MOV DPTR,#1234H,DPH: 12H,DPL: 34H,3.2 MCS-51单片机指令分类介绍,3.2.2 数据传送类指令,2. 内部RAM数据传送指令组,(1) 立即数传送指令,(2) 内部RAM单元之间的数据传送指令,MOV direct2,direct1,MOV direct,Rn,MOV Rn , direct,MOV direct,Ri,MOV Ri , direct,例:MOV P2,R2,MOV 0A0h,R2,MOV 0D0h,R1,MOV R5,70h,MOV 0D0h,R1,MOV 0D0h,R1,MOV 0D0h,R1,3.2 MCS-51单片机指令分类介绍,3.2.2 数据传送类指令,2. 内部RAM数据传送指令组,(1) 立即数传送指令,(2) 内部RAM单元之间的数据传送指令,(3) 通过累加器的数据传送指令,MOV A,Rn,MOV Rn ,A,MOV A,direct,MOV direct, A,MOV A,Ri,MOV Ri , A,3.2.2 数据传送类指令,2. 内部RAM数据传送指令组,3. 外部RAM数据传送指令组,对外部RAM单元只能使用间接寻址,(1) 使用DPTR进行间接寻址,MOVX A,DPTR,MOVX DPTR , A,(2) 使用Ri进行间接寻址,MOVX A,Ri,MOVX Ri ,A,4. 程序存储器数据传送指令组,MOVC A,A+DPTR,MOVC A,A+PC,单向,变址寻址,3.2.2 数据传送类指令,5. 数据交换指令组,(1) 整字节交换指令,XCH A,Rn,XCH A,direct,XCH A,Ri,(2) 半字节交换指令,XCHD A,Ri,低四位数据交换,(3) 累加器高低半字节交换指令,SWAP A,6. 堆栈操作指令组,PUSH direct,POP direct,SP:(SP)+1,(SP):(direct),direct :(SP),SP:(SP)-1,说明:,只有指令表中的指令才有对应指令代码,计算机才能执行。编程时,不能随意创造发明指令。,1. 一条指令中不能同时出现两个工作寄存器:,2. 间址寄存器只能使用 R0、R1。,3. SFR区只能直接寻址,不能用寄存器间接寻址。,4. 指令表:,非法指令:MOV R0,#80H MOV A,R0,非法指令:MOV A,R2,非法指令:MOV R1,R2MOV R2,R0,将片内RAM60H单元与61H单元的数据交换。,XCH 60H,61H,查表法求Y=X2。设X(0X15)在片内RAM的20H单元中,要求将查表求Y,存入片内RAM21H单元。,ORG 1000HSQU:MOV DPTR,#TAB ;确定表首地址(基地址)MOV A,20H;取X(偏移量)MOVC A,A+DPTR;查表求Y=X2MOV 21H,A;保存YRET;子程序结束;其它程序段ORG 3000H;常数表格首地址TAB:DB 00,01,04,09,225;平方表,3.2 MCS-51单片机指令分类介绍,3.2.1 指令格式中符号意义说明,3.2.2 数据传送类指令,3.2.3 算术运算类指令,1. 加法指令组(不带进位),ADD A,源操作数,ADD A,#data,ADD A,Rn,ADD A,direct,ADD A,Ri,ADD A,R2,A=? PSW=?,02H,0,0,0,0,0,1,0,1,81H,3.2 MCS-51单片机指令分类介绍,3.2.3 算术运算类指令,1. 加法指令组(不带进位),2. 加法指令组(带进位),ADDC A,源操作数,ADDC A,#data,ADDC A,Rn,ADDC A,direct,ADDC A,Ri,3. 带借位减法指令组,SUBB A,源操作数,SUBB A,#data,SUBB A,Rn,SUBB A,direct,SUBB A,Ri,3.2.3 算术运算类指令,4. 加1指令组,INC A,INC Rn,INC direct,INC Ri,INC DPTR,不影响程序状态字PSW,5. 减1指令组,DEC A,DEC Rn,DEC direct,DEC Ri,3.2.3 算术运算类指令,6. 乘除指令组,(1) 乘法指令,MUL AB,0,0,0:结果255,奇偶位,MOV A,0FHMOV B,0FHMUL AB,A=? PSW=?,0E1H,00H,3.2.3 算术运算类指令,6. 乘除指令组,(1) 乘法指令,(2) 除法指令,DIV AB,0,0,1:除数为0(B=0)0:其它,奇偶位,A商;B 余数,3.2.3 算术运算类指令,1. 加法指令组(不带进位),2. 加法指令组(带进位),3. 带借位减法指令组,4. 加1指令组,5. 减1指令组,6. 乘除指令组,7. 十进制调整指令,DA A,十进制调整指令原理:,略,MOV A,#56HMOV R5,#67HADD A,R5DA,带进位加法指令ADDC用于多字节运算,设双字节数 X 存在片内RAM 41H、40H单元,Y存在42H、43H单元,编程求 Z=X+Y,并存入片内RAM单元44H、45H、46H。,ADDS:MOV A,40HADD A,42HMOV 44H,AMOV A,41HADDC A,43HMOV 45H,AMOV A,#0ADDC A,#0MOV 46H,ARET,;取被加数低字节;加上加数低字节;保存和的低字节;取被加数高字节;加上加数高字节;保存和的高字节;求高字节进位;子程序结束,;低字节相加;高字节相加;计算高字节进位;子程序结束,3.2 MCS-51单片机指令分类介绍,3.2.1 指令格式中符号意义说明,3.2.2 数据传送类指令,3.2.3 算术运算类指令,3.2.4 逻辑运算及移位类指令,逻辑运算:ANL(与)、ORL(或)、XRL(异或),1. 逻辑与运算指令组,ANL A,Rn,ANL A,direct,ANL A,Ri,ANL A,#data,ANL direct,A,ANL direct,#data,MOV C,P1.0ANL C,P1.1ANL C,/P1.2MOV P3.0,C,3.2.4 逻辑运算及移位类指令,逻辑运算:ANL(与)、ORL(或)、XRL(异或),1. 逻辑与运算指令组,2. 逻辑或运算指令组,ORL A,Rn,ORL A,direct,ORL A,Ri,ORL A,#data,ORL direct,A,ORL direct,#data,3.2.4 逻辑运算及移位类指令,逻辑运算:ANL(与)、ORL(或)、XRL(异或),1. 逻辑与运算指令组,2. 逻辑或运算指令组,XRL A,Rn,XRL A,direct,XRL A,Ri,XRL A,#data,XRL direct,A,XRL direct,#data,3. 逻辑异或运算指令组,3.2.4 逻辑运算及移位类指令,逻辑运算:ANL(与)、ORL(或)、XRL(异或),4. 累加器清“0”和取反指令组,(1)累加器清“0”指令,(2)累加器取反指令,A7 A0,3.2.4 逻辑运算及移位类指令,逻辑运算:ANL(与)、ORL(或)、XRL(异或),4. 累加器清“0”和取反指令组(CLR、CPL),5. 移位指令组( 累加器A ),(1)循环左移指令,RL A ;,(2)循环右移指令,RR A ;,A7 A0,3.2.4 逻辑运算及移位类指令,逻辑运算:ANL(与)、ORL(或)、XRL(异或),4. 累加器清“0”和取反指令组(CLR、CPL),5. 移位指令组( 累加器A ),(1)循环左移指令,RL A ;,(2)循环右移指令,RR A ;,(3)带进位循环左移指令,RLC A ;,A7 A0,CY,(4)带进位循环右移指令,RRC A ;,A7 A0,CY,3.2 MCS-51单片机指令分类介绍,3.2.5 控制转移类指令,1. 无条件转移指令组,(1)长转移指令,指令机器码: 02 nnH nnL,指令转移范围:64KB,(2)绝对转移指令,AJMP addr11 ;,指令机器码:A10A9A8 00001 A70,指令转移范围:2KB,推 荐 使 用,3.2 MCS-51单片机指令分类介绍,3.2.5 控制转移类指令,1. 无条件转移指令组,(3)短转移指令,指令机器码: 80H rel,相对偏移量 rel为8位补码,rel= 目的地址-(源地址+2)= 地址差-2,增地址转移:,指令地址 源程序 2130H SJMP 2132H 2150H NEXT:MOV A,R2,1EH,NEXT,指令转移范围:前128后127字节,rel= (目的地址-(源地址+2)补 = 0FFH-(目的地址-(源地址+2)+1 = 0FEH-地址差,3.2.5 控制转移类指令,1. 无条件转移指令组,(3)短转移指令,减地址转移:,指令地址 源程序 2130H NEXT:MOV A,R2 2150H SJMP,0DEH,NEXT,3.2 MCS-51单片机指令分类介绍,3.2.5 控制转移类指令,1. 无条件转移指令组,(4)变址寻址转移指令,指令机器码 73H,指令转移范围64KB。,(1)长转移指令LJMP,(2)绝对转移指令AJMP,(3)短转移指令SJMP,MOVA,#02HMOVDPTR,#0006JMPA+DPTR,P.77 10.,MOVP2,#20HMOV R0,#00HMOV A,R0,3.2 MCS-51单片机指令分类介绍,3.2.5 控制转移类指令,1. 无条件转移指令组,(4)变址寻址转移指令 JMP,(1)长转移指令 LJMP,(2)绝对转移指令 AJMP,(3)短转移指令 SJMP,2. 条件转移指令组,(1)累加器判零转移指令,JZ rel,;若A=00H,PCPC+e(转移), ;若A00H,PCPC+2 (不转移),JNZ rel,;若A00H,PCPC+e
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
提示  人人文库网所有资源均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。
关于本文
本文标题:0590、单片机课件
链接地址:https://www.renrendoc.com/p-6127019.html

官方联系方式

2:不支持迅雷下载,请使用浏览器下载   
3:不支持QQ浏览器下载,请用其他浏览器   
4:下载后的文档和图纸-无水印   
5:文档经过压缩,下载后原文更清晰   
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

网站客服QQ:2881952447     

copyright@ 2020-2024  renrendoc.com 人人文库版权所有   联系电话:400-852-1180

备案号:蜀ICP备2022000484号-2       经营许可证: 川B2-20220663       公网安备川公网安备: 51019002004831号

本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知人人文库网,我们立即给予删除!