单片机指令系统 3.1 MCS-51指令简介 3.2 指令系统 3.1 MCS-51指令简介 二、MCS-51系列单片机指令系统分类 按寻址方式分为以下七种:按功能分为以下四种: 1、立即立即寻址 1、数据传送指令位操 2、直接寻址 2、算术运算指令 3、寄存器寻址 3、逻辑运算指令 4、寄存器间接寻址指令 4、控制转移类指令 5、相对寻址 5、位操作指令 6、变址寻址 7、位寻址 三、寻址方式 3、寄存器间接寻址 MOV A, @R1 操作数是通过寄存器间接得到的。 4、立即寻址 MOV A, #40H 操作数在指令中直接给出。 5、基址寄存器加变址寄存器寻址 以DPTR或PC为基址寄存器,以A为变址寄存器, 以两者相加形成的16位地址为操作数的地址。 MOVC A, @A+DPTR MOVC A, @A+PC 四、指令中常用符号说明 Rn——当前寄存器区的8个工作寄存器R0~R7(n=0~7); Ri——当前寄存器区可作地址寄存器的2个工作寄存器R0和R1(i=0,1); direct——8位内部数据存储器单元的地址及特殊功能寄存器的地址; #data——表示8位常数(立即数); #datal6——表示16位常数; add 16——表示16位地址; addrll——表示11位地址; rel——8位带符号的地址偏移量; bit——表示位地址; @——间接寻址寄存器或基址寄存器的前缀; ( )——表示括号中单元的内容 (( ))——表示间接寻址的内容; 五、MCS-51指令简介 1. 以累加器A为目的操作数的指令 2. 以Rn为目的操作数的指令 3. 以直接地址为目的操作数的指令 4. 以寄存器间接地址为目的操作数指令 应用举例1 8段数码管显示 应用举例2 3.2 指令系统 2、堆栈操作指令 3. 累加器A与外部数据传输指令 4. 查表指令 MOVC A, @A+PC 例子: 5. 字节交换指令 6. 半字节交换指令 二、算术操作类指令 PSW寄存器 2. 带进位加法指令 3. 加1指令 4. 十进制调整指令 5. 带借位减法指令(Subtraction) 6. 减1指令(Decrease) 7. 乘法指令(Multiplication) 8. 除法指令(Division) 三、逻辑运算指令 1. 简单逻辑操作指令 2. 循环指令 带进位左循环指令(Rotate Accumulator Left through Carry flag) 右循环指令(Rotate Accumulator Right) 带进位右循环指令(Rotate A Right with C) 3. 逻辑与指令 4. 逻辑或指令 5. 逻辑异或指令 四、控制转移类指令 1. 跳转指令 相对转移指令 SJMP rel PC←(PC)+2 PC←(PC)+rel 程序中标号与地址之间的关系 2. 条件转移指令 3. 比较不相等转移指令 4. 减 1 不为 0 转移指令 5. 调用子程序指令 7. 中断返回指令 五、位操作指令 1. 数据位传送指令 2. 位变量逻辑指令 3. 条件转移类指令
上传时间: 2013-10-27
上传用户:xuanjie
单片机系统软件抗干扰方法:在提高硬件系统抗干扰能力的同时,软件抗干扰以其设计灵活、节省硬件资源、可靠性好越来越受到重视。下面以MCS-51单片机系统为例,对微机系统软件抗干扰方法进行研究。1、软件抗干扰方法的研究在工程实践中,软件抗干扰研究的内容主要是: 消除模拟输入信号的嗓声(如数字滤波技术); 程序运行混乱时使程序重入正轨的方法。本文针对后者提出了几种有效的软件抗干扰方法。1.1 指令冗余CPU取指令过程是先取操作码,再取操作数。当PC受干扰出现错误,程序便脱离正常轨道“乱飞”,当乱飞到某双字节指令,若取指令时刻落在操作数上,误将操作数当作操作码,程序将出错。若“飞”到了三字节指令,出错机率更大。在关键地方人为插入一些单字节指令,或将有效单字节指令重写称为指令冗余。通常是在双字节指令和三字节指令后插入两个字节以上的NOP。这样即使乱飞程序飞到操作数上,由于空操作指令NOP的存在,避免了后面的指令被当作操作数执行,程序自动纳入正轨。此外,对系统流向起重要作用的指令如RET、RETI、LCALL、LJMP、JC等指令之前插入两条NOP,也可将乱飞程序纳入正轨,确保这些重要指令的执行。1.2 拦截技术所谓拦截,是指将乱飞的程序引向指定位置,再进行出错处理。通常用软件陷阱来拦截乱飞的程序。因此先要合理设计陷阱,其次要将陷阱安排在适当的位置。1.2.1 软件陷阱的设计当乱飞程序进入非程序区,冗余指令便无法起作用。通过软件陷阱,拦截乱飞程序,将其引向指定位置,再进行出错处理。软件陷阱是指用来将捕获的乱飞程序引向复位入口地址0000H的指令。通常在EPROM中非程序区填入以下指令作为软件陷阱:
上传时间: 2013-10-29
上传用户:大三三
13-1. 演示范例——声控小车13-2. 中断的概念13-3. P89V51RD2单片中断系统的构成利用声音控制小车运动状态。要求:编程使小车按照顺时针方向旋转,通过拍手使小车逆时针旋转3秒后又恢复为顺时针旋转状态。范例分析:设计中的主要任务:正常状态下的顺时针运动方式;根据拍手及时地更改运动状态;拍手动作响应后恢复为原有运动状态。程序设计中需要解决的主要问题:如何及时响应拍手的动作?拍手动作的响应——硬件接口声音检测电路的工作原理 拍手动作的响应——硬件接口声音检测电路的工作原理——灵敏度调节
上传时间: 2013-11-02
上传用户:1397412112
MCS-51系列单片机实用接口技术全面、系统地介绍了MCS-51系列单片机应用系统的各种实用接口技术及其配置。内容包括:MCS-51系列单片机组成原理:应用系统扩展、开发与调试;键盘输入接口的设计及调试;打印机和显示器接口及设计实例;模拟输入通道接口技术;A/D、D/A、接口技术及在控制系统中的应用设计;V/F转换器接口技术、串行通讯接口技术以及其它与应用系统设计有关的实用技术等。本书是为满足广大科技工作者从事单片机应用系统软件、硬件设计的需要而编写的,具有内容新颖、实用、全面的特色。所有的接口设计都包括详细的设计步骤、硬件线路图及故障分析,并附有测试程序清单。书中大部分接口软、硬件设计实例都是作者多年来从事单片机应用和开发工作的经验总结,实用性和工程性较强,尤其是对应用系统中必备的键盘、显示器、打印机、A/D、D/A通讯接口设计、模拟信号处理及开发系统应用举例甚多,目的是让将要开始和正在从事单片机应用开发的科研人员根据自己的实际需要来选择应用,一书在手即可基本完成单片机应用系统的开发工作。 MCS-51系列单片机实用接口技术目录 第一章 MCS51系列单片机组成原理第二章 MCS-51单片机系统扩展第三章 MCS-51单片机应用系统的开发第四章 键盘及其按口技术第五章 显示器接口设计第六章 打印机接口设计第七章 模拟输入通道接口技术第八章 D/A转换器与MSC-51单片机的接口设计与实践第九章 A/D转换器与MCS-51单片机的接口设计与实践 第十章 V/F转换器接口技术 第十一章 串行通讯按日技术第十二章应用系统设计中的实用技术附录AMCS51单片机指令速查表附录一常用EPROM固化电压参考表
上传时间: 2013-11-04
上传用户:3294322651
2.1 MCS-51 单片机并行口结构1.1.1 P0口结构 1.1.2 P1口结构 1.1.3 P2口结构 1.1.4 P3口结构2.2 MCS-51 单片机并行口应用在没有外扩任何芯片时,MCS-51单片机内部并行口可以作为输出口,直接与输出外设连接,常用的输出外设是发光二极管; MCS-51单片机内部并行口也可以作为输入口,直接与输入外设连接,常用的输入外设是开关。1.2.1 直接做输出口 1.2.2 直接做输入口2.3 七段LED显示器接口在单片机控制系统中显示器是必不可少的外设。常用的显示器有发光二极管,数码管和液晶显示器。本节介绍数码管接口。1.3.1 数码管简介 1.3.2 单个七段LED数码管的接口 1.3.3 多个七段LED数码管的接口2.4 键盘接口 键盘是单片机控制系统最常用、最简单的输入设备。用户可以通过键盘输入数据或命令,实现简单的人机通信。 1.4.1 键盘类型 1.4.2 非编码键盘与单片机的接口 1.4.3 矩阵非编码键盘与单片机的接口
上传时间: 2013-10-15
上传用户:阿四AIR
2.1 MCS-51系列单片机概述 2.1.1 MCS - 51系列单片机的基本结构单片机是一个大规模集成电路芯片,其上集成有CPU、存储器、I/O口(串行口、并行口)、其它辅助电路(如中断系统,定时/计数器,振荡电路及时钟电路等)。 其基本结构框图如下: 2.1.2 MCS - 51系列单片机的分类2.2 89C51单片机内部结构 2.3 89C51单片机的引脚 2.4 MCS-51系列单片机的工作方式
上传时间: 2013-10-09
上传用户:18165383642
单片机原理及系统设计8×C552是Philips公司的8位高性能增强型单片机,是在MCS-51单片机基础上增加了A/D、D/A、捕捉输入/定时输出、I2C总线接口和监视定时器(Watchdog Timer)等功能,是目前世界上最新型的8位单片机之一。8×C552和MCS-51有相同的指令系统,并在其他功能上与MCS-51完全兼容。本书仍以MCS-51为主线组织教学内容,在MCS-51的组成原理、指令系统、汇编语言程序设计、系统扩张、中断系统和接口等方面保留了第1版的特点,同时也对8×C552的新增功能做了详细叙述和分析,并伴以应用实例。全书共分11章,每章末尾都附有一定数量习题与思考题。本书内容自成体系、结构紧凑、前后呼应、语言通俗,因而具有一定的先进性、系统性和实用性。第1章 微型计算机基础 1.1 微型计算机数制及其转换 1.1.1 微型计算机的数制 1.1.2 微型计算机数制间数的转换 1.2 微型计算机的二进制数运算 1.2.1 算术运算 1.2.2 逻辑运算 1.3 微型计算机码制和编码 1.3.1 微型计算机中数的表示方法 1.3.2 微型计算机的原码、反码和补码 1.3.3 微型计算机的二进制编码 1.4 微型计算机组成原理 1.4.1 微型计算机的基本结构 1.4.2 微型计算机的基本原理 1.4.3 微型计算机系统的组成 1.5 单片微型计算机概述 1.5.1 单片机的分类和发展 1.5.2 单片机的内部结构
上传时间: 2014-01-26
上传用户:xy@1314
mcs-51单片机应用教程以MCS-51系列单片机为主线,从实用的角度出发,通过介绍大量单片机技能训练实例和应用实例,指导读者学习和使用单片机。《MCS-51单片机应用教程》分为基础篇和应用篇两大部分。基础篇讲述单片机的基础知识,包括单片机原理与结构、指令系统、定时与中断、串行通信等。应用篇包括单片机的基础训练和应用实例两部分。《MCS-51单片机应用教程》各章节由浅入深,前后呼应,使读者能够在理解掌握单片机原理的基础上,很快学会单片机的使用。 MCS-51单片机应用教程 目录 第1篇 基础篇 第1章 MCS-51单片机系统结构 1.1 概述 1.2 单片机的内部结构 1.3 单片机的存储器结构 1.4 单片机并行I/O口 1.5 单片机的复位电路 1.6 单片机的时钟与时序 第2章 单片机的指令系统 2.1 指令系统概述 2.2 寻址方式 2.3 指令功能介绍 第3章 单片机的中断系统与定时器/计数器 3.1 中断系统 3.2 单片机的定时器/计数器 3.3 外部中断源的扩展 第4章 单片机的串行通信 4.1 串行通信的概念 4.2 MCS-51串行口的结构及工作方式 4.3 串行通信的应用 第2篇 应用篇 第5章 单片机实用开发步骤 5.1 单片机应用系统设计的一般流程 5.2 单片机汇编程序的编辑方法 5.3 源程序的编译
上传时间: 2013-11-12
上传用户:qingdou
这是一本关于Intel 80C51 以及广大的51 系列单片机的书这本书介绍给读者一些新的技术使你的8051 工程和开发过程变得简单请注意这本书的目的可不是教你各种8051 嵌入式系统的解决方法为使问题讨论更加清晰在适当的地方给出了程序代码我们以讨论项目的方法来说明每章碰到的问题所有的代码都可在附带的光盘上找到你必须熟系C 和8051 汇编因为本书不是一本C 和汇编的指导书你可以买到不少关于ANSI C 的书最佳选择当然是Intel的数据书可从你的芯片供应商处免费索取和随编译工具附送的手册附送光盘中有我为这本书编写和收集的程序这些程序已经通过测试这并不意味着你可以随时把这些程序加到你的应用系统或工程中有些地方必须首先经过修改才能结合到你的程序中这本书将教你充分使用你的工具如果你只有8051 的汇编程序你也可以学习该书和使用这些例子但是你必须把C 语言的程序装入你的汇编程序中这对懂得C 语言和8051汇编程序指令的人来说并不是一件困难的事如果你有C 编译器的话那恭喜你使用C 语言进行开发是一个好的决定你会发现使用C 进行开发将使你的工程开发和维护的时间大大减少如果你已经拥有Keil C51 那你已经选择了一个非常好的开发工具我发现Keil 软件包能够提供最好的支持本书支持Keil C 的扩展如果你有其它的开发工具像Archimedes 和Avocet 这本书也能很好地为你服务但你必须根据你所用的开发工具改变一些Keil 的特殊指令在书的一些地方有硬件图实例程序在这些硬件上运行这些图绘制地不是很详细主要是方框图但足以使读者明白软件和硬件之间的接口读者应该把这本书看成工具书而不是用来学习各种系统设计通过本书你可以了解给定一定的硬件和软件设计之后8051 的各种性能希望你能从本书中获取灵感并有助于你的设计使你豁然开朗当然我希望你也能够从本书中学到有用的知识使之能够提升你的设计 8051 系列微处理器基于简化的嵌入式控制系统结构被广泛应用于从军事到自动控制再到PC 机上的键盘上的各种应用系统上仅次于Motorola 68HC11 在 8 位微控制器市场上的销量很多制造商都可提供8051 系列单片机像Intel Philips Siemens 等这些制造商给51 系列单片机加入了大量的性能和外部功能像I2C 总线接口模拟量到数字量的转换看门狗PWM 输出等不少芯片的工作频率达到40M 工作电压下降到1.5V 基于一个内核的这些功能使得8051 单片机很适合作为厂家产品的基本构架它能够运行各种程序而且开发者只需要学习这一个平台8051 系列的基本结构如下1 一个8 位算术逻辑单元2 32 个I/O 口4 组8 位端口可单独寻址3 两个16 位定时计数器4 全双工串行通信5 6 个中断源两个中断优先级6 128 字节内置RAM7 独立的64K 字节可寻址数据和代码区每个8051 处理周期包括12 个振荡周期每12 个振荡周期用来完成一项操作如取指令和计算指令执行时间可把时钟频率除以12 取倒数然后指令执行所须的周期数因此如果你的系统时钟是11.059MHz 除以12 后就得到了每秒执行的指令个数为921583条指令取倒数将得到每条指令所须的时间1.085ms
上传时间: 2013-11-09
上传用户:chenlong
这是一本关于Intel 80C51 以及广大的51 系列单片机的书这本书介绍给读者一些新的技术使你的8051 工程和开发过程变得简单请注意这本书的目的可不是教你各种8051 嵌入式系统的解决方法为使问题讨论更加清晰在适当的地方给出了程序代码我们以讨论项目的方法来说明每章碰到的问题所有的代码都可在附带的光盘上找到你必须熟系C 和8051 汇编因为本书不是一本C 和汇编的指导书你可以买到不少关于ANSI C 的书最佳选择当然是Intel的数据书可从你的芯片供应商处免费索取和随编译工具附送的手册附送光盘中有我为这本书编写和收集的程序这些程序已经通过测试这并不意味着你可以随时把这些程序加到你的应用系统或工程中有些地方必须首先经过修改才能结合到你的程序中这本书将教你充分使用你的工具如果你只有8051 的汇编程序你也可以学习该书和使用这些例子但是你必须把C 语言的程序装入你的汇编程序中这对懂得C 语言和8051汇编程序指令的人来说并不是一件困难的事如果你有C 编译器的话那恭喜你使用C 语言进行开发是一个好的决定你会发现使用C 进行开发将使你的工程开发和维护的时间大大减少如果你已经拥有Keil C51 那你已经选择了一个非常好的开发工具我发现Keil 软件包能够提供最好的支持本书支持Keil C 的扩展如果你有其它的开发工具像Archimedes 和Avocet 这本书也能很好地为你服务但你必须根据你所用的开发工具改变一些Keil 的特殊指令在书的一些地方有硬件图实例程序在这些硬件上运行这些图绘制地不是很详细主要是方框图但足以使读者明白软件和硬件之间的接口读者应该把这本书看成工具书而不是用来学习各种系统设计通过本书你可以了解给定一定的硬件和软件设计之后8051 的各种性能希望你能从本书中获取灵感并有助于你的设计使你豁然开朗当然我希望你也能够从本书中学到有用的知识使之能够提升你的设计 这本书向你展示了用8051进行工程设计时的许多问题希望你读完本书后对8051的认识能有较大的提高如果你现在还没有够买C编译器你应该马上去买一个采用C语言可是你的系统设计更简单维护更方便这本书覆盖面较大从C和汇编的代码优化到8051的网络设计再到模糊控制希望你从本书中学到的知识对你今后的系统设计有所帮助
上传时间: 2013-10-12
上传用户:ommshaggar