基于8086的温度采集系统软硬件设计中北大学本科论文Word格式文档下载.docx
- 文档编号:8141189
- 上传时间:2023-05-10
- 格式:DOCX
- 页数:18
- 大小:353.36KB
基于8086的温度采集系统软硬件设计中北大学本科论文Word格式文档下载.docx
《基于8086的温度采集系统软硬件设计中北大学本科论文Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《基于8086的温度采集系统软硬件设计中北大学本科论文Word格式文档下载.docx(18页珍藏版)》请在冰点文库上搜索。
8086微处理器温度传感器A/D转换器温度控制系统
第一章温度采集系统软硬件设计
1.1实验目的
为了实现计算机对生产过程及对象的控制,需要将对象的各种测量参数按照要求转换成数字信号送入计算机。
经计算机运算处理后再再转换成适合于对生产过程进行控制的量。
所以在危机和生产过程之间,必须设置信息的变换和传递通道。
而我们所做的模拟输入通道,主要功能就是随时间变化的模拟输入信号变成数字信号送入计算机,主要由AD590温度传感器,8088CPU,8255A,A/D转换器和LED显示器等组成。
本实验通过设计一个微机控制的温度采集系统,旨在使学生能做到以下几点:
1.了解微机控制的温度采集系统软硬件设计原理和方法。
2.进一步掌握并行接口芯片和模数转换的工作原理与使用方法。
1.2实验设备
l.8086系列微机一台
2.微机硬件实验平台。
3.定时/计数器、并行接口芯片
4.ADC0809
5.8255并口控制器
1.3实验内容及要求
以8088CPU为核心设计一个温度采集系统,系统可以实现一路温度的采集,在3位LED显示器上显示当前温度。
本设计所用器件主要有传感器,A/D转换器,8088CPU,可编程并行接口8255,LED显示器等。
首先传感器把所测的温度转换为电压,输入A/D转换器中进行转换,然后再把得到的二进制数经过CPU在LED上显示出来。
本设计共分以下几个模块:
8088主控模块、A/D转换模块、并行接口模块、显示模块。
第二章总体设计方案
2.1设计思想
在许多传统行业中,多路高温度采集系统是不可或缺的。
电厂,石化行业及制药厂等企业生产过程中,普遍存在着需要进行温度测量的场合。
因为温度是生产过程和科学实验中普遍且重要的物理参数。
在工业生产中,为了高效生产,必须对生产过程的主要参数,如温度,压力,速度等进行有效的检测并控制。
其中温度检测在生产过程中占有相当大的比例。
而我们所做的课题正是以8088cpu为核心设计一个温度巡回监测系统(A/D采用ADC0809).系统可实现温度信号的采集,在3位LED显示器上显示当前的温度。
经标度变换后送LED显示器显示,只进行一路采集。
该系统主要用于温度检测,并在LED上显示当前的温度值。
当温度信号改变时,LED显示的值也随之改变。
2.2原理框图
温度传感器
LED显示
8088控制器
并行接口8255
ADC0809
图2.2原理框图
第三章硬件设计
3.1硬件设计概要
0系统的主要功能是实现温度信号的采集,在3位LED显示器上显示当前的温度。
模拟现场一个点的温度巡回检测,温度范围0-51摄氏度。
3.1.18086主控模块
(1)8086的功能简介:
Intel8086/8088CPU是Intel公司推出的高性能的微处理器,具体如下主要特性:
(1)
8086CPU数据总线为16位,8088CUP数据总线为8位。
(2)地址总线都是20位,低16位用于数据总线复用,可直接寻址为1MB的存储空间。
(3)有16位的端口地址,可以寻址64KB的I/O端口。
(4)有99条基本指令,指令功能强大。
(5)有9种基本寻址方式。
(6)可以处理内部和外部中断,外部中断源多达256个。
(7)兼容性好,与80*86,8085在源程序一级兼容。
(8)
8086/8088标准主频为5MHz,8086/8088-2主频为8MH。
(9)支持单处理器或多处理器系统工作。
8088为40条引线、双列直插式封装。
它们的40条引线排列。
8088有最小组态(单微处理器组成的小系统)和最大组态(多处理器系统)两种工作模式,大部分引脚在两种组态下功能是一样的,只有8根引脚的名称及功能不同(24脚~31脚)。
(2)原理图设计
图3.1.18088电路原理图
(3)8088管脚连接介绍
1.D0D7数据线连接8255A接口芯片的PA0~PA7口;
2.A0,A1地址线连接8255A地址线A0,A1;
3.A2~A19通过逻辑器和8255A的CS连接;
4.IOR,IOW连接8255A的WR,RD;
5.RESET连接8255A的RESET;
6.CLK接为标准的4.77MHZ;
7.8088为最小模式下。
3.1.2并行接口模块
(1)8255A的功能简介
1.8255A内部结构
8255A芯片是一个采用NMOS工艺制造的40引脚双列直插式(DIP)封装组件。
8255A有3个8位数据端口,即A口、B口及C口,它们都可以分别作为输入口或输出口使用;
A组控制与B组控制;
读/写控制逻辑;
数据总路线缓冲器。
2.8255A主要的外部引脚
图3.1.2a8255A引脚图
PA7~PA0:
A口的8条I/O线。
8条线只能同时作为输入或输出,不能分开使用,可设置成双向口,也只有A口允许这样做。
PB7~PB0:
B口的8条I/O线。
不可以设置成双向口,其它和A口一样。
PC7~PC0:
C口的8条I/O线。
不可以设置成双向口,但它可以分拆为两组即高4位和低4位,这两组可以任意设置为输入或输出。
除了作为独立的I/O线外,C口还经常为A口、B口服务,配合A口、B口作联络线使用。
A1、A0:
端口地址选择信号。
用于选择8255A的3个数据端口和一个控制口。
当A1A0=00时,选择端口A;
为01时,选择端口B;
为10,选择端口C;
为11时,选择控制口。
3.8255A工作方式
方式0:
基本的输入/输出方式。
A口、B口、C口都可以工作在些方式下。
方式1:
选通输入/输出方式(应答方式)。
A口、B口工作在此方式下。
方式2:
双向传输方式。
只有A口可以工作在此方式下。
4.8255A方式控制字格式
D7
D6、D5
D4
D3
D2
D1
D0
1
A口
C口高4位
B口
C口低4位
00方式0
01方式1
1x方式2
0输出
1输入
0方式0
1方式1
表1
图3.1.2b8255A系统原理图
(3)8255A管脚连接介绍
8255A的D0~D7接8088的D0~D7;
A口PA0~PA7接三片八段LED显示器;
B口接ADC0809的八个数据口。
C口的PC0—PC2作为三片LED的片选。
C口的PC5~PC7和ADC0809的ALESTART、ENABLE、EOC相连。
当EOC为高电平时表示转换完成,CPU可以从数据口读数据。
CPU通过8255A给START一个正脉冲,是ADC0809开始工作。
PROTEL原理图中用网络标号连接。
(4)8255A的各个口地址
图3.1.2c8255A地址
由原理图图3.1.1,图3.1.2b和图3.1.2c可知:
8255A的PA口地址为:
0000H;
PB口地址为:
0001H;
PC口地址为:
0002H;
控制口地址为:
0003H。
3.1.3A/D转换模块
(1)ADC0809的功能简介
ADC0809是美国国家半导体公司生产的CMOS工艺8通道,8位逐次逼近式A/D转换器。
其内部有一个8通道多路开关,它可以根据地址码锁存译码后的信号,只选通8路模拟输入信号中的一个进行A/D转换。
首先输入3位地址,并使ALE=1,将地址存入地址锁存器中。
此地址经译码选通8路模拟输入之一到比较器。
START上升沿将逐次逼近寄存器复位。
下降沿启动A/D转换,之后EOC输出信号变低,指示转换正在进行。
直到A/D转换完成,EOC变为高电平,指示A/D转换结束,结果数据已存入锁存器,这个信号可用作中断申请。
当OE输入高电平时,输出三态门打开,转换结果的数字量输出到数据总线上。
图3.1.3ADC0809与系统连接原理图
(3)ADC管脚连接介绍
IN0连接传感器,为模拟信号输入端。
ADD-A,ADD-B,ADD-C全部接地,表示选中模拟信号输入端IN0。
EOC接8255A的PC7,当EOC为高电平时表示转换完成,CPU可以从数据口读数据。
(4)AD590传感器电路
图3.1.4AD590传感器连接电路
此电路可以将温度传感器输出的电流值,经过调整可以得到100mv/℃。
3.1.4显示模块
(1)8段LED管脚原理图
(2)8段LED与8255A的连接
LED的A~H分别与8255A的PA0~PA7相连。
采用共阴极连接方法。
用8255A的PC0、PC1、PC2分别控制3片LED的选通。
3.2总硬件设计图
图3.2系统总原理图
第四章软件设计
4.1程序流程图
程序的主要功能是负责温度的转化,读出处理并实现在LED上实时显示。
(1)总流程图
(2)数据采集程序流程图
N
Y
(3)温度显示程序流程图
4.2源程序与相应注解
DATASEGMENT
BUF1DB?
BUF2DB?
BUF3DB?
BUF4DB?
LEDDB3FH,06H,5BH,4FH,66H,6DH,7DH,07H,7FH,6FH
DATAENDS
CODESEGMENT
ASSUMECS:
CODEDS:
DATA
INIT_8255PROCNEAR;
初始化8255
MOVDX,0003H
MOVAL,8AH
OUTDX,AL
RET
INIT_8255ENDP
START:
MOVAX,SEGDATA
MOVDS,AX
MOVSI,OFFSETDATA
LEADI,BUF1
LEASI,LED
CALLINIT_8255
AGAIN:
MOVDX,0002H
MOVAL,08H
MOVAL,00H
NOP
CAIJI:
INAL,DX
TESTAL,80H
JZCAIJI
MOVDX,0001H
INAL,DX;
从B口读入ADC0809的8位二进制数
ANDAX,00FFH
MOVBL,5;
将8位二进制数转换位模拟量,即电压
DIVBL
IMULBL;
将模拟电压转换成相应温度,AL中放的是商,AH放的是余数
MOVBUF1,AH;
将余数放入BUF1中
MOVBUF2AH
ADDBUF1,BUF2;
生成温度的小数位
DIVAX,0AH;
此时AL中放的是商,即十位,AH中放的是余数,即个位数
MOVBUF3,AL
MOVBUF4,AH
L1:
LEASI,LED
ADDSI,BUF3;
找到高位相应LED段码
MOVDX,0002H
MOVAL,01H;
选通PC0口使第一个LED显示高位段码
OUTDX,AL
MOVDX,0000H;
MOVAL,[SI]
OUTDX,AL;
显示相应的段码
CALLDELAY
L2:
LEASI,LED;
让SI回到首地址
ADDSI,BUF4;
找到个位相应LED段码
MOVAL,02H
MOVDX,0000H;
ADDAL,80H;
驱动个位和小数点
L3:
ADDSI,BUF1
MOVDX,0002H
MOVAL,04H
MOVDX,0000H
MOVAL,[SI]
CALLDELAY
L4:
JMPCAIJI;
循环检测温度
EXIT:
MOVAH,4CH
INT21H
DELAYPROCNEAR
MOVCX,1000
DELAY1:
LOOPDELAY1
REP
CODEENDS
ENDSTART
第五章结论
通过本次课程设计掌握了微机系统的开发步骤,可编程并行接口接口芯片8255A,ADC0809和LED的用法,掌握了汇编,程序的设计。
本次设计需要熟练掌握汇编语言,熟悉可编程并行接口接口芯片8255A,ADC0809,内部结构、外部引脚和功能,熟悉LED显示器的结构及译码方式。
在编程方面,由于刚刚接触汇编语言,对汇编语言的逻辑算法的指令不是非常熟悉,所以在编程当中遇到很大的困难。
比如在从ADC0809中获取的操作数,转换成相应的温度值。
这里需要很巧的逻辑运算,而汇编语言不像c语言那样可以直接将表达式写入便可直接计算,汇编里的除法还需考虑余数,进位等问题。
经过我们的讨论和验证,最后终于把程序完成。
最后通过本次课程设计我也获得了许多收益,首先,让我更好的掌握了ADC0809,8255A芯片的工作原理、方式及其应用。
其次,让我学会了如何设计一个简单的微机系统,以及设计一个简单微机系统所需要的步骤和设计中需要注意的地方。
参考文献
1.周耿烈,《微机原理与接口技术实验指导书》,兰州工专计算机工程系,2001年3月。
2.雷丽文,《微机原理与接口技术》,电子工业出版社,1999年第一版。
3.沈美明,《IBMPC机汇编语言程序设计》,清华大学出版社,1991年第一版。
致谢
在陇东学院三年的学习,生活即将结束之际,我要衷心感谢这些年来陇东学院对我的培养以及电气与工程学院各位老师及同学对我的帮助和鼓励。
首先,感谢我的导师彭世林教授对我的悉心指导,本论文就是在彭老师的精心指导下完成的。
在大三时就开始接受彭老师的教导,他负责微机原理专业课程的教授,彭老师严谨的治学态度和高尚的敬业精神让我肃然起敬,无论在生活上还是在学习上,彭老师都是我的良师益友,我从他身上学到了很多很多,他对我的谆谆教诲让我终生受益,在此我对彭老师表示衷心的感谢和崇高的敬意。
最后,忠心感谢各位专家、教授百忙之中评审我的论文,鉴于本人现在大三,好多主要知识还没有涉及到,并且写作水平有限,恳请各位老师批评指正,并借此机会让各位致以诚挚的问候。
电气工程学院课程设计
学生姓名(小四)
学院
指导老师
专业
答辩日期
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 8086 温度 采集 系统 软硬件 设计 北大 本科 论文