教学文库网 - 权威文档分享云平台
您的当前位置:首页 > 文库大全 > 高中教育 >

基于单片机的八路数据采集系统

来源:网络收集 时间:2026-09-08
导读: 基于单片机的八路数据采集系统 摘 要:单片机数据采集系统是计算机在工业控制中最为普遍的应用系统它的任务是采集生产过程中的各种工况参数经过处理后送入内存储器,CPU再对这些参数数据进行分析,运算和处理。本系统设计一个单片机系统,负责数据的采集和显示

基于单片机的八路数据采集系统

摘 要:单片机数据采集系统是计算机在工业控制中最为普遍的应用系统¸它的任务是采集生产过程中的各种工况参数经过处理后送入内存储器,CPU再对这些参数数据进行分析,运算和处理。本系统设计一个单片机系统,负责数据的采集和显示,设计一个多路数据输入输出系统,实现8路输入和输出。采用89C51系列单片机、ADC0809、LCD1602等芯片实现硬件仿真,采用C语言编程。最后硬件电路在Proteaus下仿真实现。 关键词:数据采集;8路输入输出;LCD。

一、方案设计

数据采集电路的原理框图1所示。

图1 数据采集电路的原理框图

根据设计要求,采用的方案如下:硬件部分实现对8路数据采集和显示的功能,包括MCS-51单片机、ADC0809、LCD1602;软件部分实现单片机对8路输入数据的采集以及对LCD的显示操作。

主要设计思想:单片机P1与ADC0809相连,P0与LCD连接。模拟信号通过IN0——IN7输入到ADC0809中转换为数字信号,P1获得此值后,经过处理得到每位的数据后,通过P2口写数据到LCD屏上。

二、硬件电路设计

(一)MCS51单片机

MCS-51单片机的内部资源主要有并行I/O接口、定时器/计数器、串行接口以及中断系统。 I/O接口

51系列单片机有4个8位并行的I/O端口:P0、P1、P2、P3口。这4个口既可以并行输入或输出8位数据,又可以按位方式使用,即每一位均能独立作为输入或输出接口用。 定时器/计数器电路

1.MCS-51单片机有两个16位的可编程定时/计数器:定时/计数器T0和定时/计数器T1。

2.每个定时/计数器既可以对系统时钟计数实现定时,也可以对外部信号计数实现计数功能,这些功能都是通过编程设定来实现的。

3.每个定时/计数器有多种工作方式,其中T0有四种工作方式;T1有三种工作方式,T2有三种工作方式。通过编程可设定工作于某种方式。

4.每一个定时/计数器定时计数时间到时产生溢出,使相应的溢出位置位,溢出可通过查询或中断方式来处理。 串行接口

MCS-51单片机具有一个全双工的串行异步通信接口,可以同时发送、接收数据。发送、接收数据可通过查询或中断的方式来处理。 它有四种工作方式:

方式0称为同步移位寄存器方式,一般用于外接移位寄存器芯片扩展I/O接口。 方式1称为8位的异步通信方式,通常用于双机通信。

方式2和方式3称为9位的异步通信方式,通常用于多机通信。 中断系统

MCS-51单片机提供5个(52子系列提供6个)硬件中断源:两个外部中断源INT0(P3.2)和INT1(P3.3),两个定时/计数器T0和T1的溢出中断TF0和TF1,1个串行口发送T1和接收R1中断。 以下为本系统用到的串口中断部分指令:

EA:中断允许总控位。EA=0,屏蔽所有的中断请求;EA=1,开放中断。EA的作用是使中断允许形成两级控制。

ES:串行口中断允许位。ES=1允许串行口中断。 REN为允许接收控制位。REN=1,则允许接收。 TI位发送中断标志位。 RI为接收中断标志位。 (二)数据采集、模数转换模块

这一模块主要有ADC0808转化器和电位器组成成。ADC0808是CMOS单片型逐次逼近式A/D转换器,它由8路模拟开关、地址锁存与译码器、比较器、8位开关树型A/D转换器、逐次逼近寄存器、逻辑控制和定时电路组成。 输入输出端

1. IN0~IN7:8路模拟量输入端。 2. OUT1~OUT8:8位数字量输出端。 传输通道选择端

ADDA、ADDB、ADDC:3位地址输入线,用于选通8路模拟输入中的一路。 使能端

1.ALE:地址锁存允许信号,输入,高电平有效。

2.START: A/D转换启动脉冲输入端,输入一个正脉冲(至少100ns宽)使其启动(脉冲上升沿使0809复位,下降沿启动A/D转换)。

3.EOC: A/D转换结束信号,输出,当A/D转换结束时,此端输出一个高电平(转换期间一直为低电平)。

4.OE:数据输出允许信号,输入,高电平有效。当A/D转换结束时,此端输入一个高电平,才能打开输出三态门,输出数字量。 5.CLK:时钟脉冲输入端。要求时钟频率不高于640KHZ。 6.REF(+)、REF(-):基准电压。 (三)显示模块

显示模块选用1602 型LCD显示模块。1602型LCD显示模块具有体积小,功耗低,显示内容丰富等特点。1602型LCD可以显示2行16个字符,有8位数据总线D0-D7和RS,R/W,EN三个控制端口,工作电压为5V,并且具有字符对比度调节和背光功能。各引脚功能 1.VSS:电源地。

2.VDD:电源正极。 3.VEE:液晶显示偏压信号。 4.RS:数据/命令选择端。 5.R/W:读写选择端。 6.E:使能信号。

7.D0-D7:数据输入/输出口。

三、软件编程

设计思想:ADC0809的使能控制端连接在单片机P3口,操作时由程序控制。当A/D转换结束后由单片机将P1口A/D转换后的数据附给P0口,进而由连接在P0口的LCD显示。 程序如下: #include<reg52.h>

#include<intrins.h>

#define uchar unsigned char #define uint unsigned int sbit adoe=P3^7; //OE接3.7 sbit eoc=P3^3;

//EOC接3.1

sbit adstart=P3^6; //start接3.2 sbit a0=P3^0; sbit a1=P3^1; sbit a2=P3^2;

//A 3.3 //B 3.4 //C 3.5

sbit lcdrs=P3^5; //LCD RS 3.6 sbit lcden=P3^4; //LCD EN 3.7 sbit dula=P2^6; sbit wela=P2^7;

long int temp,b1,b2,b3,b4,b5; uchar tt;

uchar code table[]="0123456789.V"; //显示电压

void delay(uint z) //延时 {

uint x,y; for(x=z;x>0;x--) for(y=100;y>0;y--); }

void write_command(uchar com)//写命令 {

dula=0; wela=0;

lcdrs=0; //输入指令 }

void write_data(uchar date)//写数据 {

lcdrs=1; //输入数据 }

void init()//初始化 {

lcden=0; P0=date; //显示 delay(5);

lcden=1; //读数据 delay(5);

lcden=0; //写指令或数据 P0=com; delay(5);

lcden=1; //读数据 delay(5);

lcden=0; //写指令或者数据

write_command(0x38);//不可变,显示模式设置:16*2显示,5*7点阵,

8位数据接口

}

void start() //开始AD转换 {

adoe=0;

write_command(0x0c);//屏幕开启和光标闪烁 write_command(0x06);//显示开关及光标设置 write_command(0x01);//清屏

adstart=0;

_nop_();

adstart=1;

adstart=0;

}

void xianshi() //AD转化结果显示 { }

void first_mark() {

//0-4路通道的标号

write_data(table[b1]); delay(1);

// 小数点 //最高位

write_data(table[10]); delay(1);

write_data(table[b2]); delay(1);

//第二位

write_data(table[b3]); delay(1);

// 第三位

write_data(table[11]); delay(1);

// 电压V

}

write_command(0x80); write_data('A'); delay(1);

write_command(0x80+0x01); write_data('='); delay(1);

write_command(0x80+0x09); write_data('B'); delay(1);

write_command(0x80+0x0a); write_data('='); delay(1);

write_command(0x80+0x40); write_data('C'); delay(1);

write_co …… 此处隐藏:3518字,全部文档内容请下载后查看。喜欢就下载吧 ……

基于单片机的八路数据采集系统.doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
本文链接:https://www.jiaowen.net/wenku/131583.html(转载请注明文章来源)
Copyright © 2020-2025 教文网 版权所有
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ:78024566 邮箱:78024566@qq.com
苏ICP备19068818号-2
Top
× 游客快捷下载通道(下载后可以自由复制和排版)
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
注:下载文档有可能出现无法下载或内容有问题,请联系客服协助您处理。
× 常见问题(客服时间:周一到周五 9:30-18:00)