微机数据采集系统设计(第四组)
数据采集系统设计原理PPT课件

工业控制机
下位机机箱
上位机
13.3基于单片机数据采集系统
▪ . 1、单片机的特点 ▪ (1)可靠性高:芯片本身是按工业测控环境要求设计,其工业抗
干扰能力强,指令及系统常数因化在ROM中,不易破坏,硬件集成 度高,所以可靠性高。 ▪ (2)易扩展:单片机提供扩展用三总成,并行、串行I/O引脚,易 构成各种规模的计算机应用系统。 ▪ (3)控制功能强,软件指令丰富。 ▪ (4)存储容量小,一般RAM仅几百字节,ROM为几千字节 ▪ 8位: 256 4k 8k ▪ 扩展后: 64k 64k ▪ (5)体积小 ▪ (6)开发周期短,成本低
▪ (1)灵活方便,适用于多通道,高速数据采集成一些特殊场合的测 控要求。
▪ (2)计算机可用于测试目的也可用作他用。
▪ (3)计算机可管理多个测量仪器或相关设备,灵活方便。
▪ 注意:外接电源机箱可以根不同功能或要求的测控系统单独进行设 计,但最好选用通用机箱(标准机箱,2U、3U、4U)价格可以下降。
C
二流体喷枪 空气
鼓 风机
料桶 料液 蠕动泵
0
1
2
3
无锡 虹 业 自 动 化 工 程 有 限 公 司
4
5
6
文件 名 F il e N am e:
日期 Is su e:
2 00 2. 10
7
8
9
10
设计 D es ig n: 王兵辉
制图 D ra w:
CA D室
审核 C he ck :
11
12
13
14
A/D转换器 控制逻辑
计算机
速度快,价格昂贵,适用高速有同步要求的场合,如军事,
5~10KHz以上
课设之基于单片机的数据采集系统设计

课设之基于单片机的数据采集系统设计随着科技的飞速发展,数据采集系统也在逐渐普及。
而基于单片机的数据采集系统设计,是一种简单、可靠、成本低的方案。
一、系统概述数据采集系统是通过采集各种物理量(如温度、湿度、压力等)的信号,将其转换成数字信号,并进行处理和存储,从而实现对物理量的监测、控制和分析。
基于单片机的数据采集系统,是利用单片机的时序控制、数字转换和通信等功能,对物理量进行采集和处理的系统。
二、系统组成基于单片机的数据采集系统主要由传感器、信号调理电路、单片机、存储器和通信模块等组成。
其中:1.传感器:根据需要采集的物理量不同,可以选择多种类型传感器,如温度传感器、湿度传感器、气压传感器等。
2.信号调理电路:对传感器输出的信号进行放大、滤波、线性化等处理,使其符合单片机的输入要求。
3.单片机:选用低功耗、高集成度、性能稳定的单片机,进行数据采集和处理,并实现控制和通信等功能。
4.存储器:将采集到的数据进行存储,以便后期分析和处理。
5.通信模块:将采集到的数据通过串口、CAN、以太网等方式发送到远程计算机或其它设备,并实现数据交互和共享。
三、系统设计在设计基于单片机的数据采集系统时,需要进行如下步骤:1.选择合适的单片机:比较常用的单片机有STC、AVR、PIC、ARM 等,需根据具体需要进行选型。
2.设计信号调理电路:选择合适的电路元件(如运放、滤波电容、电阻等),进行电路设计和仿真,需要考虑到信号质量、成本和体积等因素。
3.编写单片机程序:根据需要,编写适合的程序,实现对信号的采集、处理、存储和通信等功能。
4.调试和测试:对完成的数据采集系统进行调试和测试,查看系统的稳定性、精度和响应时间等指标是否达到要求。
四、应用案例基于单片机的数据采集系统,广泛应用于自动化控制、实验室测量、环境监测和智能家居等领域,如温度、湿度、光照、气压和土壤含水量等的监测等。
例如,在环境监测中,基于单片机的数据采集系统可以采集空气质量、气压、温度、湿度等多项指标数据,通过数据分析和处理,提供科学依据和决策支持,实现环境保护和生态安全等目标。
51单片机数据采集系统

课程设计报告书设计任务书一、设计任务1一秒钟采集一次。
2把INO口采集的电压值放入30H单元中。
3做出原理图。
4画出流程图并写出所要运行的程序。
二、设计方案及工作原理方案: 1. 采用8051和ADC0809构成一个8通道数据采集系统。
2. 能够顺序采集各个通道的信号。
3. 采集信号的动态范围:0~5V。
4. 每个通道的采样速率:100 SPS。
5.在面包板上完成电路,将采样数据送入单片机20h~27h存储单元。
6.编写相应的单片机采集程序,到达规定的性能。
工作原理:通过一个A/D转换器循环采样模拟电压,每隔一定时间去采样一次,一次按顺序采样信号。
A/D转换器芯片AD0809将采样到的模拟信号转换为数字信号,转换完成后,CPU读取数据转换结果,并将结果送入外设即CRT/LED显示,显示电压路数和数据值。
目录第一章系统设计要求和解决方案第二章硬件系统第三章软件系统第四章实现的功能第五章缺点及可能的解决方法第六章心得体会附录一参考文献附录二硬件原理图附录三程序流程图第一章系统设计要求和解决方案根据系统基本要求,将本系统划分为如下几个部分:●信号调理电路●8路模拟信号的产生与A/D转换器●发送端的数据采集与传输控制器●人机通道的接口电路●数据传输接口电路数据采集与传输系统一般由信号调理电路,多路开关,采样保持电路,A/D,单片机,电平转换接口,接收端(单片机、PC或其它设备)组成。
系统框图如图1-1所示1.1 信号采集分析被测电压为0~5V 直流电压,可通过电位器调节产生。
1.1.1 信号采集多路数据采集系统多采用共享数据采集通道的结构形式。
数据采集方式选择程序控制数据采集。
程序控制数据采集,由硬件和软件两部分组成。
,据不同的采集需要,在程序存储器中,存放若干种信号采集程序,选择相应的采集程序进行采集工作,还可通过编新的程序,以满足不同采样任务的要求。
如图1-3所示。
程序控制数据采集的采样通道地址可随意选择,控制多路传输门开启的通道地址码由存储器中读出的指令确定。
数据采集系统设计说明书

220V转5V电压模块220v市电先通过变压器转换成9V或者12v的交流电,再通过整流桥,将交流电转换为直流电。
将得到的直流电,通过两个并联电容滤波,得到较为平滑的的直流信号。
将得到的直流信号,通过三端集成稳压器(7805)得到正5v,后面的两个电容也是滤波作用,电阻可要可不要。
单片机最小系统单片机最小系统由单片机的震荡电路,复位电路组成。
此处的复位电路由按键复位电路组成。
数码管动态显示电路此处的数码管由4位共阴极数码管组成,段码通过74LS573(锁存器)分别接单片机的P0口,位选接单片机的P2.0,P2.1,P2.2,P2.3口,在74LS573和P0口之间加了上拉电阻,用于提高P0口的灌电流电机控制电路电机转速通过单片机产生的PWM信号的占空比来实现,直流电机的一端接高电平,另一端通过达林顿管(ULN2003)接单片机的IO口,达林顿的主要用来驱动电机,因为单片机IO 口的输出电流较小。
RS232串口此电路主要同串行接口,以及MAX232串口芯片组成,通过串口线,便能实现和上位机的通信。
3*3矩阵键盘此电路原理必定到处都有,就不在赘述了测速系统设计中采集信号部分是通过光电传感器来实现,利用测速圆盘将光信号转变成单片机能够处理的电信号。
测速圆盘位于红外线发光二极管(规格HG11)和红外线接收三级管(规格3DU5C)之间,采用+5V电压供电,选用合适的电阻值来配合该其工作。
红外线发光二极管发出的光信号通过测速圆盘的孔,到达红外线接收三级管表面,它将接收到的光信号转变成电信号输出。
通过改变测速圆盘的旋转速度来控制输出电信号的频率值,并将其输出I/V转换电路图中Vf是输出电流IL流过电阻Rf产生的反馈电压,即V1与V2两点之间的电压差,此信号经电阻R3、R4加到运放A1的两个输入端Vp与Vn,反馈电压Vf=V1-V2,对于运放A1,有VN=Vp;Vp=V1/(R2+R3)×R2,VN=V2+(Vi-V2)×R4/(R1+R4),所以V1/(R2+R3)×R2=V2+(Vi-V2)×R4/(R1+R4),依据Vf=V1-V2及上式可推导出:若式中R1=R2=100k Ω,R1=R4=20kΩ,则有:Vf×R1=Vi×R4,得出:Vf=R4/R1×Vi=1/5Vi,如果忽略流过反馈回路R3、R4的电流,则有:IL=Vf/Rf=Vi/5Rf,由此可以看出.当运放的开环增益足够大时,输出电流IL与输入电压Vi满足线性关系,而且关系式中只与反馈电阻Rf的阻值有关.显然,当Rf=200Ω时,此电路能实现0-10v/0-10mA的V/I变换。
第2节 数据采集系统设计

7.2.2 主机单元设计
图7.5 主机单元电路原理图
7.2.2 主机单元设计
【DS12887简介】 采用24引脚双列直插式封装. 晶体振荡器,振荡电路,充电电路和可充电锂电池等 封装在芯片的上方,组成一个加厚的集成电路模块. 内部有专门的接口电路,使其与各种微处理器的接口 大大简化. 无需外围电路元件,只要选择引脚MOT电平,即可和 不同的计算机总线连接.
7.2.3 数据采集单元
图7.8 信号采集和A/D转换
7.2.3 数据采集单元
2. 地址分配和连接 单片机与TLC1543引脚的连接和地址分配如下: (1) CS:片选端,低电平有效,与P2.3相连; (2) DOUT:串行数据输出端,与P2.2相连; (3) ADIN: 串行数据输入端,与P2.1相连; (4) IOCLK:串行时钟输入端,与P2.0相连;
7.2.4 人机接口单元
1. 电路原理和器件选择 键盘和显示器由7279管理,实现5个按键的功能,8位 显示器的显示功能.前3位显示通道号,后3位显示可燃 气体浓度值.电路图如图7.9所示.
图7.9 键盘和显示器电路图
7.2.4 人机接口单元
2. 地址分配和连接 单片机与HD7279引脚的连接和地址分配如下: (1) CS:片选端,低电平有效,与P1.5相连; (2) CLK:串行时钟输入端,与P1.6相连; (3) DATA:串行数据输入/输出端,与P1.7相连; (4) KEY:按键有效信号端,与P3.3相连.
EQU EQU EQU EQU
06H 04H 05H 01H
用WREN代表允许写操作指令06H 用WRDI代表禁止写操作指令04H 用RDSR代表读状态寄存器指令05H 用WRSR代表写状态寄存器指令01H
数据采集的设计报告

目录摘要 (3)引言 (5)第一章数据采集系统的概述 (6)1.1 数据采集系统基本概述 (6)1.1.1 数据采集 (6)1.1.2 数据采集系统的分类 (6)1.1.3 数据采集系统的基本功能 (7)1.1.4 数据采集系统的结构形式 (7)第二章数据采集系统整体设计 (8)2.1 硬件设计原则 (8)2.2 软件设计原则 (8)第三章数据采集系统的硬件设计 (9)3.1 系统工作原理 (9)3.2 硬件工作原理 (9)3.2.1 CPU处理核心模块(STC89C52) (9)3.2.2 DS18B20温度传感器模块 (11)3.3 电路设计 (14)3.3.1 CPU处理模块 (14)3.3.2 显示电路 (15)3.3.3 通信电路 (15)3.3.4 复位电路 (15)3.3.5 温度采集电路 (16)3.3.6 晶振电路 (16)3.3.7 警报电路 (17)第四章数据采集系统的软件设计 (18)4.1 汇编语言和Keil C51 (18)4.2 主程序 (19)4.3 各程序 (19)4.3.1 显示子程序 (19)4.3.2 温度子程序 (20)第五章总结 (21)参考文献 (22)附录:程序 (23)摘要本次设计主要基于单片机STC89C52单片机的多点数据采集,该系统由硬件部分和软件部分组成。
硬件部分是由信号接收、信号采集、AD转换和信号发送四部分组成。
系统以单片机为核心,将被测信号转换为能够被单片机所识别的信号输入单片机实现数据采集。
被测信号一般为模拟数据和数字数据两大类。
主机发送的模拟信号经过AD0809的转换,模拟信号经量化后得到离散的值,即数字信号。
在方案的选择中,主机可以用单片机、ARM、电脑等,采用单片机做主机部分,通信距离会比较短,所以使用上拉电阻通过上拉的作用给信号线提供一个驱动电压,使之传输更稳定,传输距离更远,用来抵消线路中内阻对信号的损耗。
关键词:STC89C52;信号接收;信号采集;A/D转换AbstractThis design is mainly based on single-chip microcontroller STC89C52 multi-point data acquisition, this system is consists of hardware and software components. Hardware part is consists of four parts as signal receiving, signal acquisition, AD transform and signal sending. This System is based on single-chip microcontroller, which is being measured signals converted to what can be single-chip microcontroller identification of the signal input data acquisition.Measured signal is divided into two types of commonly simulation data and digital data.The analog signal sending by the mainframe is changed over through AD0809, then the analog signals via discrete values quantified, namely the digital signal.In the choice of case, mainframe can be MCU, ARM, computers and so on, using the monolithic as the mainframe will make a short communication distance, as the result, we use pull-up resistors to pull through the role of signal lines provide a driving voltage, make transmission more stable, the transmission distance is farther, and offset circuit impedance to signal loss.Key words:STC89C52, signal receiving, signal acquisition, A/D transform引言温度是一种最基本的环境参数,人们的生活与环境的温度息息相关,工业和农业生产中得许多场合对温度有严格的要求,如温室养殖场和冷冻室等,随着科学技术的进步,单片机及相关电子技术飞速发展,应用领域不断拓展,利用单片机和传感器实现对温度的精确测量,提高了生产的自动化程度,成本低廉,应用十分广泛,因此研究温度的测量方法和装置具有重要的意义。
《汇编语言+微型计算机技术》数据采集系统的设计与实现汇编课设报告
《汇编语言+微型计算机技术》课程设计报告课设题目数据采集系统的设计与实现系部信息系班级计算机xxx学生姓名xxx学号xxx序号22指导教师徐阳时间2014.6.17~2014.6.29目录一、设计目的 (1)二、设计内容 (1)三、硬件设计及分析 (2)1总体结构图 (2)2.各部件端口地址设计及分析 (2)3.各部件的组成及工作原理 (3)四、软件设计及分析 (6)1总体流程图 (6)2.连线 (7)3.主要程序编写及分析 (7)五、系统调试 (11)1.调试环境介绍 (11)2.各部件的调试 (12)3.调试方法及结果 (18)六、总结与体会 (19)七、附录 (20)数据采集系统的设计与实现一、设计目的1.通过本设计,使学生综合运用《微型计算机技术》、《汇编语言程序设计》以及电子技术等课程的内容,为以后从事计算机检测与控制奠定一定的基础。
2.主要掌握并行I/O接口芯片8253、8255A、ADC0809及中断控制芯片8259A 等可编程器件的使用,掌握译码器74LS138的使用。
3.学会用汇编语言编写一个较完整的实用程序。
4.掌握微型计算机技术应用开发的全过程:分析需求、设计原理图、选用元器件、布线、编程、调试、撰写报告等步骤。
二、设计内容1.功能要求①利用《汇编语言+微型计算机系统》课程中所学的可编程接口芯片8253、8255A、ADC0809和微机内部的中断控制器8259A(从保留的IRQ2或TRQ10端引入)设计一个数据采集系统、并且编程与调试。
②用8253定时器定时10MS,每次定时10MS后启动一次模/数转换,要求对所接通道变化的模拟电压值进行采集。
③每次模/数转换结束后,产生一次中断,在中断服务程序中,采集来的数字量被读入微处理器的累加器AL中,然后通过8255A输出到8个LED发光二极管显示。
④最后不要8255芯片用数码管显示所采集后的信息(电压0-5.0的范围内变化)。
2.设计所需器材与工具④微机原理与接口综合仿真实验平台。
简易数据采集系统的设计
简易数据采集系统设计题目:二选一1. 设计一个单片机控制的数据采集系统,要求A/D 精度12位,采样频率最高100KHz,输入8路信号,分时复用A/D 芯片,将采集到的波形进行4K 的SRAM 存储,然后通过串行口发送给计算机2. 设计一波形发生电路,计算机通过串行口向板卡发送波形电路,波形存储到板卡上的SRAM 中,然后进行计算机控制的D/A 波形产生,板卡上用单片机进行控制 要求:1. 选择器件,确定具体型号。
2. 画原理图。
3. 根据器件封装画PCB 图。
4. 写出相应的单片机和微机控制程序。
5. 写出详细的原理分析报告。
器件选择:TI 公司生产的8位逐次逼近式模数转换器ADC0809,8051,MAX232 原理图如下:原理报告原理报告::采集多路模拟信号时,一般用多路模拟开关巡回检测的方式,即一种数据采集的方式。
利用多路开关(MUX )让多个被测对象共用同一个采集通道,这就是多通道数据采集系统的实质。
当采集高速信号时,A/D 转换器前端还需加采样/保持(S/H)电路。
待测量一般不能直接被转换成数字量,通常要进行放大、特性补偿、滤波等环节的预处理。
被测信号往往因为幅值较小,而且可能还含有多余的高频分量等原因,不能直接送给A/D 转换器,需对其进行必要的处理,即信号调理。
如对信号进行放大、衰减、滤波等。
通常希望输入到A/D 转换器的信号能接近A/D 转换器的满量程以保证转换精度,因此在直流电流电源输出端与A/D 转换器之间应接入放大器以满足要求。
本题要求中的被测量为0~5V 直流信号,由于输出电压比较大,满足A/D 转换输入的要求,故可省去放大器,而将电源输出直接连接至A/D 转换器输入端。
关于A/D 转换器的选取: 1.转换时间的选择转换速度是指完成一次A/D 转换所需时间的倒数,是一个很重要的指标。
A/D 转换器型号不同,转换速度差别很大。
通常,8位逐次比较式ADC 的转换时间为100us 左右。
数据采集系统的设计与选型PPT课件
和应用软件等。
被测电信 号与非电 信号
传感器或 变换器
信号 调理
数据采集 与控制
驱动 程序
分析与显 示软件
图1. 一个完整的DAQ系统
第2页/共12页
数据采集系统的构成
• 典型的基于PC的数据采集(DAQ)系统
第3页/共12页
PC Based信号采集系统
数据采集 与控制
第4页/共12页
数据采集系统的构成
第9页/共12页
数据采集系统的构成
4. PC与软件 软件使PC与数据采集硬件形成了一个完整的数据采
集、分析和显示系统。 软件分为驱动程序和上层应用程序。
1)驱动程序隐藏了复杂的硬件底层编程细节,为用户提 供容易理解的接口。将采集来的原始数据用可以理解的 形式显示,与用户进行数据交互。一般来说,硬件厂商 在卖出硬件的同时也会提供驱动程序。
•
1. 传感器和变换器
• 传感器感应物理信息并生成可测量的电信号。
• 例如热电偶、电阻式测温计(RTD)、热敏电阻器和IC传感器可以把 温度转变为ADC可测量的模拟信号。
第5页/共12页
变送器/传感器
物理现象 温度
光 声音 力和压力 位置(位移)
流量
PH
传感器 热电偶、电阻温度探测器(RTD)、 IC 传感器、热敏电阻 真空管光电传感器、光导器件
引子
• 前续课是以软件规则的学习为主。从本章开始学习如 何把软件和硬件相结合,开发出实用的测试测量系 统——虚拟仪器系统。
• 数据采集(data acquisition,DAQ)系统就是实 际应用最为广泛的一种系统。
• 数据采集:简要来说就是将电压、电流等电信号或温 度、加速度、应变等非电信号通过一些特殊的传感器 转换成电信号,再经过A/D转换,输出到计算机的过 程。
数据采集系统设计原理PPT课件
▪ 例:青岛项目 薄膜蒸发器项目
▪
南理工压力,速度测量系统
例子
.
例子
各. 种传 感器
智能数据 采集模块
下位机
RS485
工控机
.
.
USB总线数据采集系统
.
温湿度变送器
压差变送器 风速变送器 电压电流变
送器 流量传感器
各种传感器
机箱 供电电源
USB数据采集卡
USB总线
基于Labview平台 开发的数据采集
2、单片机的结构及组成
.
Sensor Sensor 开关量
键盘
打印
调理电路
放大滤波 整形
Smit触发器
A/D 整形
显示LED 报警
0832D/A 通信RS232
基于8051的智能仪表的组成
13.5基于IPC与PLC的测控系统
.所有的工业控制中,PLC的可靠性是最高的,其弱点是: (1)显示功能和数据处理的能力不如IPC机, (2)开关控制功能强大,模拟量控制能力稍差。 PLC一般应用于批量不大的工业设备和工厂生产过程的自 动控制。如果系统中开关量多(10个以上),采用PLC。 如今PLC 作为下位机与PC机,IPC进行连网,组成计算机 集散控制与管理系统(DCS)前景非常好。
软件
工业控制机
下位机机箱
上位机
13.3基于单片机数据采集系统
▪ . 1、单片机的特点 ▪ (1)可靠性高:芯片本身是按工业测控环境要求设计,其工业抗
干扰能力强,指令及系统常数因化在ROM中,不易破坏,硬件集成 度高,所以可靠性高。 ▪ (2)易扩展:单片机提供扩展用三总成,并行、串行I/O引脚,易 构成各种规模的计算机应用系统。 ▪ (3)控制功能强,软件指令丰富。 ▪ (4)存储容量小,一般RAM仅几百字节,ROM为几千字节 ▪ 8位: 256 4k 8k ▪ 扩展后: 64k 64k ▪ (5)体积小 ▪ (6)开发周期短,成本低
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
微机数据采集系统设计(第四组)湖南人文科技学院课程设计报告课程名称:微机接口技术与应用课程设计设计题目:微机数据采集系统设计系别:计算机科学技术系专业:计算机科学与技术专业组别:09级计科二班第四组组员:刘振辉胡雨婷韩毅张鹏伍佳学号:09408217、09408218、09408219、09408220、09408221起止日期:2012.6.10 -2012.6.24指导教师: 刘庆目录一、课程设计要求和任务.......................... - 2 -二、课程设计题目................................ - 2 -三、课程设计平台环境............................ - 2 -四、任务分配.................................... - 2 -五、设计与实现.................................. - 2 -1.设计思想 (2)2.分析 (3)3.设计 (3)4.原理图、PCB图、流程图 (4)5.软件设计程序 (7)6.设计计算结果 (12)7.调试与操作说明 (12)六、感想体会................................... - 12 -七、参考文献................................... - 13 -一、课程设计题目第4题:微机数据采集系统设计二、课程设计平台环境MF软件采用系统集成技术,把实验程序的开发工具,故障诊断程序和外设模块演示程序集成在一个环境中,构成一个用户程序集成开发环境IDE (Integrated Development Environment)。
用户程序的编辑、编译、连接、运行和修改的全过程都在一个集成的环境中完成,大大提高了编程的效率。
这个环境目前已有4个版本,每个版本提供了内容丰富的汇编语言和C/C++语言开发软件包,并以全屏幕窗口环境的形式供用户使用。
三、任务分配1.资料收集,文档整理(刘振辉,胡雨婷)2.原理图,PCB图,流程图(韩毅)3. 程序编写(张鹏,伍佳)四、设计与实现1.设计思想首先,根据实验要求,设计A/D数据采集电路,然后,按照电路原理,选用一些元器件,在面包板上分别搭建电路模块。
由于实验中要用到MFID多功能微机实验平台板上的8255A作接口控制信号,所以要用两头带插针的软导线,通过26芯电缆的插孔将8255A 的输出信号接入面包板,这样整个的组成了A/D 数据采集系统的硬件。
然后,编写A/D 数据采集系统的控制程序,并进行调试。
最后,加入软件控制程序,对接口进行驱动,组成了A/D 数据采集系统。
A/D 数据采集模块、平台板、微机组成的数据采集系统框图如图1所示。
2. 分析ADC0809的特性、ADC0809的外部特性: ADC 的外部引脚如图1,从图中 可以看出 ,ADC0809有八个模拟量输入端(IN0-IN7),相应设 置3根模拟量通道地址线(ADDA -ADDC ),用以编码来选择8个模拟量输入通道。
并且还设置1根地址锁存允许信号ALE ,高电平有效。
当ALE 变高,锁存由ADDa-ADDc 编码所选中的通道号,将 该通道的模拟量接入A/D 转换 器。
ADC0809的分辨率为8位,有812345678910111213142827262524232221201918171615IN 3IN 4IN 5IN 6IN 7D 3IN 2IN 1IN 0D 0D 1D 2D 4D 5D 6D 7V REF(+)V REF(-)VCC START EOC OE CLOCK GND ADD A ADD B ADD C ALE ADC0809ADC0808图2 ADC0809引线图根数字量输出线(D0-D7),带有三态输出锁存器。
并设置了1根输出允许信号OE,高电平有效。
当读数据时,要使OE置高,打开三态输出锁存器,把转换的数字量送到数据线上。
ADC0809的转换启动信号是START,高电平有效。
转换结束信号EOC,转换过程中为低电平,转换完毕变为高电平,可利用EOC的上升沿申请中断,或作查询之用。
3.设计1.A/D数据采集模块电路本外设模块采用8855A作为接口电路,其中,PA0-PA7接数据线,其低三位与通道地址线ADDA-ADDC相连,即将通道号写入A口。
另外,转换后的数据从A口读入CPU。
PC0连接START和ALE信号,高电平有效,表示启动转换。
PC1连接输出允许信号OE。
当查询方式时,PC4连接EOC信号,转换过程中,PC4为0,当转换完毕时,PC4为1。
2.设计方法及其原理:通过ADC0809数模转换器将由电位器转动所产生的模拟信号转换为数字信号,然后通过8255A并行接口送入内存并显示在窗口中。
4.原理图、PCB图、流程图(1)原理图如下:(2)PCB图如下:(3)程序流程图5.软件设计程序C语言#include<dos.h>#include<stdio.h>#include<conio.h>int choose_channel(); /*选择通道函数*/void main(void){int ch,n,pa,i,pc4;clrscr();printf("Please input the a/d channel NO(0--7):");ch=choose_channel();printf("During the process, press any key to exit!\n");do{outportb(0x303,0x88); /*初始化8255状态字,A 口输出*/outportb(0x300,ch); /*送通道号至A口*/outportb(0x303,0x01); /*使PC0置高发启动信号*/outportb(0x303,0x03); /*pc1置1进行地址锁存*/delay(100);outportb(0x303,0x02); /*pc1=0*/outportb(0x303,0x98); /*重写8255方式字,*//*A口输入,C口低四位输出,C口高四位输入*/outportb(0x303,0x04); /*pc2=0*/do{pc4=inportb(0x302)&0x10;}while(pc4==0); /*查询PC4的状态,直至为高电位,即,转换完成*/outportb(0x303,0x05); /*pc2=1,允许读转换结果*/pa=inportb(0x300)*(0x77)/(0xff); /*读转换结果*/printf("\nTempreture is %d degree \n",pa); /* 显示转换结果*/delay(100);}while(!kbhit()); /*有任意键按下即退出转换*/ }int choose_channel(){int c;do{c=getchar(); /*输入通道号*/c=c-48; /*输入通道号*/if(c<0||c>7)printf("\nThe ad channel NO is wrong! \nBe sure it is between 0 and 7!\nPlease input the NO again!:");/*通道号有误时,显示出错信息,并要求再次输入正确的通道号*/else break; /*通道号正确时,跳出循环*/ }while(1);return(c); /*返回正确的通道号*/}汇编语言:sseg segment para stack 'stack'dw 200 dup (?)sseg endsdseg segment para public 'data'message db 'If you want to quit A/D convert,please press''ESC'''db 0dh,0ah,'$'input_message db 'input number of A/D channel'db 0dh,0ah,'$'error_message db 'input incorrect A/Dchannel!',0dh,0ahdb 'please input number of A/D channel again:'db '$'temp db (?)dseg endscseg segment para public 'code'assume ss:sseg,cs:cseg,ds:dsega_dpo proc farstart: mov ax,ssegmov ss,axmov ax,dsegmov ds,axmov ah,9 ;显示提示信息mov dx,seg messagemov ds,dxmov dx,offset messageint 21hmov ah,9 ;提示输入通道号mov dx,seg input_messagemov ds,dxmov dx, offset input_messageint 21hinput: mov ah,8 ;检查输入通道号是否有错int 21hcmp al,'0'jb errorcmp al,'7'ja errorsub al,30hmov temp,al ;若无错,则保存通道号jmp beginerror: mov ah,9 ;显示出错信息mov dx,seg error_messagemov ds,dxmov dx, offset error_messageint 21hjmp inputbegin: mov dx,303h ;初始化8255状态字,A口输出mov al,88hout dx,almov dx,300h ;送通道号至A口mov al,tempout dx,almov dx,303hmov al,3hout dx,al ;PC1置1进行地址锁存mov dx,303hmov al,98hout dx,al ;重写8255方式字,A口输入,C口低四位输出,C口高四位输入lop: mov dx,303h ;使PC0置高发启动信号mov al,1hout dx,almov cx,0f00h ;delaylop1: loop lop1mov dx,303hmov al,0hout dx,allopsub: mov dx,302in al,dxand al,10hjz lopsubmov dx,303hmov al,5hout dx,almov dx,300hin al,dxpush axshow: and al,0f0h ;显示高4位shr al,4cmp al,9ja hexadd al,30hjmp nexthex: add al,37hnext: mov dl,almov ah,2int 21Hpop axand al,0fh ;显示低4位cmp al,9ja hex1add al,30hjmp next1hex1: add al,37hnext1: mov dl,almov ah,2int 21hmov dl,13 ;向屏幕送回车符mov ah,2int 21hmov dl,10 ;向屏幕送换行符mov ah,2int 21hmov ah,0bh ;检测是否有ESC键按下int 21hinc aljnz lop ;若无键按下,则继续采集quit: mov ax,4c00h ;程序退出int 21ha_dpo endpcseg endsend start6.设计计算结果预设通道号为3,计算结果为:0-1007.调试与操作说明硬件连接:将面包板上的一根导线接在实验平台+12伏的电源上,然后将ADC0809转换器上CLK引脚的一根导线接在实验平台TP3上的CLK处。