《技能训练3单片机指令的执行.ppt》由会员分享,可在线阅读,更多相关《技能训练3单片机指令的执行.ppt(27页珍藏版)》请在三一办公上搜索。
1、技能实训3 单片机指令的执行,实训内容介绍硬件软件相关的知识点指令系统存储器配置程序结构程序讲解练习,实训3 简介,利用单片机的输出端口控制LED发光管的亮灭,只要修改程序就可以让发光管产生各式各样的彩灯变化组合。,程序基本结构,延时程序,程序的实现,ORG 0000HMAIN:MOV A,#0FEH LOOP1:MOV P2,A;发送到P2口 RL A;左移指令 CALL DELAY;调用软件延时子程序 LJMP LOOP1;反复执行,执行的效果,延时程序,代码尽可能短CPU执行时间,延时程序代码,ORG 0100HDELAY:MOV R5,#5;(R5)=5DEL01:MOV R6,#20
2、0;(R6)=100DEL02:MOV R7,#250;(R7)=250DEL03:DJNZ R7,DEL03;(5*200*250)*2*12*1/12MHz=0.5S DJNZ R6,DEL02 DJNZ R5,DEL01 RET,知识点1:3.2 单片机运行的基本特点,MCS-51系统单片机的一个机器周期由12个时钟振荡周期构成。假设时钟振荡电路采用12MHz的晶振,则:时钟频率 fosc=12MHz时钟周期 Tosc=1/fosc=1/12MHz机器周期 Tm=12*Tosc=12/12MHz=1us指令周期指执行一条指令所需要的时间,知识点2:3.3 单片机指令及其周期,MCS-51
3、系列单片机指令系统共有指令111条,分为五大类:数据传送类指令(29条);算术运算类指令(24条);逻辑运算与移位类指令(24条);控制转移类指令(17条);位操作类指令(17条)。要在使用时熟悉,不可能一下子熟悉。,知识点3:3.4 单片机存储器配置,单片机应用必须熟悉单片机内部有哪些资源,单片机最重要的资源是存储器。,知识点4:3.5程序的典型结构,程序是由指令构成,按指令执行的顺序,可以把程序的基本结构分为顺序程序、分支程序、循环程序。这三种基本的程序结构构成了各种更复杂的程序。正确熟练使用三种程序结构是编写程序的基础之一。,更详细的知识点2:数据传送类指令,使用最多的指令;三个区域之间
4、进行操作,实例:初始化存储器数据,ORG 0100HDELAY:MOV R5,#5;(R5)=5DEL01:MOV R6,#200;(R6)=100DEL02:MOV R7,#250;(R7)=250DEL03:DJNZ R7,DEL03;(5*200*250)*2*12*1/12MHz=0.5S DJNZ R6,DEL02 DJNZ R5,DEL01 RET,延时程序代码,实例:初始化存储器数据,ORG 0000HMAIN:MOV A,#0FEH LOOP1:MOV P2,A;发送到P2口 RL A;左移指令 CALL DELAY;调用软件延时子程序 LJMP LOOP1;反复执行,主程序的
5、实现,实例:要求把程序存储区的地址为(0100)16单元的数据传送到P2口,具体实现方法:MOV DPTR,#0100H;设置读取程序存储区数据的单元地址 MOVC A,DPTR;通常用这条指令可以读取程序存储区的数据 MOV P2,A;送到P2口要注意有哪些指令可以使用,若没有相应的指令,则需要综合使用多条指令来实现。,更详细的知识点4:3.5.3 循环程序:一般的结构 图3-8,循环程序就是重复执行同一段的指令,如图3-8,一般包括如下四个部分:,(1)初始化部分:为循环程序做准备,如规定循环次数、给各变量和地址指针预置初值。(2)处理部分:为反复执行的程序段,是循环程序的实体,也是循环程
6、序的主体。(3)循环控制部分:这部分的作用是修改循环变量和控制变量,并判断循环是否结束,直到符合结束条件时,跳出循环为止。(4)结束部分:这部分主要是对循环程序的结果进行分析、处理和存放。,实例:3.5.4 延时程序,DEL03:DJNZ R7,DEL03 这条指令执行了多少次?,软件延时程序,纯粹利用执行指令来让耗费CPU运行时间,让CPU等一段时间之后再执行后续程序。循环执行内循环的指令,可以用极短的指令实现很多次循环次数、且可控制循环次数的程序,常用于软件延时。如何改变延时程序的延时时间?,逻辑运算与移位类指令,80C51有逻辑运算与移位类指令共有24条,如表3-4。其中包括与、或、异或
7、三种逻辑运算指令18条,移位指令4条,取反指令1条,清零指令1条。主程序中的移位指令:RL A实现流水灯效果的数据处理,学会没有?实训提高会不会做?,3.6技能提高:改变彩灯闪动的速度,练习讲解:一、填空,半导体存储器中有一类存储器在掉电后不会丢失数据,称之为_,有一类存储器掉电后会丢失数据,称之为_。单片机的存储器空间从物理上分为4个存储空间,分别是_、_、_、_。MOV A,#14H执行后,A中的数值为_。数据传送类指令的操作码有_、_、_。,四、程序题1、观察指令,判断执行结果,MOV A,#10H;A=_ MOV R0,#20H;R0=_ MOV 17H,R0;(17H)=_ MOV
8、R0,A;(R0)=_ MOV 22H,A;(17H)=_ MOV R1,#17H;R0=_ MOV A,R1;A=_ MOV 22H,A;(17H)=_ MOV 11H,22H;(11H)=_,四、程序题 2、观察指令段,判断执行结果,MOV DPTR,#2314H MOV R0,DPH MOV 14H,#22H MOV R1,DPL MOV 23H,#56H MOV A,R0 XCH A,DPH 执行以上指令后A=_,四、程序题3、观察指令段,判断执行结果,MOV R0,#2MOV A,R0 MOV DPTR,#TAB MOVC A,A+DPTR TAB:DB 13H,22H,33H,44H,67H 执行以上指令后A=_,小结,认识数据传送指令、算术运算指令、逻辑运算指令、控制转移指令、位操作指令,掌握MCS-51指令系统的大概情况。认识指令周期,单片机执行一条指令的时间。熟悉单片机存储器配置的基本情况。认识程序的基本结构,学习循环程序的编写及其结构特点,学会使用多重循环编写延时程序,会估算其延时时间。,