(共16张PPT)
二、简易机器人的程序设计
2、程序设计语言
学习目标:
了解一种单片机汇编语言,掌握一种单片机常用的编程指令。
学会用指令编制简单控制的程序。
2、程序设计语言
简易机器人的单片机是解读编程语言、执行指令的惟一部件
单片机的编程语言
机器语言全是由0、1组合起来的代码,执行速度最快,但可读性很差,不利于推广。
高级语言具有通用性,人使用起来方使,常见的有BASIC、C、PASCAL等,但因编译后产生的源代码较长,因而单片机的执行速度较慢。
汇编语言的执行速度和使用的方便性介于上面两种语言之间。使用汇编语言编写的程序内存占用少,执行速度较快。
汇编语言
MCS—51系列汇编语言。
汇编语言指令由标号、操作码,操作数和注释四部分组成。它的基本格式如下:
标号、操作码,操作数和注释
标号是编程用户设定的符号,它代表指令所在的地址,它必须以字母开头,以“:”结尾。
操作码是由助记符表示的一些字符串,规定了指令的操作功能,例如,MOV.DJNZ、ADD等。
操作数是指参加操作的数据或数据的地址。
在传送指令中多数有两个操作数,左边的通常是目的操作数,表示操作结果存放的地方;右边的通常是源操作数,指出操作数的来源。两个操作数之间用逗号隔开,操作码和操作数之间留有空格。
有些指令只有一个操作数或者没有操作数,
注释是对该汇编指令进行解释,以便于读者理解,注释之前要加分号·;”。
常用的汇编指令
汇编指令主要有;数据传送指令、算术运算指令、位操作类指令、控制转移类指令等
操作数的形式-#
1、带#的操作数----“立即数”,即具体数值如# 30,-----十进制数值30;
2、 # 30H----十六进制数值30H
3、十六进制数每位数用0、1、2、3、4、5、6、7、8、9、A、B、C、D、E、F表示,35H----十进制数3*16+5=53
4、30----地址为30的存储器中的数值
马上行动p49
1、将30H这个十六进制数送到累加器A中去,写出相应的指令。
2、把累加器A中的内容加上69H再送回到A,写出相应的指令。如果A中的内容原为33H,则指令执行后,累加器A中的内容是102H吗?如果不是,应该为多少?
“马上行动”参考答案
1、MOV A, # 30H
2、ADD A, # 69H 。不是,9CH。
计算方法:9*16+12=156
流程框图的功能-----汇编指令
支持的指令:CLR P3.3
灯亮
8位单片机
输入/输出口是以8个“位”为一个单元
P1.0~P1.7对应一个单元
P1.0对应P1单元的0位
P1.3对应P1单元的3位
SETB、CLR指令是其中某一位进行操作
SETB P1.3,表示置P1单元的第3位为高电平
马上行动p50
仿照灯亮的例子,写出灯熄灭的汇编指令。
“马上行动”p50参考答案: SETB P3.3
资源库
1、《少年电子技师读本》),宋东生等编著.电子工业出版杜,2002年5月第1版。
2、《MCS一51系列单片机应用系统设计》,何立民编著,北京航空航天大学出版社,1990年第1版。
01单片机网站http://www.
单片机爱好者http://www.mcnfan.com
中国电子网http://www.21ic.com
机器人网站http://