3、(10011.101)B=1×24+0×23+0×22+1×21+1×20+1×2-1+0×2-2+1×2-34、常用的ASCII码字符:0—9的ASCⅡ码30H—39H;A—Z的ASCⅡ码41H—5AH;a—z的ASCⅡ码61H—7AH。
5、十进制的15,压缩BCD码为0001 0101,非压缩BCD码为0000 0001 0000 0101。
6、正数:原,反,补相同;负数:原,反,补不同,但最高位为1。
负数: 原→反,符号位不变,尾数按位求反原→补,符号位不变,尾数按位求反+1补→原,符号位不变,尾数求反+1反→原,符号位不变,尾数求反.7、振荡周期: 也称时钟周期, 是指为单片机提供时钟脉冲信号的振荡源的周期。
单片机外接晶振的倒数,例如12MHz的晶振,时钟周期是1/12μs。
状态周期: 每个状态周期为时钟周期的 2 倍, 是振荡周期经二分频后得到的。
机器周期: 一个机器周期包含 6 个状态周期S1~S6, 也就是12 个时钟周期。
在一个机器周期内, CPU可以完成一个独立的操作。
晶振是12MHz,一个机器周期就是1μs,晶振是6MHz,机器周期是2μs。
指令周期: 它是指CPU完成一条操作所需的全部时间。
每条指令执行时间都是有一个或几个机器周期组成。
MCS - 51 系统中, 有单周期指令、双周期指令和四周期指令。
8、单片机的控制口线包括片外取指信号(片外程序存储器读)输出端,低电平有效。
通过P0口读回指令或常数。
控制的是片外程序存储器。
在访问外部程序存储器时,该信号自动产生,每个机器周期输出2个脉冲。
访问片外数据存储器时,不会有脉冲输出。
地址锁存信号。
ALE低电平时,P0口出现数据信息;ALE高电平时,P0口出现地址信息。
用下降沿锁存P0口的低8位地址到外部锁存器程序存储器选择信号。
=0时,选外部ROM,=1时,地址小于4k时,选内部ROM;地址大于4k时,选外部ROM。
RESET 复位信号:高电平复位CPU,低电平CPU工作复位后,各个寄存器的状态如图所示。
9、数据存储器的容量小,仅256B。
程序存储器容量大,为64KB。
10、8051 / 8751内部有4KB 的ROM / EPROM,地址:0000H ~ 0FFFH。
52 子系列内部有8KB 的ROM / EPROM,地址:0000H ~ 1FFFH。
11、内部数据存储器RAM ,地址:00H ~ FFH,在共256个字节的片内RAM中,00H~1FH单元是通用寄存器区,20H~2FH单元是位寻址区,30H~0FFH单元是供用户使用的一般RAM区。
通用寄存器区(00H~1FH):包括R0~R7位寻址区(20H~2FH):可以直接或者间接寻址。
对于51系列,数据存储器只有00H~7FH的片内RAM和SFR结构,SFR结构从80H~FFH,而52系列,80H~FFH既包括片内RAM,又包括SFR。
因此,51系列片内RAM共128B,52系列片内RAM共256B。
52系列的片内RAM只能通过间接寻址方式进行访问,SFR只能通过直接寻址方式访问。
12、8051单片机复位时,堆栈指针SP指向07H 单元。
51的栈区不是固定的,为避开工作寄存器区、位寻址区,用户堆栈一般设置在30H ~ 7FH 之间。
13、堆栈指针SP字长为8位,它的设立是为了中断操作和子程序的调用而用于保存返回地址的,也就是常说的断点保护和现场保护。
该指针在SFR中。
数据压入堆栈时,SP自动加1;数据弹出堆栈时,SP自动减1。
14、数据指针DPTR是16位,可按DPH和DPL两个8位寄存器来使用。
15、程序计数器PC是16位专用寄存器,寻址范围64KB。
通电时自动复位,运行时可手动复位,复位后,PC的内容自动清零。
PC用来存放下一条指令地址。
CPU取指令时,将PC内容经地址总线送到程序存储器,从该地址单元取回指令,译码并执行;同时,PC自动加1。
16、MOVX A,@DPTR;将外部RAM中地址为@DPTR的单元内容读到A中。
17、MOVX @DPTR,A;将A中的内容写到外部RAM中地址为@DPTR的单元。
18、MOVC A,A+ @DPTR;采用基址+变址的方法读程序存储器内的表格常数。
19、对外部RAM产生读写操作:MOVX A,@Ri;MOVX A,@DPTRi(读操作);MOVX @Ri,A;MOVX @DPTRi ,A(写操作)20、直接寻址:直接使用数所在单元的地址找到了操作数,所以称这种方法为直接寻址。
22、直接寻址:MOV 20H,A。
把源操作数指定的内容送入由直接地址指出的片内存储单元。
23、间接寻址:MOV @R0,A。
把源操作数指定的内容送入以R0或R1为地址指针的片内存储单元中。
24、累加器A与片外RAM之间的数据传递类指令(4条):MOVX A,@Ri;MOVX @Ri,AMOVX A,@DPTRMOVX @DPTR,A25、在51中,与外部存储器RAM打交道的只可以是A累加器。
所有需要送入外部RAM的数据必需要通过A送去,而所有要读入的外部RAM中的数据也必需通过A读入。
可以看出内部RAM间可以直接进行数据的传递,而外部则不行。
比如,要将外部RAM中某一单元(设为0100H单元的数据)送入另一个单元(设为0200H单元),也必须先将0100H单元中的内容读入A,然后再送到0200H单元中去。
例:将外部RAM中100H单元中的内容送入外部RAM中200H单元中。
MOV DPTR,#0100HMOVX A,@DPTRMOV DPTR,#0200HMOVX @DPTR,A26、读程序存储器指令(2条):MOVC A,@A+DPTRMOVC A,@A+PC将ROM中的数送入A中,本组指令也被称为查表指令。
27、交换指令(5条):MOV R6,#29H ;R6=29H,A原来是34HXCH A,R6 ;A=29H,R6=34HSWAP A ;A=92HXCH A,R6 ;A=34H,R6=92HXCHD A,@R0 ;A=36H,(R0)=54H (设原来R0指向的单元的内容为56H)28、RL相当于乘以2;RR相当于除以229、无条件转移类指令(4条)短转移类指令:AJMP addr11长转移类指令:LJMP addr16相对转移指令:SJMP rel间接转移指令:JMP @A+DPTR转移范围:AJMP:2KB;LJMP:64KB;SJMP:-128~+127。
原则上,所有用SJMP或AJMP的地方都可以用LJMP来替代。
30、JZ rel ;如果A=0,则转移,否则顺序执行。
转移到相对于当前PC值的8位移量的地址去。
即:新的PC值=当前PC+偏移量rel31、空操作指令(1条):NOP空操作,停一个周期,一般用作短时间的延时。
32、51单片机有32根输入输出线,组成4个8位并行输入输出接口,分别为P0、P1、P2、P3口。
每个接口都由锁存器、输出驱动器和输入缓冲器组成。
作为普通接口时,P0口无上拉电阻。
作为输入时,要先置1,输出1时,本质上是开关,输出0时,开关闭合。
33、在具有片外扩展存储器的系统中,P2口作为高8位地址线,P0口作为地址线和双向数据总线的低8位。
P3口的第二功能是中断定时通信扩展。
34、TCON的中断标志位,可位寻址。
IT0(TCON.0),外部中断0触发方式控制位。
当IT0=0时,为电平触发方式(低电平)。
当IT0=1时,为边沿触发方式(下降沿有效)。
IE0(TCON.1),外部中断0中断请求标志位。
当INT0出现中断请求信号(低电平或脉冲下降沿),硬件自动将IE0置1,产生中断请求。
IT1(TCON.2),外部中断1触发方式控制位。
功能与IT0相同。
IE1(TCON.3),外部中断1中断请求标志位。
功能与IE0相同。
TF0(TCON.5),定时/计数器T0溢出中断请求标志位。
TF1(TCON.7),定时/计数器T1溢出中断请求标志位。
TR0定时器/计数器T0的启动位。
TR1定时计数器T1的启动位。
35、SCON(98H)的中断标志RI(SCON.0),串行口接收中断标志位。
当允许串行口接收数据时,每接收完一个串行帧,由硬件置位RI。
CPU响应中断时,不能自动清除RI,RI必须由软件清除。
TI(SCON.1),串行口发送中断标志位。
当CPU将一个发送数据写入串行口发送缓冲器时,就启动了发送过程。
每发送完一个串行帧,由硬件置位TI。
TI必须由软件清除。
36、中断允许控制IEEX0(IE.0),外部中断0允许位;EX0=1,允许外部中断0。
ET0(IE.1),定时/计数器T0中断允许位;ET0=1,允许T0中断。
EX1(IE.2),外部中断1允许位;EX1=1,允许外部中断1。
ET1(IE.3),定时/计数器T1中断允许位;ET1=1,允许T1中断。
ES(IE.4),串行口中断允许位;ES=1,允许串行接口中断。
EA (IE.7),CPU中断允许(总允许)位。
EA=1,CPU开放中断。
37、中断优先级控制IPPX0(IP.0),外部中断0优先级设定位;PT0(IP.1),定时/计数器T0优先级设定位;PX1(IP.2),外部中断1优先级设定位;PT1(IP.3),定时/计数器T1优先级设定位;PS (IP.4),串行口优先级设定位;PT2 (IP.5) ,定时/计数器T2优先级设定位。
置1和置0可以设定方式。
例:设置52单片机的4个中断源,使其处理的优先顺序为T1,INT1,INT0,T0。
IPH = 08H;0000 1000;PT1IP = 04H;0000 0100;PX1INT0的自然优先级高于T0。
自然优先级顺序(高到低):外部中断0、定时器0、外部中断1、定时器1、串行接口中断、定时器2。
38、39、中断请求标志位的清除方式:定时器/计数器T0和定时器/计数器T1的溢出中断标志由TF0和TF1产生。
当产生定时器中断时,进入中断服务程序之后由片内硬件清除标志位。
如果用查询方式编写定时或计数溢出后的处理程序,必须用软件对TF0或TF1清零。
外部中断0和外部中断1在选择为边沿触发方式时,进入中断服务程序后由片内硬件清零,当触发方式为电平触发时,需用户软件清除中断标志。
40、定时/计数器的实质是加1计数器(16位),由高8位和低8位两个寄存器组成。
TMOD是定时/计数器的工作方式寄存器,确定工作方式和功能;TCON是控制寄存器,控制T0、T1的启动和停止及设置溢出标志。
下面是TMOD,TCON已在上面介绍。
41、工作方式寄存器TMOD(89H,不支持位寻址)工作方式寄存器TMOD用于设置定时/计数器的工作方式,低四位用于T0,高四位用于T1。