1 / 41
文档名称:

第2讲:指令系统及开发语言.ppt

格式:ppt   大小:389KB   页数:41页
下载后只包含 1 个 PPT 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

第2讲:指令系统及开发语言.ppt

上传人:落意心冢 2022/8/12 文件大小:389 KB

下载得到文件列表

第2讲:指令系统及开发语言.ppt

相关文档

文档介绍

文档介绍:第2讲:指令系统及开发语言
一、指令系统概述
1、指令分类
MCS-51系列单片机共有111条指令

按功能可分成5类指令:
数据传送指令(29条)
算术运算指令(24条)
发光报警

接口电路设计见右图
R1
330

+5V
D1
LED


R2
+5V
Q1
8550
B1
BELL
+5V

R3
10K
SW1
ORG 0000H
LJMP START
ORG 0100H
START: MOV SP,#60H
LOOP1: JB , $
JNB , $
LCALL SOUND
SJMP LOOP1
SOUND: MOV R7, #5
SOUND1: CLR
MOV R0, #20
LCALL DELAY
SETB
MOV R0, #10
LCALL DELAY
DJNZ R7, SOUND1
RET
DELAY: MOV R1,#100 ;100ms
DELAY1: MOV R2,#200 ;1ms
DELAY2: NOP
NOP
NOP
DJNZ R2, DELAY2
DJNZ R1, DELAY1
DJNZ R0, DELAY
RET
四、C51程序设计举例
1、C51是专用于51单片机硬件开发的C语言。
2、C51与标准C的区别,大致可分为8类:
a)8051存储类型及存储区域;
b)存储模式;
c)存储器类型声明;
d)变量类型声明;
e)位变量与位寻址;
f)特殊功能寄存器;
g)C51指针;
h)函数属性。
a)存储类型及存储区域
code: 程序存储区
内部数据存储区:
data:直接寻址区,内部RAM低128位(00H~7FH)
idata:间接寻址区,整个内部RAM(00H~FFH)
bdata:可位寻址区(20H~2FH)
外部数据存储区:
xdata:可指定64K外部RAM(0000H~0FFFFH)
pdata:能访问1页(256Byte)的外部RAM
特殊功能寄存器:
sfr:字节寻址 比如 sfr P0=0x80;为PO口地址为80H
sfr16:字寻址,如sfr16 T2=0xcc;指定Timer2口地址 T2L=0xcc T2H=0xCD;
sbit:位寻址,如sbit EA=0xAF
b)存储模式
存储模式决定了没有明确指定存储类型的变量,函数参数等的缺省存储区域,共三种(在C51编译器选项中选择):
Small模式 所有缺省变量参数均装入内部RAM,优点是访问速度快,缺点是空间有限,只适用于小程序。
Compact模式 所有缺省变量均位于外部RAM区的一页(256Bytes),具体哪一页可由P2口指定,,也可用pdata指定,优点是空间较Small宽裕,速度较Small慢,较large要快,是一种中间状态。
Large模式 所有缺省变量可放在多达64KB的外部RAM区,优点是空间大,可存变量多,缺点是速度较慢。
C)存储器类型声明
变量或参数的存储类型可由存储模式指定缺省类型,也可由关键字直接声明指定。各类型分别用:code,data,idata,xdata,pdata说明
例: data uar1;
char code array[ ]=“hello!”; unsigned char xdata arr[10][4];
d)变量类型声明
C51提供以下几种扩展数据类型: bit :位变量值为0或1 sbit :从字节中定义的位变量 0或1 sfr :sfr字节地址 0~255 sfr16 :sfr字地址 0~65535 其余数据类型如:char,enum,short,int,long,float等与ANSI C(标准C)相同。
e)位变量与位寻址
●位变量定义用bit,存储于内部RAM的20H~2FH
●可位寻址区说明:
可作如下定义: int bdata i; unsigned char bdata arr[3], 然后: sbit bit0=i^0;sbit bit15=i^15; sbit arr07=arr[0]^7;sbit arr17=arr[1]^7;
f)特殊功能寄存器
g)C51指针
●一般指针的声明与标准C的