计算机控制系统课程设计
- 格式:doc
- 大小:610.50 KB
- 文档页数:17
1 题目背景与意义
1.1 背景
计算机控制系统是在自动控制技术和计算机技术发展的基础上产生的。若将自动控制系统中的控制器的功能用计算机来实现,就组成了典型的计算机控制系统。它用计算机参与控制并借助一些辅助部件与被控对象相联系,以获得一定控制目的而构成的系统。其中辅助部件主要指输入输出接口、检测装置和执行装置等。控制目的可以是使被控对象的状态或运动过程达到某种要求,也可以是某种最优化目标。
《计算机控制系统》是一门技术性、应用性很强的学科,实验课教环节是它的一个极为重要的环节。不论是硬件扩展、接口应用还是编程方法、程序调试,都离不开实验课教学。如果不在切实认真地抓好学生的实践技能的锻炼上下功夫,单凭课堂理论课学习,势必出现理论与实践脱节,学习与应用脱节的局面。
1.2 设计意义
《计算机控制系统》课程设计的目的就是让同学们在理论学习的基础上,通过完成一个涉及单片机A/D和D/A多种资源应用并具有综合功能的小系统目标板的设计与编程应用,使学生不但能够将课堂上学到的理论知识与实际应用结合起来,而且能够对电子电路、电子元器件、等方面的知识进一步加深认识,同时在系统设计、软件编程、相关仪器设备的使用技能等方面得到较全面的锻炼和提高。通过此设计,加深对单片机知识和计算机控制等知识的了解及应用,提高动手能力。
2 设计题目介绍
设计一个基于单片机的具有A/D和D/A功能的信号测控装置。要求该信号测控装置能够接入典型传感器、变送器信号,同时可输出标准电压/电流信号。并满足抗干扰、通用性、安全性、性价比等原则性要求。标准电压/电流信号此处定为:0~5V/0~20mA
- 1 - 3 系统总体框架
图1 系统总体框图
4 系统硬件设计
4.1单片机模块
单片机是一种集成电路芯片,是采用超大规模集成电路技术把具有数据处理能力的中央处理器CPU随机存储器RAM、只读存储器ROM、多种I/O口和中断系统、定时器/计时器等功能集成到一块硅片上构成的一个小而完善的微型计算机系统,在工业控制领域的广泛应用。
由于AT89C52在同系列单片机中具有更完善的功能和性能,所以本设计选用了AT89C52单片机。AT89C52为8 位通用微处理器,采用工业标准的C51内核,在内部功能及管脚排布上与通用的8xc52 相同,其主要用于会聚调整时的功能控制。
4.1.1 AT89C52引脚功能说明
主要管脚有:XTAL1(19 脚)和XTAL2(18 脚)为振荡器输入输出端口,外接12MHz 晶振。RST(9 脚)为复位输入端口,外接电阻电容组成的复位电路。P0~P3 为可编程通用I/O 脚,其功能用途由软件定义,在本设计中,P0 端口(32~39 脚)被定义为N1 功能控制端口,分别与N1的相应功能管脚相连接, - 2 - 13 脚定义为IR输入端,10 脚和11脚定义为I2C总线控制端口,分别连接N1的SDAS(18脚)和SCLS(19脚)端口,12 脚、27 脚及28 脚定义为握手信号功能端口,连接主板CPU 的相应功能端,用于当前制式的检测及会聚调整状态进入的控制功能。
AT89C52的管脚分布如下图所示:
图2 AT89C52引脚图
各引脚详细功能叙述如下:
(1)P0 口:是一组8 位漏极开路型双向I/O 口。 也即地址/数据总线复用口。作为输出口用时,每位能吸收电流的方式驱动8 个TTL逻辑门电路,对端口P0 写“1”时,可作为高阻抗输入端用。在访问外部数据存储器或程序存储器时,这组口线分时转换地址(低8 位)和数据总线复用,在访问期间激活内部上拉电阻。
(2)P1口:是一个带内部上拉电阻的8 位双向I/O 口。 P1 的输出缓冲级可驱动(吸收或输出电流)4 个TTL 逻辑门电路。对端口写“1”,通过内部的上拉电阻把端口拉到高电平,此时可作输入口。作输入口使用时,因为内部存在上拉电阻,某个引脚被外部信号拉低时会输出一个电流。与AT89C51 不同之处是, - 3 - P1.0 和P1.1 还可分别作为定时/计数器2 的外部计数输入(P1.0/T2)和输入(P1.1/T2EX)。
(3)P2 口:是一个带有内部上拉电阻的8 位双向I/O 口。P2 的输出缓冲级可驱动(吸收或输出电流)4 个TTL 逻辑门电路。对端口P2 写“1”,通过内部的上拉电阻把端口拉到高电平,此时可作输入口,作输入口使用时,因为内部存在上拉电阻,某个引脚被外部信号拉低时会输出一个电流。
(4)P3 口:是一组带有内部上拉电阻的8 位双向I/O 口。P3 口输出缓冲级可驱动(吸收或输出电流)4 个TTL 逻辑门电路。对P3 口写入“1”时,它们被内部上拉电阻拉高并可作为输入端口。此时,被外部拉低的P3 口将用上拉电阻输出电流(IIL)。
P3 口除了作为一般的I/O 口线外,更重要的用途是它的第二功能。如下表所示:
表1 P3口第二功能表
(5)RST: 复位输入。当振荡器工作时,RST引脚出现两个机器周期以上高电平将使单片机复位。
(6)ALE:当访问外部程序存储器或数据存储器时,ALE(地址锁存允许)输出
- 4 - 脉冲用于锁存地址的低8 位字节。一般情况下,ALE 仍以时钟振荡频率的1/6 输出固定的脉冲信号,因此它可对外输出时钟或用于定时目的。要注意的是:每当访问外部数据存储器时将跳过一个ALE 脉冲。
(7)PSEN:程序储存允许(PSEN)输出是外部程序存储器的读选通信号,当AT89C52 由外部程序存储器取指令(或数据)时,每个机器周期两次PSEN 有效,即输出两个脉冲。在此期间,当访问外部数据存储器,将跳过两次PSEN信号。
(8)EA/VPP:外部访问允许。欲使CPU 仅访问外部程序存储器(地址为0000H—FFFFH),EA 端必须保持低电平(接地)。
(9)XTAL1:振荡器反相放大器及内部时钟发生器的输入端,接外部时钟的一个引脚。
(10)XTAL2:振荡器反相放大器的输出端,接外部时钟的另一个引脚。
4.1.2 AT89C52功能特性
1、兼容MCS51指令系统
2、8kB可反复擦写(大于1000次)Flash ROM;
3、32个双向I/O口;
4、256x8bit内部RAM;
5、3个16位可编程定时/计数器中断;
6、时钟频率0-24MHz;
7、2个串行中断,可编程UART串行通道;
8、2个外部中断源,共8个中断源;
9、2个读写中断口线,3级加密位;
10、低功耗空闲和掉电模式,软件设置睡眠和唤醒功能;
11、有PDIP、PQFP、TQFP及PLCC等几种封装形式,以适应不同产品的需求。
4.2 A/D转换模块
由于变送器输出的是电压或电流的模拟信号,而单片机的输入要求为数字量信号,因此在这之间需要有一个转换器。A/D转换器就是这样的一个转换器,它能把模拟量转化为数字量。
- 5 - 4.2.1 A/D转换器的选用
A/D 转换器的作用是将输入的模拟电压数字化。A/D转换芯片很多,A/D转换芯片选择主要是根据系统的转换精度和转换速度两个技术参数确定的。基于抗干扰、通用性、安全性、性价比等原则性要求的综合考虑,选用芯片ADC0809。
4.2.2 ADC0809功能介绍
ADC0809 是美国国家半导体公司生产的一种8 位分辨率、双通道A/D转换芯片。它是逐次逼近模数转换器。由于它体积小,兼容性,性价比高而深受单片机爱好者及企业欢迎,其目前已经有很高的普及率。其内部有一个8通道多路开关,它可以根据地址码锁存译码后的信号,只选通8路模拟输入信号中的一个进行A/D转换。是目前国内应用最广泛的8位通用A/D芯片。
(1)内部结构
ADC0809是CMOS单片型逐次逼近式A/D转换器,内部结构如图所示,它由8路模拟开关、地址锁存与译码器、比较器、8位开关树型A/D转换器、逐次逼近寄存器、逻辑控制和定时电路组成。
图3 ADC0809内部结构图
- 6 - (2)引脚功能
ADC0809芯片有28条引脚,采用双列直插式封装,如下图所示。下面说明各引脚功能。
图4 ADC0809引脚图
IN0~IN7:8路模拟量输入端。
2-1~2-8:8位数字量输出端。
ADDA、ADDB、ADDC:3位地址输入线,用于选通8路模拟输入中的一路
ALE:地址锁存允许信号,输入,高电平有效。
START: A/D转换启动脉冲输入端,输入一个正脉冲(至少100ns宽)使其启动(脉冲上升沿使0809复位,下降沿启动A/D转换)。
EOC: A/D转换结束信号,输出,当A/D转换结束时,此端输出一个高电平(转换期间一直为低电平)。
OE:数据输出允许信号,输入,高电平有效。当A/D转换结束时,此端输入一个高电平,才能打开输出三态门,输出数字量。
CLK:时钟脉冲输入端。要求时钟频率不高于640KHZ。
REF(+)、REF(-):基准电压。
Vcc:电源,单一+5V。
GND:接地端。 - 7 - 4.2.3 ADC0809工作方式
ADC0809与AT89C52单片机接口电路如下图所示:
图4 ADC0809与AT89C52的接口电路
传感器的输出可以接到ADC0809的IN0~IN7,ADC0809的通道选择地址A,B,C由IN0~IN7模拟输入通道选择。因为单片机受引脚数的限制,P0口兼用数据线和低八位地址线,为了将它们分离出来,需要在单片机外部增加地址锁存器。所以在ADC00809和AT89C52之间连接了74LS373。
表2 ADC0809的通道选择表
首先指令选择ADC0809的一个模拟输入通道,当执行写入指令是,单片机的
WR信号有效,从而产生一个启动脉冲。信号给ADC0809的START引脚,开始对 - 8 - 选中通道转换。当转换结束后,ADC0809发出转换结束EOC(高电平)信号;当执行读出指令时,单片机发出读控制RD信号,通过逻辑电路控制OE端为高电平,把转换完毕的数字量读入到单片机中。
4.3 D/A转换模块
在单片机应用系统中,经过微处理器处理后的结果通常必须转换成实际的模拟量,这种将数字量转换成模拟量的过程就是D/A转换。
4.3.1 D/A转换器的选用
由于之前的A/D转换器选用的是8位的,因此D/A转换器也应选择8位的。DAC0832与微处理器完全兼容。这个DA芯片以其价格低廉、接口简单、转换控制容易等优点,在单片机应用系统中得到广泛的应用。所以该设计选用的转换器是DAC0832。
4.3.2 DAC0832功能介绍
美国半导体公司的DAC0832芯片是具有两个输入数据寄存器的8位DAC,它采用CMOS工艺制作,具有双缓冲器输入结构。它由8位输入锁存器、8位DAC寄存器、8位D/A转换电路及转换控制电路构成,可直接与主机相连接,将主机出来的数字量信号转换成模拟量后输出。
DAC0832引脚图如下图所示:
图5 DAC0832引脚图