压力测控系统(显示电压值)
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
南通大学电气工程学院微机原理课程设计
报告书
硬件课题压力测控系统(显示电压值)班级电082 学号 ********** 姓名张涛
指导教师
日期 2011-6-30
一、对压力传感器的信号进行检测
1.1 设计目的
1.巩固和加深课堂所学知识;
2.学习掌握一般的硬件的设计方法和查阅、运用资料的能力;
3.通过压力测控系统仿真系统设计与制作,深入了解与掌握数模转换,数码管显示的方法,熟悉proteus软件操作。
1.2 设计内容和要求
对压力传感器的信号进行检测。当压力低于30pa时,黄灯闪烁;当压力高于150pa时,红灯闪烁,闪烁周期为1秒。(功能实现☆)(基本功能实现并在数码管显示压力值,格式为P=XXX,★)(前面2功能实现,并可手动设定压力临界值★★)。
由于我水平有限,只针对基本功能及数码管显示功能进行设计。
1.3 设计原理
压力测试系统主要由压力传感器、A/D转换、显示及报警模块组成。压力传感器将外部压力信号转换为电压信号,经由ADC0809转化为数字信号进行处理,软件中对数字量进行判断,并作相应的跳转,由8255实现正常显示或由8253实现灯闪烁、鸣笛报警。各个芯片由8086来进行整体的控制。
1.3.1AD转换器的选择
ADC0809是逐次比进行的8路8位A/D转换器。芯片内有一个8路模拟开关,一个比较器,一个带有树状模拟开关的256R分压器和一个逐次逼近寄存器。树状开关盒256R分压器组成一个基本D/A转换器,D/A转换器的输入与输出模拟量进行比较,确定转换结果。一次A/D转换需要8次比较确定。
ADC0809的技术指标如下:
◆单极性8路输入电压,范围为0~5V;
◆分辨率:8位
◆转换速度:128us(在CLK为500KHZ时)
1.3.2 8255的主要性能
8255A是Intel公司的微处理器配套的通用课编程并行接口芯片,是有40个引脚的双列直插式组件,其基本功能如下:
8255A接口芯片有3个8位并行输入/输出端口,可利用编程方法设置3
个端口是作为输入端口还是作为输出端口;
8255A能适应CPU与IO接口之间的多种数据传送方式的要求。如无条件传送,查询方式传送,中断方式传送。与此相对应,8255A设置了方式0,方式1和方式2。
8255A的C口比较特殊,除作为数据口之外,在工作方式1和方式2下,它的部分信号被分配作为专用的联络应答信号。
8255A的内部结构分为四个部分:数据总线缓冲器,读/控制逻辑,A组和B组控制电路。
◆数据总线缓冲器
它是一个双向三态的8位缓冲器,与CPU系统数据总线相连。输入数据,输出数据,控制命令字都是通过数据总线缓冲器进行传送的。
◆读/写控制逻辑
读/写控制逻辑接受来自CPU地址总线信号和控制信号,并发出命令到俩个控制组(A组和B组)。它控制把CPU发出的控制命令或输出的数据送到相应的端口,或者把外设的状态或输入的数据从相应的端口送到CPU。
◆A组和B组控制
A,B和C3个端口的工作方式是CPU通过向控制寄存器写A组和B组方式控制字来设定的。端口A和端口C的高四位(PC7-PC4)构成A组,由A组控制部件对他进行控制;端口B和端口C的低四位(PC3-PC0)构成B组,由B 组控制部件对他进行控制。
1.4 程序流程图与程序代码1.4.1流程图:
1.4.2程序代码:
IOAPT EQU 0800H
IOBPT EQU 0802H
IOCPT EQU 0804H
IODPT EQU 0806H ;8255控制口ADCPT EQU 0902H ;0809通道1
TCON0 EQU 0500H
TCON1 EQU 0502H
TCON2 EQU 0504H ;8253通道
TCON4 EQU 0506H ;8253控制口
CODE SEGMENT
ASSUME CS:CODE
ORG 1000H
START:
MOV DX,IODPT
MOV AL,10000000B ;ABC三口均设为输出 OUT DX,AL
MOV DX,TCON4
MOV AL,00110111B
OUT DX,AL
MOV DX,TCON0 ;通道0,赋初值
MOV Al,50H
OUT DX,Al
MOV Al,01H
OUT DX,Al
MOV DX,TCON4
MOV AL,01110111B
OUT DX,AL
MOV DX,TCON1 ;通道1,赋初值
MOV Al,50H
OUT DX,Al
MOV Al,01H
OUT DX,Al
MOV DX,TCON4
MOV AL,10110111B
MOV DX,TCON2 ;通道2,赋初值
MOV Al,02H
OUT DX,Al
MOV Al,00H
OUT DX,Al
;********************AD转换******************************* ADCON1:
MOV AX,00 ;8086写引脚有效,启动AD
MOV DX,ADCPT
OUT DX,AL
MOV CX,0500H
DELAY:
LOOP DELAY ;延时,等待转换结束
GETDATA:
MOV DX,ADCPT
IN AL,DX ;读取A/D转化值
CMP AL,30
JAE AA1
CALL LESS30 ;小于30,跳至红灯闪烁报警
JMP ADCON1
AA1:
CMP AL,150
JBE CHULI
CALL LARGE150 ;大于150,跳至蓝灯闪烁报警
JMP ADCON1
CHULI:
CALL CONVER
CALL DISPLAY
JMP ADCON1
;********************AD转换*******************************
CONVER PROC ;分别提取数字量个、十、百放暂存区
AAM
MOV BUF,AL