收藏 分销(赏)

机电一体化 单片机 1.ppt

上传人:xrp****65 文档编号:14015222 上传时间:2026-05-27 格式:PPT 页数:50 大小:1.50MB 下载积分:10 金币
下载 相关
机电一体化 单片机 1.ppt_第1页
第1页 / 共50页
机电一体化 单片机 1.ppt_第2页
第2页 / 共50页


点击查看更多>>
资源描述
单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,基于单片机的微控制器及其设计,电子计算机的发展概述,电子计算机的问世及其经典结构,电脑,的学名为,电子计算机,,是由早期的电动计算器发展而来的。,1946,年,2,月,15,日,,第一台电子数字计算机问世,这标志着计算机时代的到来。,ENIAC,(,“埃尼阿克”,),用于计算弹道。是由美国宾夕法尼亚大学莫尔电工学院制造的,但它的体积庞大,占地面积,170,多平方米,重量约,30,吨,消耗近,100,千瓦的,电力,ENIAC,是电子管计算机,时钟频率仅有,100 KHz,,但能在,1,秒钟的时间内完成,5000,次加法运算。,匈牙利籍数学家,冯,诺依曼,在方案的设计上做出了重要的贡献。,1946,年,6,月,他又提出了“程序存储”和“二进制运算”的思想,进一步构建了,计算机由运算器、控制器、存储器、输入设备和输出设备组成,这一计算机的经典结构。,(,EDVAC,-ELECTRONIC DISCRETE VARIABLE AUTOMATIC,COMPUTER,),电子计算机技术的发展,相继经历了五个时代:,电子管计算机;,1946,晶体管计算机;,1956,集成电路计算机;,1959,大规模集成电路计算机;,1970,超大规模集成电路计算机。,计算机的结构仍然没有突破冯,诺依曼提出的计算机的经典结构框架。,微型计算机的应用形态,从应用形态上,微机可以分成三种:,多板机(,系统机,),将,CPU,、存储器、,I/O,接口电路和总线接口等组装在一块主机板(即微机主板)。各种适配板卡插在主机板的扩展槽上并与电源、软,/,硬盘驱动器及光驱等装在同一机箱内,再配上系统软件,就构成了一台完整的微型计算机系统(简称系统机)。,工业,PC,机,也属于多板机。,单板机,将,CPU,芯片、,存储器,芯片、,I/O,接口,芯片和简单的,I/O,设备,(小键盘、,LED,显示器)等装配在一块印刷电路板上,再配上,监控程序,(固化在,ROM,中),就构成了一台单板微型计算机(简称单板机)。,单板机的,I/O,设备简单,软件资源少,使用不方便。,早期主要用于微型计算机原理的,教学,及,简单的测控,系统,,现在已很少使用。,单片机,在一片集成电路芯片上集成微处理器、存储器、,I/O,接口电路,从而构成了,单芯片微型计算机,即单片机,。,单板机,单片机,系统机(多板机),系统机,(,桌面应用,)属于通用计算机,主要应用于数据处理、办公自动化及辅助设计。,单片机,(,嵌入式应用,)属于专用计算机,主要应用于智能仪表、智能传感器、智能家电、智能办公设备、汽车及军事电子设备等应用系统。,单片机,体积小,、,价格低,、,可靠性高,,,其非凡的嵌入式应用形态对于满足嵌入式应用需求具有独特的优势。,一台能够工作的计算机要有这样几个部份构成:,CPU,(进行运算、控制)、,RAM,(数据存储)、,ROM,(程序存储)、输入,/,输出设备(例如:串行口、并行输出口等)。,在个人计算机上这些部份被分成若干块芯片,安装一个称之为主板的印刷线路板上。,而在单片机中,这些部份,全部被做到一块集成电路芯片中了,所以就称为单片(单芯片)机,而且有一些单片机中除了上述部份外,还集成了其它部份如,A/D,,,D/A,等。,实际工作中并不是任何需要计算机的场合都要求计算机有很高的性能,一个控制电冰箱温度的计算机难道要用,Pc,?,应用的关键是看是否够用,是否有很好的性能价格比。所以,8051,出来十多年,依然没有被淘汰,还在不断的发展中。,4.1,单片机的概述,4.1.1,单片机的由来,单片机专业名称,Micro Controller Unit(,微控制器件,),。,它是由,INTEL,公司发明的最早的系列是,MCS-48,,,后来有了,MCS-51,我们经常说的,51,系列单片机,就是,MCS-51micro controller system,它是一种,8,位的单片机。,1982,年,,Intel,推出,MCS-96,系列单片机。,后来,INTEL,公司把它的核心技术转让给了世界上很多的小公司,所以世界上就有许多公司生产,51,系列兼容单片机,比如飞利浦的,87LPC,系列,华邦的,W78,系列,达拉斯的,DS87,系列,现代的,GSM97,系列等等。目前在我国比较流行的就是,美国,ATMEL,公司的,89C51,89S51,,它是一种带,Flash ROM,的单片机。,4.1.2,主要单片机的分类,AVR,系列单片机,也是,ATMEL,公司生产的一种,8,位单片机,它采用的是一种叫,RISC,(精简指令集单片机)的结构,所以它的技术和,51,系列有所不同,开发设备也和,51,系列是不通用的,它的一条指令的运行速度可以达到纳秒级(即每秒,1000000000,次),是,8,位单片机中的高端产品,由于它的出色性能,目前应用范围越来越广,大有取代,51,系列的趋势。,PIC,系列单片机,它是美国,MICROCHIP,公司生产的另一种,8,位单片机,它采用的也是,RISC,的指令集,它的指令系统和开发工具与,51,系列更是不同,但由于它的低价格和出色性能,目前国内使用的人越来越多,国内也有很多的公司在推广它,不过它的影响力远没有,51,系列的大,所以作为初学者,51,系列当然是首选。,单片机用途,其实单片机就是一种能进行,数学和逻辑运算,,根据不同使用对象完成不同控制任务,面向控制而设计的,集成电路,。,在电脑上我们可以用不同的软件在相同的硬件上实现不同的工作。比如我们用,WORD,可以打字,用,PROTEL,可以设计图纸等等。单片机其实也是如此,同样的芯片可以根据我们不同的要求做出截然不同的产品,只不过电脑是面向应用的而单片机是面向控制的,比如控制一个指示灯的亮和灭控制一台电机的启动和停止等等。,大家都知道我们的电脑有很多的零件,比如,CPU,中央处理器,,RAM,内存条,,ROM,程序存储器,输入输出设备并行口串行口等等。在单片机中这些部件都有,,而且还把它们全部做到了一块芯片,上,这就是单片机名称的由来。,这么多零件集成在一块芯片上,那为什么单片机的价格会这么便宜,,89S51,每块才,10,元不到,其实原因很简单,-,功能有强弱。就象我们平时用的,PLC,控制一台数控机床要用,128,点的。而控制一台电机有几点的,就足够了另外这种芯片的产量很大,技术也非常的成熟,自然价格也就很低了。,MCS,51,系列产品按程序存储器配置类型分为,3,类:,8051,芯片含有,4k,个单元的,ROM,;,8751,芯片含有,4k,个单元的,EPROM,;,8031,中无程序存储器,需要扩展程序存储器。,8051,与,80C51,单片机的主要差别就在于芯片的制造工艺上。,80C51,的制造工艺是在,8051,基础上进行了改进。,8051,系列单片机采用的是,HMOS,工艺:高速度、高密度;,80C51,系列单片机采用的是,CHMOS,工艺:高速度、高密度、低功耗;,也就是说,80C51,单片机是一种低功耗单片机。,MCS-51,的基本系列是,8051/8751/8031,,此外还有,8052/8032,、,8001BH/87C51/8001,等派生系列,它们的引脚、指令系统相互兼容,只是在内部结构和具体应用上存在着某些差异。,8051,内包括:,适于控制应用的,8,位,CPU,;,4KB,程序存储器,(ROM),;,128B,数据存储器,(RAM);,32,根双向并可以按位寻址的,I/O,线,1,个全双工串行口,I/O,线;,2,个,16,位定时计数器;,5,个中断源,2,个优先级的嵌套结构;,1,个,片内时钟振荡器,MCS-51,系列单片机是,40,脚双列直插式封装,(DIP),的,VLSI,芯片,VCC,40脚,接电源+5V,VSS,20脚,接地也就是GND,XTAL1,19脚,和XTAL2,18脚,接振荡电路,(,单片机是一种时序电路,,必须有脉冲信号才能工作,在它的内部有一个时钟产生电路,有两种振荡方式,一种是内部振荡方式,只要接上两个电容和一个晶振即可,另一种是外部振荡方式,采用外部振荡方式时需在,XTL2上加外部时钟信号,PSEN,29脚,片,外ROM选通信号低电平有效,ALE/PROG,30脚,地址锁存信号输出端/EPROM编程脉冲输入端,RST/VPD,9脚,复位信号输入端/备用电源输入端,EA/VPP,31,脚,内/外部ROM选择端,P0口,39-32脚,双向I/O口,P1口,1-8脚,准双向通用I/0口,P2口,21-28脚,准双向I/0口,P3口,10-17脚,多用途口,单片机的引脚功能,P3,口第二功能,P3.0 RXD,串行输入口,P3.1 TXD,串行输出口,P3.2 INT0,外部中断,0,(低电平有效),P3.3 INT1,外部中断,1,(低电平有效),P3.4 T0,定时计数器,0,P3.5 T1,定时计数器,1,P3.6 WR,外部数据存储器写选通(低电平有效),P3.7 RD,外部数据存储器读选通(低电平有效),P0,口、,P2,口和,P3,的第二功能用法,初学时往往对,P0,口、,P2,口和,P3,口的第二功能用法迷惑不解,认为第二功能和原功能之间要有一个切换的过程,或者说要有一条指令,事实上,各端口的第二功能完全是自动的,不需要用指令来转换。,如,P3.6,、,P3.7,分别是,WR,、,RD,信号,当外接,RAM,或有外部,I/O,口时,它们被用作第二功能,不能作为通用,I/O,口使用,只要一微处理机一执行到,MOVX,指令,就会有相应的信号从,P3.6,或,P3.7,送出,不需要事先用指令说明。,4.2 MCS-51,单片机的硬件结构,包括:,CPU,、存储器(,ROM,、,RAM,)、,I/O,接口,等计算机的基本组成。,数制,十进制数,即,0123456789,,它遵循逢十进一,借一当十的原则。,计算机中却无法采用,因为计算机只能有两种状态,0,和,1,。,二进制数,,,0,和,1,,它遵循的是逢二进一,借一当二的进借位,原则。也就是当某位计数到两个数时就向高位进,同时本位变为,0,,,比如二进制数,1100=1*2,3,+1*2,2,+0*2,1,+0*2,0,。,十六进制,也遵循两个规则,一是有十六个基数,即,0123456789ABCDEF,,另一个规则是逢十六进一,借一当十六。,二进制简码,B,和,十进制简码,D,,省略。,十六进制简码,H,十进制有使用比较习惯的特点,二进制有易于表示和运算方便的特点,十六进制又有表示位数较多的特点。,二进制数,1011B,转换成十进制为,1*2,3,+0*2,2,+1*2,1,+1*2,0,=8+2+1=11D,,再比如十六进制数,FFH,转换成十进制为,0FFH=F*16,1,+F*16,0,=255D,在单片机中通常我们把这个数称之为立即数,总线,计算机电路是以,微处理器,为核心,各器件都要与微处理器相连,所以需要的连线就很多了,如果仍如同模拟电路一样,在各微处理器和各器件间单独连线,则线的数量将多得惊人,所以在微处理机中引入了,总线,的概念。,各个器件共同享用连线,所有器件的,8,根数据线全部接到,8,根公用的线上,即相当于各个器件并联起来,,但仅这样还不行,如果有两个器件同时送出数据,,一个为,0,,一个为,1,,那么,接收方接收到的究竟是什么呢?这种情况是不允许的,所以要,通过控制线进行控制,,使,器件分时工作,,,任何时候只能有一个器件发送数据,(可以有多个器件同时接收)。,器件的数据线也就被称为,数据总线,,器件所有的控制线被称为,控制总线,。在单片机内部或者外部存储器及其它器件中有存储单元,这些,存储单元要被分配地址,,才能使用,分配地址当然也是以电信号的形式给出的,由于存储单元比较多,所以,用于地址分配的线也较多,这些线被称为,地址总线,。,数据、地址、指令,之所以将这三者放在一起,是因为这三者的本质都是一样的,数字,,或者说都是,一串,0,和,1,组成的序列,。换言之,,地址、指令也都是数据,。,指令,:由单片机芯片的设计者规定的一种数字,它与我们常用的指令助记符有着严格的一一对应关系,不可以由单片机的开发者更改。,地址,:是寻找单片机内部、外部的存储单元、输入输出口的依据,内部单元的地址值已由芯片设计者规定好,不可更改,外部的单元可以由单片机开发者自行决定。,数据,:这是由微处理机处理的对象,在各种不同的应用电路中各不相同,一般而言,被处理的数据可能有这么几种情况:,1,地址(如,MOV DPTR,,,1000H,),即地址,1000H,送入,DPTR,。,2,方式字或控制字(如,MOV TMOD,,,#3,),,3,即是控制字。,3,常数(如,MOV TH0,,,#10H,),10H,即定时常数。,4,实际输出值(如,P1,口接彩灯,要灯全亮,则执行指令:,MOV P1,,,#0FFH,,要灯全暗,则执行指令:,MOV P1,,,#00H,)这里,0FFH,和,00H,都是实际输出值。,4.2.1 MCS-51,的微处理器,1,中央处理器(,CPU,),CPU,由运算器和控制器组成,它是单片机的核心,完成运算和控制操作。,1.,运算器,组成:,算术逻辑运算器,ALU,,,算术累加器,A,,寄存器,B,,,暂存器,TMP1,,,暂存器,TMP2,,,布尔累加器,Cy,等,功能:进行移位、算术运算和逻辑运算;,MCS-51,运算器还包含有一个布尔(位)处理器,用来处理位操作。,(,1,)累加器,A,(,8,位)功能:暂存操作数及保存运算结果;,A,是,MCS-51,单片机中最繁忙的寄存器;,(,2,)寄存器,B,(,8,位)功能:用于乘法、除法运算,可作为一个暂存器使用;,(,3,)程序状态字寄存器,PSW,(,8,位)功能:存放累加器,A,在运算过程标志位(,P,,,OV,,,AC,,,Cy,),的状态;指出,CPU,所使用的当前工作寄存器组。,CY,AC,F0,RS0,OV,P,RS1,PSW.7,PSW.0,CY (PSW.7),进位,/,借位标志位。,若,ACC,在运算过程中发生了进位或借位,则,CY=1,;,否则,=0,。它也是布尔处理器的位累加器,可用于布尔,操作,。,AC(PSW.6),半进位,/,借位标志位。,F0(PSW.5),用户标志位。,PSW.6,PSW.5,2.1.3 MCS-51,单片机,的,内部结构,PSW,2.1.3 MCS-51,单片机的内部结构,PSW.7,PSW.0,RS1(PSW.4),、,RS0(PSW.3),工作寄存器组选择位。,CY,AC,F0,RS0,OV,P,RS1,PSW.4 PSW.3,PSW,OV(PSW.2),溢出标志位。,PSW.1,未定义,。,P(PSW.0),奇偶标志位。,P=1,表示累加器中“,1”,的个数为奇数,P=0,表示累加器中“,1”,的个数为偶数,CPU,随时监视着,ACC,中的“,1”,的个数,并反映在,PSW,中,PSW.2,PSW.1,2.,控制器,组成,:,定时与控制部件,复位电路,程序计数器(,PC,),,指令寄存器、指令译码器,数据指针(,DPTR,),堆栈指针(,SP,),等,作用,:产生计算机所需的时序,控制程序自动执行。,CPU,程序存储器,指令寄存器,外RAM,EPROM,外I/O,指令译码器,控制单片机各部分的运行,产生,ALE,,,PSEN,RD/WR,控制器是单片机的神经中枢,存放在,ROM/EPROM,中的指令被逐条送到指令寄存器,经译码器译码后,发出各种控制信号,产生一系列的微操作,把单片机的各部分组织在一起协调地工作。,程序计数器,PC,(,16,位),程序计数器,PC,用来存放即要执行的指令地址,共,16,位,低,8,位经,P0,口输出,高,8,位经,P2,口输出。,CPU,每取一次机器码,,PC,内容自动加一,,CPU,执行一条指令,,PC,内容自动增加该指令的长度。,CPU,复位后,,PC,内容为,0000H,,,它标志着程序从头开始执行。,PC,的内容变化决定程序的流向。,指令寄存器,(,8,位)指令寄存器中存放将要执行的指令代码,通过指令译码器,将指令代码转化为电信号,控制信号,ALE,等。,数据指针,DPTR,(,16,位),用于访问外部,RAM,或外部,I/O,口,提供十六位地址。用于程序存储器的查表和程序散转指令,作为基地址寄存器,提供十六位基地址。,堆栈指针寄存器,SP,(,8,位),用于管理对栈,指出栈顶位置。,MCS-51,单片机复位后,(SP)=07H,4.2.2 MCS-51,的存储器,1.,程序存储器,ROM/EPROM,位的含义:,一盏灯亮或者说一根线的电平的高低,可以代表两种状态:,0,和,1,。实际上这就是一个二进制位,因此我们就把一根线称之为一“位”,用,BIT,表示。,字节的含义:,一根线可以表于,0,和,1,,两根线可以表达,00,,,01,,,10,,,11,四种状态,也就是可以表于,0,到,3,,而三根可以表达,0-7,,计算机中通常用,8,根线放在一起,同时计数,就可以表过到,0-255,一共,256,种状态。这,8,根线或者,8,位就称之为一个字节(,BYTE,)。,1B=8bit,1KB=1024B,什么是,Flash ROM,?,ROM,(Read,-Only Memory),是,只读存储器,,满足一定的条件就能,把数据预先写进去,PROM,称之为,可编程只读存储器,,只能写一次,擦不掉,EPROM,称之为,紫外线擦除的可编程只读存储器,。用紫外线照射,可以擦除的次数是几十次,电脑上的,BIOS,芯片采用的就是这种结构的存储器,EEPROM,电擦写紫外线只读存储器,,比,FLASH,存储器速度要慢,Flash ROM,是一种,快速存储式只读存储器,。既可以电擦写而且,掉电后程序还能保存,编程寿命可以达到一千次左右,RAM,(,Random Access Memory,),,随机存取存储器,也叫,内存,,既,可以随时改写也可以随时读出里面数据的存储器,存储器,存储器就是用来存放数据的地方。它是利用电平的高低来存放数据的,也就是说,它存放的实际上是电平的高、低,而不是我们所习惯认为的,1234,这样的数字,.,一个存储器就象一个个的小抽屉,一个小抽屉里有八个小格子,每个小格子就是用来存放“电荷”的,电荷通过与它相连的电线传进来或释放掉,存储器中的每个小抽屉就是一个放数据的地方,我们称之为一个“单元”。,要放进一个数据,00011010,,我们只要把第,2,号第,4,号和第,5,号小盒子里存满电荷,其它小盒子里的电荷给放掉就行了。,一个存储器有好多单元,线是并联的,在放入电荷的时候,会将电荷放入所有的单元中,而释放电荷的时候,会把每个单元中的电荷都放掉,这样的话,不管存储器有多少个单元,都只能放同一个数,这当然不是我们所希望的,因此,要在结构上稍作变化,在每个单元上有个控制线,我想要把数据放进哪个单元,就给一个信号这个单元的控制线,这个控制线就把开关打开,这样电荷就可以自由流动了,而其它单元控制线上没有信号,所以开关不打开,不会受到影响,这样,只要控制不同单元的控制线,就可以向各单元写入不同的数据了,同样,如果要某个单元中取数据,也只要打开相应的控制开关就行了,在,MCS-51,中内部程序存储器(,ROM/EPROM,)和外部扩展程序存储器的地址是连续的,内部(,4KB,)为,00000FFFH,,外部(,64KB,)为,1000FFFFH,在使用,8051/8751,时,应使引脚,EA=1,。对于,8031,,因为内部没有程序存储器,所以应使,EA=0,,,CPU,完全从外部程序存储器(地址为,0000FFFFH,)读取指令。由于,8031,价格便宜,使用灵活,更适用于机电一体化产品的开发。,MCS-51,内部,RAM,共有,128,个单元,地址为,00H-7FH,。,MCS-51,对内部,RAM,有丰富的操作令,编程非常方便。,MCS-51,还可以在片外扩展,64KB,的,RAM,或,I/0,口,可以满足一般应用系统的需要。,MCS-51,的内部数据存储器可以划分为四个区域:,(1),工作寄存器区,从,001F,为工作寄存器区,共,32,个单元,每,8,个单元为一组,共分,4,组,每组内各寄存器编号分别为,R0 R7,。可通过,PSW,中的,RS1,,,RS0,两位选择其中的一组工作。,(2),位寻址区,内部,RAM,的,202FH,为位寻址区,该区内每一位都有一个,8,位地址,编址为,007FH,。,(3),数据缓冲区,内部,RAM,的,307FH,为数据缓冲区。实际上,在分配好工作寄存器组、位标志区以及堆找区以后,剩下的,RAM,均可作为数据缓冲器使用。,MCS-51,的堆找原则上可以设置在内部,RAM,的任意区域。但由于,001FH,为工作寄存器区,,202FH,为位寻址区,堆找可根据具体情况进行设置。,(4),特殊功能寄存器,Special Function Register,特殊功能寄存器,SFR,总共,21,个单元,离散地分布在,80FFH,地址区域内,,4.2.3,并行口(,Parallel Port,),51,系列单片机有,4,个,I/O,端口,每个端口都是,8,位准双向口,共占,32,根引脚。每个端口都包括一个锁存器,(,即专用寄存器,P0,P3),、一个输出驱动器和输入缓冲器。通常把,4,个端口笼统地表示为,P0,P3,。,(一),P0.0P0.7,:双向,I/O,访问外部程序存储器时分时作为,双向,8,位数据口,和,输出低,8,位地址,复用口;不接外部程序存储器时可作为,8,位,准双向,I/O,口,使用。,引脚,P0.X,2,1,D,Q,CK,/Q,读,引脚,读,锁存器,写,锁存器,内部总线,地址,/,数据,控制,3,4,Vcc,(二),P2.0P2.7:,双向,I/O,(内置了上拉电阻),外部程序存储器时,输出高,8,位地址,;不接外部程序存储器时可作为,8,位,准双向,I/O,口,使用。,2,1,D,Q,CK,/Q,读引脚,读,锁存器,写,锁存器,内部总线,地址高,8,位,控制,引脚,P2.X,3,内部上拉电阻,Vcc,(三),P3.0P3.7:,双功能口(内置了上拉电阻),具有特定的第二功能,。在不使用它的第二功能时它就是普通的,通用准双向,I/O,口,。,2,1,D,Q,CK,/Q,读引脚,读,锁存器,写,锁存器,内部总线,第二功能输出,引脚,P3.X,3,内部上拉电阻,Vcc,第二功能输入,4,(四),P1.0P1.7:,准双向,I/O,口,(,内置了上拉电阻),2,1,D,Q,CK,/Q,读引脚,=0,读锁存器,=0,写,锁存器,内部总线,Vcc,引脚,P1.X,内部上拉电阻,串行口(,Serial Port,),有,1,个全双工的串行口,用于串行通信。串行口由发送缓冲器,SBUF,、接收缓冲器,SBUF,、移位寄存器和串行口控制逻辑等部分组成。,定时,/,计数器(,Timer/Counter,),有,2,个,16,位的定时,/,计数器,T0,和,T1,,,T0,由,TH0,和,TL0,构成,,T1,由,TH1,和,TL1,构成,方式控制寄存器,TMOD,选择定时,/,计数器的工作模式和方式,,定时器控制寄存器,TCON,控制,T0,和,T1,的启动和停止,同时反映,T0,和,T1,的溢出状态。,D7D4,用于设定,T1,的工作方式,,D3D0,用于设定,T0,的工作方式,C/T=0,时为定时方式(对内部时钟脉冲计数),否则为计数方式,TRX,是,TX,的运行控制位,由软件置位和复位。,TRX=1,时启动定时计数器,,TRX=0,时停止计数。,中断系统(,Interrupt System,),“中断”就是正常的工作过程被外部的事件打断了,中断源,一共有,5,个:两个外部中断,两个计数,/,定时器中断,一个串行口中断,中断优先级,4.3 MCS-51,的寻址方式,1,立即寻址,2,直接寻址,3,寄存器寻址,4,寄存器间接寻址,5,变址寻址,6,相对寻址,7,位寻址,(,1,),立即寻址,-,在指令中直接给出了参与运算的操作数。,表示立即数时前面加,#,,,立即数可以用,二进制数,(B),十六进制数,(H),十进制数,(D),例如:,MOVA,,,#60H,;,A#60H,MOVDPTR,,,#3400H,;,DPTR#3400H,MOV30H,,,#40H,;,30H,单元,#40H,上述三条指令执行完后,累加器,A,中数据为立即数据,60H,,,DPTR,寄存器中数据为,3400H,,,30H,单元中数据为立即数,40H,。,(,2,)直接寻址方式,指令中直接给出操作数地址的寻址方式,能进行直接寻址的存储空间有,SFR,寄存器和内部数据,RAM,。,例如,MOVA,,,30H,;,A30H,内部,RAM,单元中的内容,30H,为直接给出的内部,RAM,的地址。,对,SFR,的访问只能采用直接寻址方式,MOV A,4AH,;,A(4AH),直接寻址方式只能给出,8,位地址,因此,此种寻址方式的寻址范围只限于片内,RAM,,具体地说:,(1),低,128,单元在指令中直接以单元地址形式给出。,(2),特殊功能寄存器,这时除了可以单元地址形式给出外,还可以寄存器符号形式给出。虽然特殊功能寄存器可以便用符号标志,但在指令代码中还是按地址进行编码的。需要说明的是,直接寻址是访问特殊功能寄存器的惟一方法。,(,3,)寄存器寻址方式,指令中,指出了参与运算的操作数所在的寄存器。,MOV A,R0,寄存器寻址方式中的寄存器:,1,)工作(通用)寄存器,R0R7,、,DPTR,2,)累加器,A,、寄存器,B,(,仅在乘除法时,)和布,尔累加器,C,(,4,)寄存器间接寻址,寄存器间接寻址是指在指令中要到寄存器的内容所指的地址中去取操作数。可以看出,在,寄存器寻址方式,中,,寄存器中存放的是操作数,;而在,寄存器间接寻址方式,中,,寄存器中存放的则是操作数的地址,,即寄存器为地址指针。这就是说,指令的操作数是通过寄存器间接得到的,因此称为寄存器间接寻址。寄存器间接寻址也需要以寄存器符号名称的形式表示。为了区别寄存器寻址和寄存器间接寻址,在寄存器间接寻址中,应在寄存器的名称前加前缀“,”,,MOV A,,,R0,;,A,内部,RAM(R0),片内,RAM,30H,R0,34H,A,30H,34H,寄存器间接寻址的寻址范围是,:,(1),片内,RAM,低,128,单元,这里只能使用,R0,R1,作为间址寄存器,.,其通用形式写为,Ri(i,=0,1);,(2),片外,RAM64KB;,使用,DPTR,作为间址寄存器,书写形式为,DPTR.,(3),片外,RAM,低,256,单元,.,除可使用,DPTR,作为间址寄存器外还可以使用,R0,R1,作为间址寄存器,.,(4),堆栈区,堆栈操作指令,(PUSH,和,POP),也属于寄存器间接寻址,即使用,SP(,堆栈指针,),作为间址寄存器的间接寻址方式,.,(,5,),变址寻址方式,(,基址寄存器+变址寄存器间接寻址),操作数的地址由,基址寄存器+变址寄存器间接寻址指出。,MCS-51,单片机中可以作,基址寄存器:,2,个十六位寄存器,,,DPTR,和,PC,MCS-51,单片机中,变址寄存器:,8位寄存器,:,累加器,A,操作数存放在一个由,(,PC,)+(,A,),或,(,DPTR,)+(,A,),指出的十六位地址所指的单元中(在,ROM,中),,,例如:,MOVC A,A+DPTR,;,A(A+DPTR),(,6,)相对寻址,以当前程序计数器,PC,的内容为基础,加上指令给出的一字节补码数(偏移量)形成新的,PC,值的寻址方式。,相对寻址用于修改,PC,值,主要用于实现程序的分支转移。,例如,,SJMP 08H,;,PCPC+2+56H,(,7,)位寻址,位寻址只能对有位地址的单元作位寻址操作。,位寻址其实是一种直接寻址方式,不过其地址是位地址。,
展开阅读全文

开通  VIP会员、SVIP会员  优惠大
下载10份以上建议开通VIP会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传

当前位置:首页 > 教育专区 > 其他

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2026 宁波自信网络信息技术有限公司  版权所有

客服电话:0574-28810668  投诉电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服