微机原理压力测控系统课程设计_1

更新时间:2024-05-27 05:00:01 阅读量: 综合文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

《微型计算机原理与接口技术》

课 程 设 计

压力测控系统设计

系(部)院:物理与电子科学学院

班级:电信11102班

姓名(学号):唐霁虹 (201111020204)

设计的主要内容

一.设计内容:1. 利用压力传感器和ADC0809采用中断方式设计一个压力测试系统,

并将测试结果(十进制)在LED上显示出来,LED的显示内容为XXX,X为测试值.

- 0 -

2.当压力低于30Kpa,黄灯亮,当压力高于150Kpa时,红灯亮。

二.设计报告要求

1,选用8086 CPU和适当的存储器芯片,接口芯片完成相应的功能。 2,设置键盘和LED完成输入和显示功能。 3,画出详细的硬件连接图。

4给出程序设计思路,画出各程序流程图。 5.给出RAM地址分配表。

6.给出所有程序清单并加上必要注释。 7.完成设计说明书,(包括封面,目录,设计任务书,硬件设计思路,硬件原理图,软件设计思路,程序流程图,程序清单,所有器件型号,总结体会,参考文献)

摘 要

压力测控系统是工业生产过程自动化中的重要测量设备,可以用来测量压力、液位

- 1 -

等工程参数。本文介绍了一种基于8086微处理器的压力测控系统,系统操作简便、自动化程度高、扩展方便且具有良好的人机交互能力。该系统通过实验,取得了较为满意的控制效果。可应用在一些精度要求不太高的系统中。为了降低成本,在满足性能的要求下,选择低成本器件,简化系统设计。

关键字:8086处理器 8255接口 A/D转换器 压力传感器 LED

目 录

一 设计主要工作思路 ......................................................................................................... - 3 - 二 压力测控系统的总体概况 ............................................................................................. - 4 -

2.1压力测控系统的总体结构 ...................................................................................... - 4 -

- 2 -

2.2系统硬件选择和设计 .............................................................................................. - 4 -

2.2.1系统扩展口的选择 ........................................................................................ - 4 - 2.2.2压力传感器与A/D转换器的选择 ................................................................ - 4 -

三 系统主要原件功能与原理介绍 ................................................................................... - 5 -

3-1 8086微处理器及其体系结构 .............................................................................. - 5 -

3.1.1 8086微处理器的一般性能特点 ................................................................... - 5 - 3.1.2 8086CPU的变成结构 ................................................................................. - 5 - 3.2 8255并行I/O接口 ............................................................................................... - 6 -

3.2.1 并行接口芯片8255A(见图3-3) ................................................................... - 6 - 3.2.2芯片8255 A在本设计中的功能作用 ........................................................... - 7 - 3.2.3芯片8255的功能分析 .................................................................................. - 7 - 3.3 ADC0809概述 ......................................................................................................... - 9 -

3.3.1 ADC0809的主要特性 ................................................................................... - 9 - 3.3.2 内部结构 ....................................................................................................... - 9 - 3.3.3外部特性(引脚功能) .............................................................................. - 10 - 3.4 LED显示器工作原理 ............................................................................................ - 11 - 四 系统各部分功能模块介绍 ......................................................................................... - 12 -

4 .1压力测量和控制部分 ........................................................................................... - 12 - 4.2 ADC0809与8255的连接 .................................................................................. - 12 - 4.3 8086的可编程外设接口电路 .......................................................................... - 12 - 五 系统软件设计及系统程序 ........................................................................................... - 12 -

5.1系统软件设计 ........................................................................................................ - 12 - 5.2系统流程图 ............................................................................................................ - 14 - 5.3系统程序 ................................................................................................................ - 15 -

一 设计主要工作思路

1.1. 利用压力传感器和ADC0809采用中断方式设计一个压力测试系统,并将测试结果(十进制)在LED上显示出来,LED的显示内容为XXX,X为测试值. 1.2.当压力低于30Kpa,黄灯亮,当压力高于150Kpa时,红灯亮。

- 3 -

二 压力测控系统的总体概况

2.1压力测控系统的总体结构

8086微处理器8255 接口A/D转换器压力传感器报警灯译码LED显示

2.2系统硬件选择和设计 2.2.1系统扩展口的选择

本次设计采用的是8086微处理器,选择8255A可编程并行接口作为系统的扩展接口,8255A的通用性强,适应灵活,通过它CPU可直接与外设相连接。

2.2.2压力传感器与A/D转换器的选择

为使设计工作简单可靠,我们采用了MPX4080D型号压力传感器构成压力测控系统。另外,为满足系统输入模拟量进行处理的功能,对其在扩展一片ADC0808,以进行模拟——数字量转换。

- 4 -

三 系统主要原件功能与原理介绍

3-1 8086微处理器及其体系结构 3.1.1 8086微处理器的一般性能特点

8086是Intel系列的16位微处理器,它采用HMOS工艺技术制造,芯片采用40系列线封装,单一的+5V电源,时钟频率为5~10MHz。

8086有16根数据线和20根地址线,可以处理8位和16位数据,寻址1MB的储存单元和64KB的I/O端口。(见图3-1)

3.1.2 8086CPU的变成结构

编程结构:是指从程序员和使用者的角度看到的结构,亦可称为功能结构。从功能上来看,8086CPU可分为两部分,即总线接口部件BIU(Bus Interface Unit)和执行部件EU(Execution Unit)。8086CPU的内部功能结构如图3-2所示:

- 5 -

图3-2 8086/8088内部功能结构图

3.2 8255并行I/O接口

3.2.1 并行接口芯片8255A(见图3-3)

8255A是Intel系列的并行接口芯片,常作为微机系统与外部设备接口。由于它是可编程的,可以通过软件来设置芯片的工作方式,因此,用它连接外部设备时,一般不需要在附加外部电路,给使用带来很大方便。如图下图3-3所示

- 6 -

图3-3

3.2.2芯片8255 A在本设计中的功能作用

8255是并行的I/0接口芯片,内部有三个相互独立的8位数据端口。8255实现了外设与8086之间的数据传输。8255的B口工作于方式0,作为输出口,其PB0~PB7分别与LED数码管显示器的显示器的八段a,b,c,d,e,f,g,dp相连,C口作为输出口,其PC7~PC0与LED数码管显示器的LED0~LED7相连,作为位选。

3.2.3芯片8255的功能分析

1、8255A是可编程并行接口,内部有3个相互独立的8位数据端口,即A口、B口和C口。三个端口都可以作为输入端口或输出端口。A口有三种工作方式:方式0、方式1和方式2;B口可以工作在方式0或方式1下;C口通常作为联络信号使用。8255的工作只有当片选CS有效时才能进行工作,而控制逻辑端口实现对其他端口的控制。当8255工作在方式0时,即基本输入输出方式时,可将三个数据端口划分为四个独立

- 7 -

的部分:A口和B口作为两个8位端口,C口的高4位和低4位可以用作两个4位的输入输出口,各个端口都可独立地用作输入或输出。

2、数据总线缓冲器是一个8位双向三态缓冲器,三态是由读/写控制逻辑控制的,它可与系统的DB直接相连,实现CPU和8255A之间的信息传送;读写控制器用于管理数据、控制字或状态字的传送,接收来自CPU的地址信息及一些控制信号,然后向A组、B组控制电路发送命令,控制端口数据的传送方向。

3、8255引脚:RESET:复位输入线,当该输入端处于高电平时,所有内部寄存器(包括控制寄存器)均被清除,所有I/O口均被置成输入方式。

CS:芯片选择信号线,当这个输入引脚为低电平时,即/CS=0时,表示芯片被选中,允许8255与CPU进行通讯;/CS=1时,8255无法与CPU做数据传输.

RD:读信号线,当这个输入引脚为低电平时,即/RD=0且/CS=0时,允许8255通过数据总线向CPU发送数据或状态信息,即CPU从8255读取信息或数据。 WR:写入信号,当这个输入引脚为低电平时,即/WR=0且/CS=0时,允许CPU将数据或控制字写入8255。

D0~D7:三态双向数据总线,8255与CPU数据传送的通道,当CPU 执行输入输出指令时,通过它实现8位数据的读/写操作,控制字和状态信息也通过数据总线传送。

PA0~PA7:端口A输入输出线,一个8位的数据输出锁存器/缓冲器, 一个8位的数据输入锁存器。

PB0~PB7:端口B输入输出线,一个8位的I/O锁存器, 一个8位的输入输出缓冲器。 PC0~PC7:端口C输入输出线,一个8位的数据输出锁存器/缓冲器, 一个8位的数据输入缓冲器。端口C可以通过工作方式设定而分成2个4位的端口, 每个4位的端口包含一个4位的锁存器,分别与端口A和端口B配合使用,可作为控制信号输出或状态信号输入端口。'

A0,A1:地址选择线,用来选择8255的PA口,PB口,PC口和控制寄存器. 当A0=0,A1=0时,PA口被选择; 当A0=0,A1=1时,PB口被选择; 当A0=1,A1=0时,PC口被选择; 当A0=1.A1=1时,控制寄存器被选择.

- 8 -

3.3 ADC0809概述

ADC0809是采用分辨率为8位的、以逐次逼近原理进行模——数转换的器件。其内部有一个8通道多路开关,它可以根据地址码锁存译码后的信号,只选通8路模拟输入信号中的一个进行A/D转换。

3.3.1 ADC0809的主要特性

1)8路输入通道,8位A/D转换器,即分辨率为8位。 2)具有转换起停控制端。 3)转换时间为100μs 4)单个+5V电源供电。 5)模拟输入电压范围0~+5V

,不需要零点和满刻度校准。

6)工作温度范围为-40~+85摄氏度。 7)低功耗,约15mW.

3.3.2 内部结构

(1)ADC0809的内部逻辑结构

由下图可知,ADC0809由一个8路模拟开关、一个地址锁存与译码器、一个A/D转换器和一个三台输出锁存器组成。多路开关可选通8个模拟通道,允许8路模拟量分时输入,共用A/D转换器进行转换。三台输出锁存器取走转换完的数据。

- 9 -

图3-4 ADC0809的内部逻辑结构

3.3.3外部特性(引脚功能)

VCCIN3IN4IN5IN6IN7D0D1D2D4D5D6D7D8IN2IN1IN0ADD1ADD2ADD3ADCREF(-)0809EOCOEVCCCLKSTARTALEGND

图3-5 ADC0809引脚图

ADC0809芯片有28条引脚,采用双列直插式封装,如图所示。下面说明各引脚功能。IN0~IN7:8路模拟量输入端。2-1~2-8:8位数字量输出端。ADDA、ADDB、ADDC:3位地址输入线,用于选通8路模拟输入中的一路。ALE:地址锁存允许信号,输入,高电平有效。START: A/D转换启动脉冲输入端,输入一个正脉冲(至少100ns宽)使其

- 10 -

启动(脉冲上升沿使0809复位,下降沿启动A/D转换)。EOC: A/D转换结束信号,输出,当A/D转换结束时,此端输出一个高电平(转换期间一直为低电平)。OE:数据输出允许信号,输入,高电平有效。当A/D转换结束时,此端输入一个高电平,才能打开输出三态门,输出数字量。CLK:时钟脉冲输入端。要求时钟频率不高于640KHZ。REF(+)、REF(-):基准电压。Vcc:电源,单一+5V。 GND:地。

3.4 LED显示器工作原理

它由若干个发光二极管按一定的规律排列而成。当某一个发光二极管导通时,相应的一个点或一个笔画被点亮,控制不同组合的二极管导通,就能显示出多种字符。常见的LED数码管的外形内部结构如图1所示,图2属于共阳极结构,图3属于共阴极结构。通过控制管脚a、b、c、d、e、f、g、dp的电平即可获得所需的符号显示。显示器的工作方式有两种,一种是静态显示:当显示器显示某一个字符时,相应的发光二极管恒定的导通或截止。另一种是动态显示方式:所谓的动态显示即一位一位轮流的点亮各显示器,对于每一位显示器来说,每隔一段时间点亮一次。但由于时间间隔很小,我们就可以看到完整的显示了。

- 11 -

图3-5LED显示器工作原理

四 系统各部分功能模块介绍

4 .1压力测量和控制部分

我们采用了MPX4080D型号压力传感器构成压力测控系统。另外,为满足系统输入模拟量进行处理的功能,对其在扩展一片ADC0808,以进行模拟——数字量转换。

4.2 ADC0809与8255的连接

模拟输入通道地址A,B,C直接接地,因此ADC0809只对通道的电压进行模数转换。

为了减少输入噪声其他通道直接接地。ADC0809的数据线DO-D7与8255的PB0-PB7相连接。其片选CS与8086的地址/数据总线AD14相连接。

4.3 8086的可编程外设接口电路

8255的数据口D0-D7与CPU的6根控制线相连接,控制8255A内部的各种操作。控制线RESET用来试8255A复位。CS和地址线A1及A0用于芯片选择和通道寻址。分别于8086的高位地址线A19,A1,A0相连接。

五 系统软件设计及系统程序

5.1系统软件设计

本设计的目的是以8086微处理器为控制器,将压力传感器输出的小信号经过放大器后,送至A/D转换器;微控制器实时采集、显示压力值,

压力测控系统原理图:

- 12 -

21RESETORU8U7OR8086IO/MWRDT/RAD0~15AD 10AD 15AD7AD0AD3AD4AD5AD6AD8AD9AD 2AD 7U4LOWIORAD1 8AD0 9ANDU54078≥1I2I174LS00U63656CSA1A0RD8255AD6D0L1PC7PC6PC5PC4PC3PC2PC1PC0PB7PB6PB5PB4PB3PB2PB2PA1PB0PA7PA0黄1317161514红0BP1BPA132BPB222324253BPC4BPD5BPEGND6BPF2-8LSB2-1MSBALEADD CADD BADD AU3G7BPDPADC0809VREF(-)VREF(+)VCCCLOCKOEEOCSTARTIN00CP161211109761281CP2CP234080D MPX +5V - 13 -

开始初始化采集A/D值用BCD码转化程序转化成十进制LED显示压力值延时实际压力低于30 NPC4口=1YY黄灯亮实际压力高于150 NPC5口=1Y红灯亮PC5=0返回结束- 14 -

5.2系统流程图

5.3系统程序

DATA SEGMENT

data1:db 0c0h,0f9h,0a4h,0b0h,99h,92h,82h,0f8h,80h,90h,88h,83h,0c6h,0ah db 86h,8eh

ADPORT EQU 0FFF0H IOCONPT EQU 372BH IOAPT EQU 372AH IOBPT EQU 3729H IOCPT EQU 3728H DATA ENDS CODE SEGMENT

ASSUME CS:CODE,DS:DATA START:MOV AX,DATA MOV DS,AX disp0: mov cx,00ffh

mov bx,077FH

mov bl,ds:[bx]

mov bh,0h

push dx

mov dx,0ff22h

mov al,cs:[bx+OFFSET DATA1]

OUT DX,AL

mov dx,0ff21h

mov al,ah

OUT DX,AL disp1: pop dx

dec dx

shr ah,01h

jnz disp0

- 15 -

mov dx,0ff22h

mov al,0ffh

OUT DX,AL

ADCON1:MOV AX,00H MOV AX, 0FFF0H MOV DX,AX

OUT DX, AL

MOV CX,0500H

DELAY1:

MOV AX,0 MOV DX,AX

IN AL,DX

PUSH AX ret IO:

MOV DX,372BH

MOV AL,10010010B

OUT DX,AL

MOV DX,3729H

IN AL,DX

LESS:POP AX

MOV DX,3728H CMP AX,30

JB YLL1 MOV AL,10H

OUT DX,AL

CALL YLL1

- 16 -

GREATER:POP AX

MOV DX,IOCPT CMP AX,150

JA RLL1 MOV AL,08H OUT DX,AL CALL RLL1 YLL1:

CALL CONVERS

JMP ADCON1

TEST AL,10H

JNZ YLL1

RLL1:CALL CONVERS

JMP ADCON1 TEST AL,08H

JNZ RLL1

CONVERS: MOV BL,AL

MOV BX,077DH

mov DS:[BX],al

mov al,ah INC bx

mov DS:[Bx],al INC bx

mov DS:[Bx],ah RET

FOREVER: MOV BX,0

- 17 -

MOV WORD PTR DS:[BX+077AH],0000H

ADD BX,2

MOV WORD PTR DS:[BX+077AH],0009H

ADD BX,2

MOV WORD PTR DS:[BX+077AH],0008H CODE ENDS END START

- 18 -

课程设计心得体会

通过此次课程设计,使我更加扎实的掌握了有关微原电子线路方面的知识,在设计过程中虽然遇到了一些问题,但经过一次又一次的思考,一遍又一遍的检查终于找出了原因所在,也暴露出了前期我在这方面的知识欠缺和经验不足。实践出真知,通过亲自动手制作,使我们掌握的知识得到应用。

在近两周的课程设计过程中,我们不断发现错误,不断改正,不断领悟,不断获取。最终的检测调试环节,以保程序的正确。这次课程设计终于顺利完成了,在设计中遇到了很多问题,经过我们认真的反复修改,才得到正确的程序。

我认为,在这学期的实验中,不仅培养了独立思考、动手操作的能力,在各种其它能力上也都有了提高。更重要的是,在实验课上,我们学会了很多学习的方法。而这是日后最实用的,真的是受益匪浅。要面对社会的挑战,只有不断的学习、实践,再学习、再实践。

回顾起此课程设计,至今我仍感慨颇多,从理论到实践,在这段日子里,可以说得是苦多于甜,但是可以学到很多很多的东西,同时不仅可以巩固了以前所学过的知识,而且学到了很多在书本上所没有学到过的知识。通过这次课程设计使我懂得了理论与实际相结合是很重要的,只有理论知识是远远不够的,只有把所学的理论知识与实践相结合起来,从理论中得出结论,才能真正为社会服务,从而提高自己的实际动手能力和独立思考的能力。在设计的过程中遇到问题,可以说得是困难重重,但可喜的是最终都得到了解决。

实验过程中,也对团队精神的进行了考察,让我们在合作起来更加默契,在成功后一起体会喜悦的心情。果然是团结就是力量,只有互相之间默契融洽的配合才能换来最终完美的结果。

最后感谢老师在此次设计中给予我们的精心指导。

- 19 -

参考文献

【1】冯博琴 《微机原理与接口技术》 2007 清华大学出版社 【2】何克忠 《计算机控制系统》 2002 清华大学出版社

【3】戴梅萼 《微型计算机技术及应用》 2007 清华大学出版社

【4】沈美明 温冬婵 《IBM-PC汇编语言程序设计》 2001 清华大学出版社 【5】何小海 严华 《微机原理与接口技术》 2006 科学出版社 【6】楼顺天 周佳社《微机原理与接口技术》 2006 科学出版社 【7】严永军【8】朱善君 prote 199 电路设计与应用》 2001 国防工业出版社 1988 清华大学出版社

- 20 -

《 《汇编语言程序设计》

参考文献

【1】冯博琴 《微机原理与接口技术》 2007 清华大学出版社 【2】何克忠 《计算机控制系统》 2002 清华大学出版社

【3】戴梅萼 《微型计算机技术及应用》 2007 清华大学出版社

【4】沈美明 温冬婵 《IBM-PC汇编语言程序设计》 2001 清华大学出版社 【5】何小海 严华 《微机原理与接口技术》 2006 科学出版社 【6】楼顺天 周佳社《微机原理与接口技术》 2006 科学出版社 【7】严永军【8】朱善君 prote 199 电路设计与应用》 2001 国防工业出版社 1988 清华大学出版社

- 20 -

《 《汇编语言程序设计》

本文来源:https://www.bwwdw.com/article/wcg7.html

Top