水箱自动控制系统设计 下载本文

西南交通大学本科毕业设计(论文) 第9页

第三章 系统主要硬件配置

3.1 控制系统主要硬件介绍

由系统总体设计可知,控制系统主要用到的硬件模块有:单片机控制模块,ADC0809模块,8155 I/O扩展模块,DS12887时钟模块,LCM12232A液晶模块。 本节将简要的介绍一下这些模块的功能特性。

3.1.1单片机控制模块

单片机控制模块采用MCS-51单片机,芯片为8031,其引脚如图3-1所示。

图3-1 MCS-51引脚图

8031是MCS-51系列单片机的产品,产品型号的不同主要是内部程序存储器的差别,其内部结构相同。MCS-51系列的内部结构分以下几个部分: 1. 中央处理器

中央处理器(CPU)是整个单片机的核心部件,主要由运算器和控制器组成 运算器由8位算术逻辑运算单元ALU(Arithmetic Logic Unit)、8位累加器ACC(Accumulator)、8位寄存器B、程序状态字寄存器PSW(Program Status Word)、8位暂存寄存器TMP1和8位暂存寄存器TMP2等组成。

控制器主要由程序计数器PC、指令寄存器IR、指令译码器、堆栈指针SP、数据指针DPTR、时钟发生器及定时控制逻辑等组成。

CPU负责控制、指挥和调度整个单元系统协调的工作,完成运算和控制输入输出功能等操作。

西南交通大学本科毕业设计(论文) 第10页

2. 数据存储器(RAM)

随机存取存储器(Random Access Memory),简称RAM。它不但能够随时读取已存放在其各个存储单元中的数据,而且还能够随时写入新的信息。RAM是易失性存储器,关闭电源甚至暂时的电源掉电都会使所存的信息全部消失。8031内部256个字节被分为两个区域:00~7FH是真正的RAM区,可以读写各种数据,而80H~FFH是专门用作21个特殊功能寄存器(SFR)的区域。 3. 定时/计数器

MCS-51有两个16位的可编程定时/计数器,以实现定时或计数,当定时/计数器产生溢出时,可用中断方式控制程序转向。使用定时器来实现定时或延时控制,则CPU不必通过等待来实现延时,就可以提高CPU的效率。定时器具有以下特点:

1) 定时/计数器可以有多种定数方式,可以是计数方式也可以是定时方式等

等。

2) 计数器模值是可变的,当然计数的最大值是有一定限制的,这取决于计

数器的位数。计数的最大值也限定了计时的最大值。

3) 可以按照规定的定时或计数值,当定时的时间或者计数终止时,发出中

断申请,以实现规定的定时或计数控制。

4. 并行输入输出(1/0)口

MCS-51共有4个8位的并行1/0口(P0, P1, P2, P3),用于对外部数据的传输。 5. 全双工串行口SBUF

并行通信一次可以传送8位或者更多位的数据,传送的速度也快,但是需要的传输线的数目也多。在长距离通信时,传输线的成本急剧增加。这时就需要采用串行通信。8031内置一个全双工异步串行通信口,用于与其它设备间的串行数据传送,该串行口既可以用作异步通信收发器,也可以当同步移位器使用。 6. 中断系统

MCS-51具备较完善的中断功能,有五个中断源(两个外中断、两个定时/计数器中断和一个串行中断),可基本满足不同的控制要求,并具有2级的优先级别选择。 7. 时钟电路

MCS-51内置最高频率达12MHz的时钟电路,用于产生整个单片机运行的时序脉冲,但需外接晶体振荡器和振荡电容。

西南交通大学本科毕业设计(论文) 第11页

3.1.2 ADC0809模块

图3-2 ADC0809引脚图

ADC0809引脚如图3-2所示,它是CMOS工艺的比较型8位A/D转换器,目前在8位微机系统中广泛使用。它由8路模拟开关、地址锁存、译码器、8位A/D转换器以及三态输出锁存器构成。0809可以处理8路模拟输出信号。为了区分是对那一路输入信号进行A/D转换,有三个通道地址号ADDA,ADDB和ADDC来决定是那一路模拟信号被选中并送入A/D转换器去转换。输出为8位数字量DB7--DB0。主要控制信号还有:

START:启动信号。加上正脉冲之后,A/D转换才开始。

ALE:地址锁存信号。高电平有效时把三个通道地址信号送入地址锁存器,并经译码器得到地址输出,以选择相应的模拟输入通道。

EOC:转换结束信号,是芯片的输出信号。转换一开始,EOC信号变低,转换结束时EOC返回高电平。这个信号可以作为A/D转换器的状态信号来查询,也可以直接用作中断请求信号。

CLOCK时钟信号。最高允许值为640KHZ。和转换速率有关,时钟信号频率越高,转换速率越快,一般取500KHZ。

VREF(+)和VREF(-)都是A/D转换器的参考电压。

VCC电源电压。由于是CMOS芯片,允许的电压范围较宽,可以从+5~+15V。 8位模拟开关的地址输入和输入通道的关系见表3-1。模拟开关的作用和8选1的数据选择器的作用相似,但是输入和输出都不是数字量而是模拟量。当通道被选中时,模拟开关的输出应该和该通道的模拟输入尽量一致,以避免模拟失真。

西南交通大学本科毕业设计(论文) 第12页

表3-1 8位模拟开关和输入通道关系

ADDC 0 0 0 0 1 1 1 1 ADDB 0 0 1 1 0 0 1 1 ADDA 0 1 0 1 0 1 0 1 输入通道 IN0 IN1 IN2 IN3 IN4 IN5 IN6 IN7

ADC0809芯片的转换速率在最高时钟频率下为100μs左右,在目前的工艺水平下不算很高。正因为速度低,在和CPU接口时要求采用查询方式或者中断方式。

ADC0809在ALE=1期间,模拟开关的地址(ADDA,ADDB,ADDC)存入地址锁存器,在ALE=0时,地址锁存,输入启动信号START的上升沿复位ADC0809,它的下降沿启动A/D转换,EOC为输出的转换结束信号,正在转换时为0,转换结束时为1,OE是另一个输入控制信号,在转换开始结束后开始有效,用来打开输出三态门以便从0809输出这次转换的结果。

3.1.3 8155并行I/O口扩展模块

图3-3 8155引脚图