基于单片机10通道数据采集系统设计
基于单片机10通道数据采集系统设计
单片机10通道数据采集系统设计
一、设计任务院 (系): 专业班级: 学 号: 学生姓名: 指导教师: 起止时间:2009.12.07—2009.12.18
10通道数据采集系统设计
基于单片机10通道数据采集系统设计
实现10通道模拟信号的采集
二、设计要求
1、采样频率200HZ,位数12位
2、设计实现模拟/数字转换的方法,给出转换速度
三、 设计原理
1、AD574A芯片介绍
AD574A 是单片高速12 位逐次比较型A/D 转换器,内置双极性电路构成的混合集成转换显片,具有外接元件少,功耗低,精度高等特点,并且具有自动校零和自动极性转换功能,只需外接少量的阻容件即可构成一个完整的A/D 转换器,其主要功能特性如下: 分辨率:12 位
非线性误差:小于±1/2LBS 或±1LBS 转换速率:25us
模拟电压输入范围:0—10V 和0—20V,0—±5V 和0—±10V 两档四种 电源电压:±15V 和5V 数据输出格式:12 位/8 位
芯片工作模式:全速工作模式和单一工作模式 主要功能引脚介绍如下: AC:模拟地 DC:数字地
CS:片选信号,低电平有效 CE:片使能,高电平有效
R/C:读/启动信号,高电平读数据,低转换 12/8:数据格式选择,高电平12位数据同时有效,低电平时第一次输出高8位,第二次输出低四位有效,中四位为零。
A0:内部寄存器控制输入端,在12/8接地的情况下,高电平时高8位数据有效,低电平时低4位有效,中间4位为零,高4位为高阻态;在R/C为低的情况下,高电平启动12位转换,低电平启动8为转换。
STS:工作状态输出端,高电平表示正在转换,低电平表示转换完毕 AD574和单片机的接口
在设计硬件电路时要十分注意的一点就是AD574的数据输出线与单片机数据总线的连接方式:应该将高8位DB4~DB11接到数据总线的D0~D7,低4位DB0~DB3接到数据总线的高4位D4~D7。如果接错的话就不能读取正确的转换结果,而且还很容易烧坏芯片。
基于单片机10通道数据采集系统设计
AD574A 的工作模式:如果需AD574A 工作于单一模式,只需将CE、12/8端接至+5V 电源端, CS和A0接至0V,仅用R/C端来控制A/D 转换的启动和数据输出。当RC=0 时,启动A/D 转换器,经25us 后STS=1,表明A/D 转换结束,此时将R/C置1,即可从数据端读取数据。
AD574控制端标志意义:
AD574的接口电路
下图是8051 单片机与AD574A 的接口电路,其中还使用了三态锁存器74LS373 和74LS00 与非门电路,逻辑控制信号由(CS、R/C和A0)有8051 的数据口P0 发出,并由三态锁存器74LS373 锁存到输出端Q0、Q1 和Q2 上,用于控制AD574A 的工作过程。AD 转换器的数据输出也通过P0 数据总线连至8051,由于我们只使用了8 位数据口,12 位数据分两次读进8051,所以R/C接地。当8051 的p3.0 查询到STS 端转换结束信号后,先将转换后的12 位A/D 数据的高8 位读进8051,然后再将低4 位读进8051。这里不管AD574A 是处在启动、转换和输出结果,使能端CE 都必须为1,因此将8051 的写控制线WR和读控制线RD通过与非门74LS00 与AD574A 的使能端CE 相连。
2、74LS150芯片介绍
74LS150是一个16选1数据选择器(有选通输入端,反码输出)。
基于单片机10通道数据采集系统设计
数据选择端(ABCD)按二进制译码,以从16个数据(E0---E15)中选取1个所需的数据。只有在选通端STROBE为低电平时才可选择数据。输出端W为反码数据。 引脚图:
引出端符号:
A、B、C、D 选择输入端 E0---E15 数据输入端
STROBE 选通输入端(低电平有效) W 反码数据输出端 Y 数据输出端 功能图:
H=高电平;L=低电平;X=任意;E0—E15=对应的E端电平
基于单片机10通道数据采集系统设计
基于单片机10通道数据采集系统设计
3、74HC573芯片简介
74HC573是八进制3 态非反转透明锁存器为高性能硅门CMOS 器件。
SL74HC573 跟LS/AL573 的管脚一样。器件的输入是和标准CMOS 输出兼容的;加上拉电阻,他们能和LS/ALSTTL 输出兼容。当锁存使能端为高时,这些器件的锁存对于数据是透明的(也就是说输出同步)。当锁存使能变低时,符合建立时间和保持时间的数据会被锁存。
×输出能直接接到CMOS,NMOS 和TTL 接口上 ×操作电压范围:2.0V~6.0V ×低输入电流:1.0uA
×CMOS 器件的高噪声抵抗特性
管腿安排:见右图 功能表:
基于单片机10通道数据采集系统设计
X=不用关心 Z=高阻抗
*最大值范围是指超过这个值,将损害器件。 操作最好在下面的推荐操作条件下:
额定功率的下降——PDIP:-10mW/℃ ,65℃~125℃
SOIC:-7 mW/℃ ,65℃~125℃
四、 设计过程
1、本系统需要的控制比较简单,选用80c51单片机芯片进行控制。
2、由于输入是10通道模拟输入,12位精度数字输出。所以选用的AD转换芯片必须至少有10个模拟输入通道,而且数字输出为12位。考虑到芯片的价格与芯片结构复杂程度要便于设计的因素,本设计选用一通道模拟输入、12精度数字输出的AD574模数转换芯片,与16选1数据选择器74LS150搭配使用。使用74LS150的16个输入通道中的10个通道即可,然后把选择的通道中的模拟输入量送到AD574。
3、由于12位数字输出需要分两次送到单片机,因此需要在AD574与单片机之间加数据锁存器,本设计选用74HC573锁存器。
4、74LS150的通道选择由单片机的P1口的P1.0-P1.3控制,0000对应0通道,0001对应1通道,……,1001对应9通道。共使用10个通道。具体原理见设计原理的74LS150芯片介绍部分。
基于单片机10通道数据采集系统设计
5、软件流程图
主程序:
AD转换子程序:
基于单片机10通道数据采集系统设计
6、软件程序
#include<absacc.h> #include<intrins.h> #include<reg51.h>
#define uint unsigned int #define uchar unsigned char
#define ADCOM XBYTE[0xff7c] //控制寄存器地址 #define ADLO XBYTE[0xff7f] //数据字节低4位地址 #define ADHI XBYTE[0xff7d] //数据字节高8位地址
sbit r = P3^7; //p3.7口 sbit x = P3^6; //p3.6口 sbit adbusy = P3^0; //p3.0口
uint ad574(void) //AD转换子程序 {
r = 0; x = 0;
ADCOM = 0; //启动转换 while(adbusy == 0);
return((uint)(ADHI<<4)+(ADLO&0x0f)); //返回转换数据 }
main() //主程序 {
uint idata result[10]; //定义数据存储数组 uchar ad_now = 0; //通道号 while(1) {
P1 = ad_now; //通过p …… 此处隐藏:3129字,全部文档内容请下载后查看。喜欢就下载吧 ……
相关推荐:
- [教育文库]夜场KTV服务员的岗位职责及工作流程[1]
- [教育文库]企划、网络、市场绩效考核方案
- [教育文库]学党史、知党情、强党性--“党的基本理
- [教育文库]2016年高考物理大一轮总复习(江苏专版
- [教育文库]干部廉洁自律自查自纠的报告
- [教育文库]2010年北京大学心理学系拟录取硕士研究
- [教育文库]资金时间价值练习题及答案
- [教育文库]保护环境的心得体会
- [教育文库]英语角内容:英语趣味小知识
- [教育文库]档案收集与管理工作通知
- [教育文库]劳动规章制度范本范本
- [教育文库]高考物理一轮复习课后限时作业1运动的
- [教育文库]机械工艺夹具毕业设计195推动架设计说
- [教育文库]通用技术教学比赛说课稿2
- [教育文库]2018年四年级英语下册 Module 7 Unit 2
- [教育文库]第2章 宽带IP网络的体系结构
- [教育文库]九年级化学第五单元课题3《根据化学方
- [教育文库]小学英语六年级情态动词用法归纳
- [教育文库]甲级单位编制窑井盖项目可行性报告(立
- [教育文库]2016-2021年中国城市规划行业全景调研
- 高考英语听力十大场景词汇总结
- 全省领导班子思想政治建设座谈会会议精
- 人教版新课标高一英语提优竞赛试题 下
- 江西省2014年生物中考试题
- 长沙镇食品药品安全事故应急预案
- 《金刚石、石墨和C60》片段教学设计
- 福州教育学院(王旭东)
- 基于EDA音乐播放器的设计
- 9、古诗两首《夜书所见》《九月九日忆
- 小学语文课外阅读有效策略探讨
- 贵州文化产业发展成支柱产业的问卷调查
- 膀胱类癌的诊治体会(附3例报告)
- 发动机积碳产生的原因
- Configuring Code Composer Studio for
- 学生良好的心理素质如何培养点滴谈
- 46 电沉积法制备锂离子电池用硅-锂薄膜
- 美舍雅阁公司管理中各部门职责
- 去壳剥皮的小妙招
- 六自由度运动平台的仿真研究
- Pride and Prejudice(傲慢与偏见)




