ImageVerifierCode 换一换
格式:DOCX , 页数:20 ,大小:40.72KB ,
资源ID:12278381      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/12278381.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(单片机教案2.docx)为本站会员(b****5)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

单片机教案2.docx

1、单片机教案2常 州 轻 工 职 业 技 术 学 院 单片机原理及应用 课 程 授 课 教 案 NO 3授课日期授课班级课题指令系统授课类型讲授授课时数 教学目的(1)了解指令系统的概述 (2)熟悉寻址方式 (3)掌握MCS-51系列单片机指令重点难点寻址方式、MCS-51系列单片机指令寻址方式教具挂图多媒体课件教学及过程分配主 要 教 学 内 容教学方法的运用20分钟10分钟10分钟5分钟5分钟10分钟5分钟5分钟10分钟10分钟第二章 MCS-51单片机指令系统一指令的表达形式1二进制代码(机器码)指令2助记符(汇编语言)指令助记符指令: MOV A, # 30H 二进制代码指令: 0111

2、0100 00110000助记符指令必须转换成二进制代码指令才能存入存储器。二、汇编语言指令格式操作码 第一操作数 ,第二操作数 ,第三操作数(1)操作码:用来规定指令进行何种操作,是指令中不能空缺的部分。(1) 操作数:表示参与指令操作的数据或数据所在的地址。为可选项。有两个操作数时,前一个为目的操作数,后一个为源操作数。三指令中有关操作数符号的说明Rn工作寄存器R0R7(n= 0、1、27)。Ri 工作寄存器R0和R1(i=0或1)。Direct内部RAM的单元地址,地址范围为00FFH。# data8位立即数,即常数。# data1616位立即数。addr1616位目的地址。Addrll

3、 11位目的地址。四 MCS-51单片机指令系统MCS51的指令按功能分为五大类:数据传送、算术运算、逻辑运算、控制转移和位操作指令。(一) 数据传送类指令 注意:源操作数在传送前后保持不变。1 内部数据传送指令【例2-1】 设(30H)=40H,(40H)=10H,(P1)=0CAH,试判断下列程序执行后的结果。MOV R0,#30H ; R0#30HMOV A, R0 ; A(30H),(A)= 40HMOV R1, A ; R1(A),(R1)=40HMOV B, R1 ; B(40H),(B)=10HMOV R1, P1 ; (R1) (P1),(40H)=0CAHMOV P2, P1

4、 ; P2(P1),(P2)=0CAH结果是:(A)=40H,(B)=10H,(40H)=0CAH,(P2)=0CAH2外部数据传送指令此类指令完成对片外RAM单元中数据的读/写操作。注意:用R0和R1间接寻址时,要占用P2寄存器放外部RAM的高8位地址,R0和R1放低8位地址。使用时,要先将低8位地址送入Ri(R0或R1),高8位地址送入P2寄存器,然后再用上述指令。 【例2-2】 将片外RAM1000H单元中的内容送到2000H单元。 方法一 MOV DPTR ,#1000H ; DPTR#1000H MOVX A ,DPTR ; A(DPTR) MOV DPTR ,#2000H ; DP

5、TR# 2000H MOVX DPTR ,A ;(DPTR)(A)方法二 MOV P2 ,#10H ;P2#10H MOV R0 ,#00H ;R0#00HMOVX A,R0 ;A(R0) MOV P2 ,#20H ;P2#20H MOVX R0,A ;(R0)(A) 注意:在两个片外RAM单元之间是不能直接进行数据的传送的,必须经过片内的累加器A来间接地传送。 3访问程序存储器的传送指令(查表指令) MOVC A,A+PC ;PC(PC)+1 , A(A)+(PC)MOVC A,A+DPTR ;A(A)+(DPTR) 其功能是到程序存储器中查表格数据送入累加器A。程序存储器中除了存放程序之外

6、,还会放一些表格数据,又称查表指令。指令中的操作数为表格数据。前一条指令将A中的内容与PC的内容相加得到16位表格地址;后一条指令是将A中的内容与DPTR中的内容相加得到16位表格地址。4数据交换指令数据交换是在内部RAM单元与累加器之间进行,有字节和半字节交换两种。(1)字节交换指令XCH A,RnXCH A,direct XCH A, Ri(2)半字节交换指令XCHD A, Ri5堆栈操作指令在片内RAM的00H7FH地址区域中,可设置一个堆栈区,主要用于保护和恢复CPU的工作现场。(1)进栈指令 PUSH direct ; SP(SP)+1 ; (SP)(direct);(2)出栈指令P

7、OP direct ; direct(SP); SP (SP)1;二、算术运算类指令注意大部分指令的执行结果将影响程序状态字PSW的有关标志位。 如果把参加运算的两个操作数看作是无符号数(0255),加法运算对CY标志位的影响如下:(1) 若结果的第7位向前有进位(C7= 1),CY=1(2) 若结果的第7位向前无进位(C7= 0),CY=0【例2-3】 设有两个无符号数放在A和R2中,设(A)= 0C6H(198),(R2)= 68H(104),执行指令:ADD A,R2 试分析运算结果及对标志位的影响。 解: 写成竖式 (A) 11000110 198 (R2) + 01101000 +

8、104 (A) 1 00101110 302 结果是:(A)= 2EH, CY=1。【例2-4】 设有两个16位无符号数,被加数存放在内部RAM的30H(低位字节)和31H(高位字节)中,加数存放在40H(低位字节)和41H(高位字节)中。试写出求两数之和,并把结果存放在30H和31H单元中的程序。参考程序为:MOV R0,#30H ; 地址指针R0赋值MOV R1,#40H ; 地址指针R1赋值MOV A,R0 ;被加数的低8位送AADD A,R1 ;被加数与加数的低8位相加,和送A,并影响CY标志MOV R0, A ;和的低8位存30H单元INC R0 ;修改地址指针R0INC R1 ;修

9、改地址指针R1MOV A,R0 ;被加数的高8位送AADDC A,R1 ;被加数和加数的高8位与CY相加,和送AMOV R0, A ;和的高8位存31H单元(二)减法指令1、带借位减法指令该组指令的功能是从累加器A减去源操作数及标志位CY,其结果再送累加器A。CY位在减法运算中是作借位标志。SUBB指令对标志位的影响如下:(1)若第7位向前有借位(C7= 1),则CY=1;(2)若第7位向前无借位(C7= 0),则CY=0,【例2-5】 在A和R3中存有两个无符号数, 设(A)=98H,(R3)=6AH,CY=1,执行指令:SUBB A, R3分析执行结果及对标志位的影响解: (A) 1001

10、1000 98H (R3) 01101010 6AH CY 1 1 (A) 00101101 2DH结果是: (A)=2DH,CY=02、减1指令指令 操作 机器码DEC A ; A(A)-1 00010100DEC Rn ; Rn(Rn)-1 00011rrrDEC direct ; direct(direct)-1 00010101 directDEC Ri ; (Ri) (Ri)-1 0001011i(四)乘法指令指令 操作 机器码MUL AB ; BA(A) (B) 10100100指令的功能是把累加器A和寄存器B中两个8位无符号整数相乘,并把乘积的高8位存于寄存器B中,低8位存于累加

11、器A中。乘法运算指令执行时会对标志位产生影响:CY标志总是被清0,即CY=0;OV标志则反映乘积的位数,若OV=1,表示乘积为16位数;若OV=0,表示乘积为8位数。(五)除法指令指令 操作 机器码 DIV AB ; A商,B余(A)(B) 10000100指令的功能是把累加器A和寄存器B中的两个8位无符号整数相除,所得商的整数部分存于累加器A中,余数存于B中。除法指令执行过程对标志位的影响:CY位总是被清0,OV标志位的状态反映寄存器B中的除数情况,若除数为0,则OV=1,表示本次运算无意义,否则,OV=0。三、逻辑运算类指令在MCS51指令系统中,逻辑运算类指令有25条,可实现与、或、异或

12、等逻辑运算操作。这类指令有可能会影响CY和P标志位的状态。(一)累加器A的逻辑操作指令 1、累加器A清0CLR A ; A00H 2、累加器A取反CPL A ; A() 3、累加器A循环左移RL A 利用左移指令,可实现对A中的无符号数乘2的目的。4、累加器A带进位循环左移RLC A 7、累加器A半字节交换 SWAP A (二)逻辑指令 【例2-10】 将工作寄存器R2中数据的高4位和R3中的低4位拼成一个数,并将该数存入30H。MOV RO,#30H ;R0作地址指针MOV A, R2ANL A, #OFOH ;屏蔽低4位MOV B, A ;中间结果存B寄存器MOV A, R3ANL A,#

13、OFH ;屏蔽高4位ORL A,B ;组合数据MOV RO, A ;结果存30H单元。【例2-11】 分析下列程序的执行结果。MOV A, #77H ;(A)=77HXRL A,#0FFH ;(A)= 77HFFH = 88HANL A, #0FH ;(A)=88H 0FH = 08HMOV P1,#64H ;(P1)=64HANL P1,#0F0H ;(P1)=64HF0H = 60HORL A,P1 ;(A)= 08H60H=68H指令系统简介讲解板书板书举例讲解举例讲解讲解讲解举例讲解举例讲解举例课后小记 授课教师 常 州 轻 工 职 业 技 术 学 院 单片机原理及应用 课 程 授 课

14、 教 案 NO 4授课日期授课班级课题指令系统授课类型讲授授课时数 教学目的(1)了解指令系统的概述 (2)熟悉寻址方式 (3)掌握MCS-51系列单片机指令重点难点寻址方式、MCS-51系列单片机指令寻址方式教具挂图多媒体课件教学及过程分配主 要 教 学 内 容教学方法的运用10分钟15分钟20分钟10分钟5分钟10分钟10分钟10分钟四、控制转移类指令转移指令的功能是通过修改程序计数器PC的值,使程序执行的顺序发生变化,从而改变程序执行的方向。1无条件转移指令无条件转移指令是使程序无条件转移到指定的地址去执行。LJMP addr16 ;PCaddr16 00000010 a15 a8 a7

15、 a0AJMP addr11 ; PC(PC)+2 a10 a9 a8 00001 a7 a0 PC100addr11SJMP rel ; PC(PC)+2 + rel 10000000 relJMP A+DPTR ; PC(A)+(DPTR) 011100112条件转移指令条件转移指令要求对某一特定条件进行判断,当满足给定的条件,程序就转移到目标地址去执行,条件不满足则顺序执行下一条指令。可用于实现分支结构的程序。这类指令中操作数都为相对寻址方式,目标地址的形成与SJMP指令相类似。当满足转移范围的条件下,均可用“addr16”代替“rel”。【例2-17】 将片内RAM的40H单元开始的数

16、据块传送到片外RAM的1000H开始的单元中,当遇到传送的数据为零则停止传送。START:MOV R0,#40H ;片内RAM数据块首址 MOV DPTR,#1000H ;片外RAM数据块首址LOOP: MOV A,R0 ;取数 JZ ABD ;等于零,结束 MOVX DPTR,A ;不为零,送数 INC R0 ;地址指针加1 INC DPTR ;地址指针加1 SJMP LOOP ;转LOOP,继续取数 ABD:SJMP ABD ;踏步2、比较转移指令【例2-13】 当Pl口输入数据为55H时,程序继续运行,若不为55H则程序进入等待状态。程序如下: WAIT:MOV A, P1 ; A(P1

17、)CJNE A,#55H,WAIT ;(A) 55H,转向WAIT;(A)=55H,则顺序执行 【例2-17】 某温度控制系统中,温度的测量值T存在累加器A,温度的给定值Tg存在60H单元。要求:T=Tg时,程序返回(符号地址为FH);TTg时,程序转向降温处理程序(符号地址为JW);TTg时,程序转向升温处理程序(符号地址为SW),试编制程序。相应的程序如下:CJNE A,60H,L00P ;T Tg,转向 L00PAJMP FH ;T=Tg,转向FH LOOP: JC SW ; TTg,转向JW3、循环转移指令【例2-15】 将片内RAM的30H39H单元置初值00H09H。MOV R0,

18、# 30H ;设定地址指针MOV R2,# 0AH ;数据区长度设定MOV A,#00H ;初值装入ALOOP :MOV R0,A ;送数 INC R0 ;修改地址指针 INC A ;修改待传送的数据DJNZ R2, LOOP ;未送完,转LOOP地址继续送,否则传送结束HERE:SJMP HERE ;踏步(三)子程序调用和返回指令1、调用指令LCALL addr16 ; addr16:子程序入口地址ACALL addr11RET ;从子程序返回到主程序的断点地址。RETI ;从中断服务程序返回到主程序的断点地址。NOP ;PC(PC)+1 00000000空操作指令是单字节指令。该指令执行时

19、不进行任何有效的操作,但需要消耗一个机器周期的时间,所以在程序设计中可用于短暂的延时。五、位操作指令在MCS-51存储器中有两个可位寻址的区域,可利用位操作指令对这些位进行单独的操作。存储器中的两个位寻址区的分布是:(1) 片内RAM的20H2FH区域;(2) 特殊功能寄存器中地址可被8整除的单元。位操作指令中,bit是位变量的位地址,可使用四种不同的表示方法,下面以CY位为例进行说明。(1) 位地址(如:D7H)(2) 位定义名(如:CY)(3) 寄存器名.位(如:PSW.7)注意:累加器必须表示成:ACC.0ACC.7。(4) 字节地址.位(如:D0H.7)标志位CY在位操作指令中称作位累

20、加器,用符号C表示。1位传送指令MOV C, bit ; CY(bit) MOV bit, C ; bit (CY) 2置位和清零指令 CLR C ; CY0 CLR bit ; bit 0 SETB C ; CY1 SETB bit ; bit 1 【例2-15】 SETB RS1 CLR RS0 ;设定工作寄存器2区为当前工作区3位逻辑运算指令ANL C,bit ;CY(CY)(bit) ANL C,/bit ;CY(CY)() ORL C,bit ;CY(CY)(bit) ORL C,/bit ;CY(CY)() CPL C ;CY() CPL bit ;bit()【例2-17】 用编程

21、的方法实现图2-2所示电路的功能。 程序清单: MOV C, P1.1ORL C, P1.2ANL C, P1.0MOV P1.3, C简单讲解板书举例举例讲解讲解讲解讲解举例讲解课后小记 授课教师 常 州 轻 工 职 业 技 术 学 院单片机原理及应用 课 程 授 课 教 案 NO_ 5 _授课日期授课班级课 题实验一:单片机认识实验授课类型讲授课时数2教 学目 的1、掌握WAVE6000软件的使用2、熟悉MCS-51系列单片机的指令系统。重 点难 点传送及算术指令的功能、用途进一步理解寻址方式教 具挂 图教学过程及时间分配教学方法的应用10分钟10分钟准备工作检查和明确实验要求一、 实验目

22、的:1、掌握WAVE6000软件的使用 2、熟悉MCS-51系列单片机的指令系统。二、实验仪器: PC机(WAVE6000软件)三、实验内容:在PC机上使用WAVE6000软件,分别输入下面两段程序并调试执行 程序1 MOV 30H,#40H MOV R0,#30HMOV A,R0MOV R1,AMOV DPTR,#1000HMOVX DPTR,A程序2 MOV A,60H XCH A,70H MOV 60H,A讲解20分钟 四、实验说明 (一)WAVE6000软件菜单命令说明(MCS-51系统)1 FILE菜单 (ALT-F) 文件FileOpen (F3) 打开文件打开一个编辑窗口,出现对

23、话框,如图2.3.5所示,在输入框中输入要打开的文件名,或在列表框找到该文件后按下鼠标按钮,单击OK按钮表示打开一个新的编辑窗口;单击Replace按钮表示替代当前编辑窗口中的内容。FileSave (F2) 存盘将当前编辑窗口中的文件存到磁盘上。FileSave as 换名存盘更换文件名后再存盘。FileLoad OBJ as 调入机器码将目标代码从磁盘上调入,操作与 FileSave OBJ as 相仿。2 Edit (ALTE) 编辑EditCut 剪切删除程序中选定的正文,并将其置于裁剪板 Clip Board 窗口中。EditCopy 复制保留选定的正文,同时将它拷贝到 Clip B

24、oard 窗口中,再用地 EditPaste 条命令将裁剪板中的内容复制在光标处。EditPaste 粘贴将裁剪板中的内容插入到当前窗口的光标位置,裁剪板中的内容不变。利用裁剪板和本命令可实现文本块的移动和复制。EditClear 删除删除程序中选定的正文,但不将其置于裁剪板中。3. Run 菜单 (ALTR) 运行程序RunProgram reset (CTRL-F2) 程序复位中止当前调试过程,将CPU复位。如果是用 RunRun 调试程序,则要用Ctrl+C,来中止正在运行的程序。RunGoto cursor (F4) 执行到光标处程序从当前指针PC一直执行到光标所在的位置。如果光标所在

25、的行不包含可执行语句,将显示警告信息:No code generate on this line。RunTrace into (F7) 跟踪执行跟踪执行程序。由用户控制一步一步地执行程序,碰到过程调用时仍将一步一步地执行程序中的每条语句,而不是一步执行完整个过程。RunStep over (F8) 单步执行单步执行程序与跟踪执行相仿,不同的是当碰到过程调用时,一步执行完整个过程。RunExec 自动单步执行放慢程序执行的速度,以用户可以查看的速度一步一步的自动执行程序。讲解40分钟10分钟RunRun (CTRLF9) 全速执行从当前 PC 处, 全速执行程序。RunSet PC 设置PC将程

26、序PC值,设置为光标所在的行的PC值。4 Assemble 汇编AssembleAssemble (ALTF9) 汇编汇编当前窗口中的文件。AssembleMake (F9) 汇编主文件如果用户程序是由多个文件构成,其中有一个应为主文件,由它用 INCLUDE 伪指令引用其他的文件。按 F9 后, 不论当前窗口是否为主文件, 汇编总从主文件开始. 主文件由OptionMain File 命令设定。AssembleList 生成列表文件汇编源程序并生成列表文件,后缀为 .LST。列表文件是一种同时包含有源程序、地址码、机器码的文件,对于调测,尤其是仿真器独立调测是必不可少的。AssembleDi

27、sassemble 反汇编打开一个对话框,在File Name中填入文件名,在Start address, End Address中填入始末地址,按ENTER键开始反汇编。反汇编生成两种格式的文件:With Label : 带标号反汇编,缺省文件扩展名为.ASM。With address: 带地址,机器码反汇编,缺省文件扩展名为.DIS。(二)软件使用方法及步骤1. 新建文件(*.ASM)2. 设置仿真器类型,仿真头类型,CPU类型.3. 输入(或调入)汇编语言源文件.4. 编译(或汇编)源文件集成环境首先对源程序进行汇编,若发现错误,立即返回编辑状态, 并打开一个错误信息窗口,用户可按提示修改源程序, 若无错误则返回编辑窗口等待调试。5. 单步或全速调试程序6. 检查运行结果五、实验步骤1、启动WAVE6000软件2、输入练习程序3、保存程序4、汇编源程序5、程序执行前的检查6、运行,调试程序 单步法运行程序断点法运行程序连续法运行程序8、检查运行结果六、实验结果程序1 地址运行前内容运行后内容30H1000H程序2地址运行前内容运行后内容60H70H课后小记 授课教师

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1