基于51单片机的三层电梯系统设计 - 图文 下载本文

基于单片机的三层电梯系统设计

见表2.3

表2.3 可位寻址的专用寄存器位地址

①程序状态字PSW

程序状态字包含了程序的状态信息,是一个8位的寄存器。其各位含义如表2.4。

表2.4 程序状态字

PSW位地址 含义 D7H CY D6H AC D5H FO D4H RS1 D3H RS0 D2H OV D1H --- D0H P

CY是进位标志位,在执行某些指令时,可以被硬件或者软件清零或置位。 AC是辅助进位标志,当执行某些操作时,低四位向高四位有进位或借位时,AC将被置位,否则清零。

FO标志,用户定义的一个状态标记。

RS1,RS0是寄存器区选择控制位。用来选择工作寄存器区。RS1,RS0与工作寄存器区对应关系见表2.5。

8

基于单片机的三层电梯系统设计

表2.5 RS1,RS0与工作寄存器区对应关系 RS1 0 0 1 1 RS0 0 1 0 1 区域 区域0(00H~07H) 区域1(08H~0FH) 区域2(10H~17H) 区域3(18H~2FH) OV溢出标志位,当进行算数运算时,由硬件置位或者清零,以表示是否溢出。若用C’6表示D6位向D7位有进位或借位,用C’7表示D7向CY有进位后者借位,那么有:

OV=C’6?C’7

P为奇偶校验位。每个机器周期都由硬件来置位或者清零,用来表示累加器ACC中1的个数。

②累加器ACC

累加器ACC是一个最常用的8位专用功能寄存器。单片机执行指令时大部分操作都与累加器ACC有关。指令系统中,常常用A作为累加器ACC的助记符。

③B寄存器

B寄存器常常用在乘法指令或者除法指令当中。在乘法指令中,两个乘数分别来自A和B,结果存放在AB寄存器当中。在除法指令中,被除数取自A,除数取自B,商存在A中,余数存在B中。

④堆栈指针SP

堆栈指针SP表示堆栈顶部在内部RAM中的位置。是一个8位寄存器。单片机复位后,SP初始化为07H。

⑤数据指针DPTR

DPTR是一个16位的专用功能寄存器。用DPH表示高8位,DPL表示低8位。因而它既可以作为一个16位寄存器使用,也可作为两个8位寄存器使用。DPTR主要用来存放16位的地址数据,常用来访问外部存储器。

⑥串行数据缓冲器

串行数据缓冲器SBUF用来存放接受和发送的数据。每个单片机有两个独立的SUBF,一个为接收缓冲器,另外一个为发送缓冲器。

其他专用功能寄存器在中断系统中介绍[3]。 (5)单片机引脚功能

单片机共有40个引脚。其中I/O接口占32个,其余的为控制引脚和电源

9

基于单片机的三层电梯系统设计

引脚。单片机引脚示意如图2.2。

图2.2 单片机引脚示意图

①电源引脚Vss和Vcc

Vss与地相接;Vcc与工作电压+5V相接。 ②时钟电路引脚XTAL1和XTAL2

XTAL1为片内振荡电路输入端。XTAL2为片内振荡电路的输出端。单片机时钟电路可分为内部时钟和外部时钟。对应电路如图2.3。

③RST/VPD引脚

复位控制输入端或者当单片机断电时,备用电源由此输入。

XTAL1 XTAL2 外部时钟 内部时钟

图2.3 外部时钟和内部时钟电路

④ALE/!PROG引脚

ALE地址锁存允许端;PROG编程脉冲输入端。当P0口作为地址/数据复用口时,输出地址信号的同时,ALE引脚输出锁存信号。将低8位地址暂时锁存。对于可编程单片机,在对内部程序存储器编程期间,由PROG输入编程脉冲。

10

基于单片机的三层电梯系统设计

⑤!PSEN引脚

片外程序存储器读选通接口。当访问外部程序存储器时,此引脚输出有效电平。

⑥!EA/Vpp引脚

片外程序存储器选通端/编程电压输入端。当访问内部程序存储器时,~EA为高电平,当访问外部程序存储器时,~EA为低电平。当对内部程序存储器编程时,此引脚需连接+21V的编程电压[3]。 2.1.2 AT89C51单片机中断系统

中断系统是单片机中非常重要的组成部分,它是为了使单片机能够对外部或内部随机发生的事件实时处理而设置的。中断功能的存在,在很大程度上提高了单片机实时处理能力,它也是单片机最重要的功能之一。当CPU正在执行某些操作时,如果外界或内部发生了某些事件,需要CPU暂时停止当前的操作,而去执行这个紧急事件,待处理完紧急事件又返回原来被暂时停止操作的地方继续运行原来的操作,这样的过程成为中断。向CPU申请中断的事件,称为中断源。往往微型计算机存在多个中断源,而当多个中断源同时向CPU申请中断时,CPU便不知道应该响应那个中断源。为此,人们规定的各种中断的优先级。当多个中断源同时向CPU发出中断请求时,CPU按照一定的顺序做出中断响应。当同时出现多个申请中断时,CPU将首先处理优先级别较高的中断请求,然后再处理优先级别较低的中断请求[8]。图2.4为AT89C51单片机的中断系统。

图2.4 单片机中断系统

11