- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
项目机械手程序设计-课题2
项目三 机械手程序设计
项目内容:
1.通过程序控制机械手动作。从而完成伸长、旋转、抓件等动作。
2.了解MCS-51单片机指令的基本格式和寻址方式、MCS-51单片机的指令系统、汇编语言源程序的基本设计方法和调试方法以及程序设计举例。介绍一些实用的小程序来培养学生的兴趣并拓宽学生的知识面,结合程序设计强化学生对指令的理解。
能力目标:
课题1 单片机的寻址方式
课题2 单片机指令
课题3 简单程序运行与调试
课题4 汇编语言程序设计
课题5 分支程序设计
课题6 循环程序设计
实践演练:
1.通过实践了解单片机的寻址方式、指令系统。会使用汇编语言进行顺序结构程序、分支结构程序、循环结构程序设计和调试。
2.通过该项目的训练,提高学生的实际动手操作能力,养成学生的工程道德观念,建立工程敬业精神和团队合作精神。
项目三 课题2单片机指令
知识要点
掌握MCS-51单片机的指令系统。
能力训练
通过实践掌握MCS-51单片机的指令系统,并能够熟练应用。
课题内容
1、数据传送类指令
1).以累加器A为目的操作数的指令
MOV A,Rn
MOV A,direct
MOV A,@Ri
MOV A,#data
2).以寄存器Rn为目的操作的指令
MOV Rn,A
MOV Rn,direct
MOV Rn,#data
这组指令功能是把源地址单元中的内容送入工作寄存器,源操作数不变。
3).以直接地址为目的操作数的指令
MOV direct,A
MOV direct,Rn
MOV direct1,direct2
MOV direct,@Ri
MOV direct,#data
4).以间接地址为目的操作数的指令
MOV @Ri,A
MOV @Ri,direct
MOV @Ri,#data
下面我们通过一些例子加以说明:
例1: MOV @R0,A ;把A的内容送入以R0中的内容为地址的存储单元中。
MOV @R1,20H ;把20H中的内容送入以R1中的内容为地址的存储单元中。
MOV @R0,#34H ;把立即数34H送入以R0中的内容为地址的存储单元中。
5).十六位数的传递指令
MOV DPTR,#data16
这是唯一的一条16位立即数传递指令,
6).累加器A与片外RAM之间的数据传递类指令
MOVX A,@Ri
MOVX @Ri,A
MOVX A,@DPTR
MOVX @DPTR,A
7).程序存储器向累加器A传送指令
MOVC A,@A+DPTR
MOVC A,@A+PC
8).堆栈操作
PUSH direct
POP direct
MOV B,#20
PUSH ACC
PUSH B
9).字节交换类指令
XCH A,Rn
XCH A,direct
XCH A,@Ri
10).半字节交换指令
XCHD A,@Ri
2、算术运算类指令
1).不带进位位的加法指令
ADD A,#data
ADD A,direct
ADD A,Rn
ADD A,@Ri
2).带进位位的加法指令
ADDC A,Rn
ADDC A,data
ADDC A,@Ri
ADDC A,#data
3).带借位的减法指令
SUBB A,Rn
SUBB A,data
SUBB A,@Ri
SUBB A,#data
4).乘法指令
MUL AB
5).除法指令
DIV AB
6).加1指令
INC A
INC Rn
INC direct
INC @Ri
INC DPTR
用途很简单,就是将后面目标中的值加1。
例2:(A)=12H,(R0)=33H,(21H)=32H,(34H)=22H,DPTR=1234H。执行下面的指令后,其结果如下:
INC A ;(A)=13H
INC R2 ;(R0)=34H
INC 21H ;(21H)=33H
INC @R0 ;(34H)=23H
INC DPTR ;( DPTR)=1235H
7).减1指令
DEC A
DEC RN
DEC direct
DEC @Ri
与加1指令类似,请读者自己思考。
8).十进制调整指令
DA A
这条指令是进行BCD码运算时,跟在ADD或ADDC指令之后,将相加后存放在累加器中的结果进行修正。
修正的条件和方法为:
若(A0~3)9或(AC)=1,则(A0~3)+06H→(A0~3);
若(A4~7)9或(CY)=1,则(A4~7)+06H→(A4~7)。
若以上二条同时发生,或高4位虽等于9 ,但低4位修正后有进位,则应加66H修正。
以上讨论的修正情况是由ALU硬件中的十进制修正电路自动进行的,用户不必考虑,何时该加
文档评论(0)