欢迎来到三一办公! | 帮助中心 三一办公31ppt.com(应用文档模板下载平台)
三一办公
全部分类
  • 办公文档>
  • PPT模板>
  • 建筑/施工/环境>
  • 毕业设计>
  • 工程图纸>
  • 教育教学>
  • 素材源码>
  • 生活休闲>
  • 临时分类>
  • ImageVerifierCode 换一换
    首页 三一办公 > 资源分类 > DOC文档下载  

    多路数据采集系统毕业论文.doc

    • 资源ID:3941146       资源大小:603.50KB        全文页数:28页
    • 资源格式: DOC        下载积分:8金币
    快捷下载 游客一键下载
    会员登录下载
    三方登录下载: 微信开放平台登录 QQ登录  
    下载资源需要8金币
    邮箱/手机:
    温馨提示:
    用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP免费专享
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    多路数据采集系统毕业论文.doc

    河南大学民生学院 2013 届毕业论文(设计、创作)任务书姓名#学号#专业自动化论文题目 多路数据采集系统一、毕业论文(设计、创作)要求利用两片PCF8591实现八通道A/D转换 按键S0,S1切换当前选中的通道 LCD1602把当前通道号和转换后的电压显示出来 二、毕业论文(设计、创作)进度安排1 2013年3月15日到2013年3月20日,复习有关单片机的相关知识,熟悉单片机最小系统的设计、IO口、定时器等知识。2 2013年3月20日到2013年4月5日,以单片机开发板为平台,利用郭天祥10天征服单片机视频教程为模板,学习在k e I l环境下使用C51进行编程实现某种功能。3 2013年4月5日到2013年4月15日,学习pcf8591芯片的有关知识以及IIC总线的使用,并熟练掌握A/D转换功能;学习lcd1602液晶的有关知识,会使用lcd1602显示字符以及数字。4 2013年4月15日到2013年4月30日,购买材料,焊接电路板,写程序,调试软件及硬件电路,成功后写论文。三、需收集的资料和指导性参考文献1 C程序设计(第三版)谭浩强 著2 单片机原理与应用设计 张毅刚 彭喜元 编著3 新概念51单片机C语言教程:入门、提高、开发、拓展全攻略 郭天祥 著4 89C52 datasheet5 PCF8591 datasheet6 LCD1602 datasheet 指导教师签名 年 月 日河南大学民生学院 2013 届毕业论文(设计、创作)中期检查表姓名#学号#专业自动化论文题目 多路数据采集系统一、毕业论文(设计、创作)进展情况1 学习了89C52单片机基本知识2 在KEIL编译环境下编写了多个程序,如流水灯,走马灯,矩阵键盘,数码管显示等程序。3 学习了IIC总线,并在51开发板实现了PCF8591 A/D转换。二、毕业论文(设计、创作)存在问题及解决方案1 按键中会发生抖动,可以利用延时10ms来消除抖动2 LCD1602在显示过程中显示闪烁,不稳定,可以延长显示刷新来消除。3 进入定时器中断后要重新给定时器赋初值。4 定时器中断程序不要过大,过大会运行出错。5 PCF8591的V ref引脚要接稳定的参考电压。三、指导教师对学生毕业论文(设计、创作)进展方面的评语指导教师签名 年 月 日目 录摘 要11ABSTRACT12第1章 绪 论11.1 课题来源11.2 课题背景11.3 国内外在该方向的研究现状及分析21.3.1 国内在该方向的研究现状21.3.2 国外在该方向的研究现状31.4 该课题研究的主要内容3第2章 数据采集系统的设计52.1 数据采集系统52.2 数据采集的目的52.3 数据采集系统框图52.3.1 主要芯片62.3.2涉及到的软件72.4 基本功能要求7第3章 硬件设计83.1 系统框图83.2 单片机最小系统83.3 PCF8591芯片93.3.1 IIC串行总线93.3.2 PCF8591 AD转换的应用133.4 LCD1602器件143.4 单片机外围电路图15第4章 软件设计164.1 主程序164.1.1 主程序流程图164.1.2 LCD1602与PCF8591程序流程图174.1.3 数据处理程序流程图184.1.4 按键检测程序流程图194.2 上位机程序介绍204.2.1 Visual C+ 6.0204.2.2 MSComm控件9204.2 硬件与软件调试21结 论22参考文献23摘 要目前,数据采集系统广泛应用在科研、教育、工业、水利等众多领域。本系统基于89C52单片机,采用PCF8591串行AD芯片,完成对多路模拟信号的数据采集,并由LCD1602把数据显示出来。本系统带有按键输入,可通过按键实现转换通道的选择。在windows桌面环境下,使用Visual C+可视化软件开发工具,调用MSComm控件,开发一个集存储与显示的上位机程序,以便用计算机对大量数据的处理。关键词 89C52 ;PCF8591;LCD1602 ;Visual C+ ;MSComm控件ABSTRACTAt present, the data acquisition system is widely used in scientific research, education, industry, water conservancy, and many other fields. This system based on 89C52, using serial AD chip PCF8591, complete the multi-channel analog signal data acquisition, and data by the LCD1602 display. With pressed key input, the system can be realized through key conversion channel choice. In Windows desktop environments, the use of Visual c + + visualization software development tools, invoke the MSComm control, develop a set of storage and display PC programs, so that the handling of large amounts of data by computer.Keywords: 89C52; PCF8591; LCD1602; Visual C+; MSComm第1章 绪 论本章主要介绍数据采集系统历史及发展,让我们对数据采集系统有个初步了解。1.1 课题来源自定题目。1.2 课题背景近年来,数据采集及其应用受到了人们越来越广泛的关注,数据采集系统也有了迅速的发展,它可以广泛的应用于各种领域。数据采集系统起始于20世纪50年代,1956年美国首先研究了用在军事上的测试系统,日标是测试中不依靠相关的测试文件,由非成熟人员进行操作,并且测试任务是由测试设备高速自动控制完成的。由于该种数据采集测试系统具有高速性和一定的灵活性,可以满足众多传统方法不能完成的数据采集和测试任务,因而得到了初步的认可。大概在60年代后期,国内外就有成套的数据采集设备和系统多属于专用的系统。120世纪70年代后期,随着微型机的发展,诞生了采集器、仪表同计算机溶为一体的数据采集系统。由于这种数据采集系统的性能优良,超过了传统的自动检测仪表和专用数据采集系统,因而获得了惊人的发展。从70年代起,数据采集系统发展过程中逐渐分为两类,一类是实验室数据采集系统,一类是.工业现场数据采集系统。120世纪80年代随着计算机的普及应用,数据采集系统得到了很大的发展,开始出现了通用的数据采集与自动测试系统。该阶段的数据采集系统主要有两类,一类以仪表仪器和采集器、通用接口总线和计算机组成。这类系统主要应用于实验室,在工业生产现场也有一定的应用。第二类以数据采集卡、标准总线和计算机构成,这一类在工业现场应用较多。20世纪80年代后期,数据采集发生了很大的变化,工业计算机、单片机和大规模集成电路的组合,用软件管理,使系统的成本减低,体积变小,功能成倍增加,数据处理能力大大加强。120世纪90年代至今,在国际上技术先进的国家,数据采集系统己成功的运用到军事、航空电子设备及宇航技术、工业等领域。由于集成电路制造技术的不断提高,出现了高性能、高可靠的单片机数据采集系统(DAS)。数据采集技术已经成为一种专门的技术,在工业领域得到了广泛的应用。该阶段的数据采集系统采用模块式结构,根据不同的应用要求,通过简单的增加和更改模块,井结合系统编程,就可扩展或修改系统,迅速组成一个新的系统。1尽管现在以微机为核心的可编程数据采集与处理采集技术的发展方向得到了迅速的发展,而且组成一个数据采集系统只需要一块数据采集卡,把它插在微机的扩展槽内并辅以应用软件,就能实现数据采集功能,但这井不会对基于单片机为核心的数据采集系统产生影响。相较于数据采集板卡成本和功能的限制,单片机其多功能、高效率、高性能、低电压、低功耗、低价格等优点,而单片机又其有精度较高、转换速度快、能够对多点同时进行采集,因此能够开发出能满足实际应用要求的、电路结构简单的、可靠性高的数据采集系统。这就使得以单片机为核心的数据采集系统在许多领域得到了广泛的应用。1.3 国内外在该方向的研究现状及分析数据采集系统是通过采集传感器输出的模拟信号并转换成数字信号,并进行析、处理、传输、显示、存储和显示。它起始于20世纪中期,在过去的几十年里,随着信息领域各种技术的发展,在数据采集方面的技术也取得了长足的进步,采集数据的信息化是日前社会的发展主流方向。各种领域都用到了数据采集,在石油勘探、科学实验、飞机飞行、地震数据采集、卫星遥感成像、无人机、舰载传感器系统领域已经得到应用。11.3.1 国内在该方向的研究现状早期,对于大部分制造业企业,测量仪器的自动数据采集一直是个令人烦恼的事情,即使仪器已经具有RS232/485等接口,但仍然在使用一边测量,一边手工记录到纸张,最后再输入到PC中处理的方式,不但工作繁重,同时也无法保证数据的准确性,常常管理人员得到的数据已经是滞后了一两天的数据;而对于现场的不良产品信息及相关的产量数据,如何实现高效率、简洁、实时的数据采集更是一大难题。由研究人员研发的生产现场实时数据采集系统解决了这一问题,整个系统采用分布式结构,软、硬件均采用了模块化设计。数据采集部分采用自行开发的带光隔离的RS-485网,通信效率高,安全性好,结构简单。后台系统可根据实际被监控系统规模大小及要求,构成485网、Novell网及Windows NT网等分布式网络。由于软、硬件均为分布式、模块化结构,因而便于系统升级、维护,且根据需要组成不同的系统。.数据处理在Windows NT平台上采用Visual C+语言编程,处理能力强、速度快、界面友好,可实现网络数据共享。2我国的数字地震观测系统主要采用TDE-124C型地震数据采集系统。近年来,又成功研制了动态范围更大、线性度更高,.兼容性更强、低功耗可靠性的TDE-3240型地震数据采集系统。该数据采集对地震计输出的电信号模拟放大后送至A/D数字化,A/D采用同时采样,采样数据经DSP数字滤波处理后,变成数字地震信号。该数据采集系统具备24位A/D转换芯片,采样率有5 0HZ,100HZ,200HZ。1 1.3.2 国外在该方向的研究现状由美国PASCO公司生产的“科学工作室”是将数据采集应用于物理实验的崭新系统,它由3部分组成:(1)传感器:利用先进的传感技术可实时采集技术可实时采集物理实验中各物理量的数据;(2)计算机接口:将来自传感器的数据信号输入计算机,采样速率最高为25万次/S;(3)软件:中文及英文的应用软件。1受需求牵引,新一代机载数据采集系统为满足飞行实验应用也在快速地发展。如爱尔兰ACRA公司2000年研发推出的新一代KAM500机载数据采集系统。到了2006年。本系统采用16位模数转换芯片,总采样率达500K/s,可以利用方式组成高达1000通道的大容量的分布式采集系统。1 1.4 该课题研究的主要内容数据采集技术是信息科学的重要分支之一,它研究信息数据的采集、存储、处理以及控制等问题。它是对传感器信一号的测量与处理,以微型计算机等高技术为基础而形成的一门综合应用技术。数据采集也是从一个或多个信号获取对象信息的过程。随着微型计算机技术的飞速发展和普及,数据采集监测已成为日益重要的检测技术,广泛应用上工农业等需要同时监控温度、湿度和压力等场合。数据采集是工业控制等系统中的重要环节,通常采用一些功能相对独立的单片机系统来实现,作为测控系统不可缺少的部分,数据采集的性能特点直接影响到整个系统。尽管现在以微机为核心的可编程数据采集与处理技术作为数据采集技术的发展方向得到了迅速的发展,并且适于通用微机(IBM PC系列)使用的板卡级数据采集产品也已大量出现,组成一个数据采集系统简单到只需要一块数据采集卡,把它插在微机的扩展槽内,并辅以应用软什,就能实现数据采集功能,但这并不会对基于单片机为核心的数据采集系统产生影响,因为单片机功能强大、抗干扰能力强、可靠性高、灵活性好、开发容易等优点,使得基于单片机为核心的数据采集系统在许多领域得到了广泛的应用。传统的基于单片机的数据采集系统由于没有上位机的支持,不管采用什么样的数据存储器,它的存储容量都是有限的,所以不得不对存储的历史数据进行覆盖刷新,这样不利于用户对数据进行整体分析,因而也不能对生产过程的状况进行准确的把握。本系统采用下位机负责模拟数据的采集,从单片机负责采集八路数据,并应答主机发送的命令,上位机即主机是负责处理接受过来的数字量的处理、存储及显示,主机和从机之间用RS-232进行通信。这样用户可以在上位机上编写各种程序对文件中的数据进行有效查询和分析,有利于工业过程的长期正常运行和检查。由于本人能力有限并未实现上位机功能,只利用现有硬件实现了下位机功能。第2章 数据采集系统的设计数据采集系统简介。2.1 数据采集系统数据采集(DAQ),是指从转感器和其它待测设备等模拟和数字被测一单元中自动采集非电量或者电量信一号,送到上位机中进行分析,处理。数据采集系统是结合基于计算机或者其他专用测试平台的测量软硬件产品来实现灵活的、用户自定义的测量系统。数据采集技术广泛引用在各个领域。通常,必须在数据采集设备采集之前调制传感器信号,包括对其进行增益或衰减和隔离,放大,滤波等.对待某些传感器,还需要提供激励信号.数据采集系统可以将多路模拟信号自动地进行采集并进行数字化测量,再送到计算机中进行处理、传输、显示、存储或打印,从而获得有关被测对象的大量数据。数据采集系统具有广泛的应用前景,如工厂为对生产过程进行自动控制,必须实时测量出反映工艺流程和产品质的各种参量。因此,在工农业、科研、国防、环保及日常生活等各个领域,为了实现过程控制、状态监测、故障诊断、质量检测等任务,大多要应用数据采集系统。70年代初,随着计算机技术及大规模集成电路的发展,特别是微处理器及高速A/D转换器的出现,数据采集系统结构发生了重大变革。原来由小规模集成的数字逻辑电路及硬件程序控制器组成的采集系统被微处理器控制的采集系统所代替。由微处理器去完成程序控制,数据处理及大部分逻辑操作,使系统的灵活性和可靠性大大地提高,系统硬件成本和系统的重建费用大大地降低。2.2 数据采集的目的数据采集的目的是为了测量电压、电流、温度或声音等物理现象。给予PC的数据采集,通过模块化硬件、应用软件和计算机的结合,进行测量。尽管数据采集系统根据不同的应用需求有不同的定义,但各个系统采集、分析和显示信息的目的却都相同。数据采集系统结合了信号、传感器、激励器、信号调理、数据采集设备和应用软件。数据采集技术是单片机应用技术的主要分支。外部现实对象(广义的外部设备)通过接口和计算机交换信息,在现实对象中,.信息表现为不同的形式并有明确的物理意义,通过对数据采集系统的设计来掌握单片机对数据的采集及其处理的过程,并将学习到的理论知识联系到实际应用当中。2.3 数据采集系统框图数据采集系统一般由信号调理电路,多路切换电路,采样保持电路,A/D转换芯片,单片机或ARM等组成。本系统只对0V-5V的电压信号进行采集并转换,所以只包含A/D转换芯片,单片机/ARM等。数据采集系统框图如图2-1: 图2-1 多路采集系统系统框图2.3.1 主要芯片(1)89C52是INTEL公司MCS-51系列单片机中基本的产品,它采用ATMEL公司可靠的CMOS工艺技术制造的高性能8位单片机,属于标准的MCS-51的HCMOS产品。它结合了CMOS的高速和高密度技术及CMOS的低功耗特征,它基于标准的MCS-51单片机体系结构和指令系统,属于89C51增强型单片机版本,集成了时钟输出和向上或向下计数器等更多的功能,适合于类似马达控制等应用场合。89C52内置8位中央处理单元、256字节内部数据存储器RAM、8k片内程序存储器(ROM)32个双向输入/输出(I/O)口、3个16位定时/计数器和5个两级中断结构,一个全双工串行通信口,片内时钟振荡电路。此外,89C52还可工作于低功耗模式,可通过两种软件选择空闲和掉电模式。在空闲模式下冻结CPU而RAM定时器、串行口和中断系统维持其功能。掉电模式下,保存RAM数据,时钟振荡停止,同时停止芯片内其它功能。89C52有PDIP(40pin)和PLCC(44pin)两种封装形式。2(3)PCF8591是一个单片集成、单独供电、低功耗、8-bit CMOS数据获取器件。PCF8591具有4个模拟输入、1个模拟输出和1个串行I2C总线接口。PCF8591的3个地址引脚A0, A1和A2可用于硬件地址编程,允许在同一个I2C总线上接入8个PCF8591器件,而无需额外的硬件。在PCF8591器件上输入输出的地址、控制和数据信号都是通过双线双向I2C总线以串行的方式进行传输。3 (4)LCD1602 工业字符型液晶,能够同时显示16x02即32个字符。(16列2行)1602液晶也叫1602字符型液晶,它是一种专门用来显示字母、数字、符号等的点阵型液晶模块。它由若干个5X7或者5X11等点阵字符位组成,每个点阵字符位都可以显示一个字符,每位之间有一个点距的间隔,每行之间也有间隔,起到了字符间距和行间距的作用,正因为如此所以它不能很好地显示图形。42.3.2 涉及到的软件(1)KEIL C51是美国Keil Software公司出品的51系列兼容单片机C语言软件开发系统,与汇编相比,C语言在功能上、结构性、可读性、可维护性上有明显的优势,因而易学易用。KEIL提供了包括C编译器、宏汇编、连接器、库管理和一个功能强大的仿真调试器等在内的完整开发方案,通过一个集成开发环境( uVision )将这些部分组合在一起。运行K e I l软件需要WIN98、NT、WIN2000、WINXP等操作系统。5(2)Visual C+ 6.0,简称VC或者VC6.0,是微软推出的一款C+编译器,将“高级语言”翻译为“机器语言(低级语言)”的程序。Visual C+是一个功能强大的可视化软件开发工具。自1993年Microsoft公司推出Visual C+1.0后,随着其新版本的不断问世,Visual C+已成为专业程序员进行软件开发的首选工具。虽然微软公司推出了 Visual C+.NET(Visual C+7.0),但它的应用有很大的局限性,只适用于Windows 2000、Windows XP和Windows NT4.0。所以实际中,更多的是以Visual C+6.0为平台。62.4 基本功能要求(1)利用两片PCF8591实现八通道A/D转换按键,S0、S1切换当前选中的通道,LCD1602把当前通道号和转换后的电压显示出来。(2)在windows桌面环境下,使用Visual C+可视化软件开发工具,调用MSCOMM控件,开发一个集存储与显示的上位机程序,以便用计算机对大量数据的处理。(本次毕业设计未实现此功能)第3章 硬件设计硬件系统由89C52单片机最小系统、LCD1602外围电路、PCF8591外围电路、独立按键电路等组成。3.1 系统框图单片机系统框图如图3-1所示。图3-1 单片机系统框图3.2 单片机最小系统单片机最小系统由复位电路、晶振电路、电源(VCC和GND)。复位电路包括上电复位和按键复位,由10uf电解电容、按键、1.2K电阻组成;晶振电路由12MHZ晶振、2个30pf陶瓷电容组成;VCC=5V,GND=0V。7单片机最小系统如图3-1所示,图3-2 单片机最小系统3.3 PCF8591芯片PCF8591是一个单片集成、单独供电、低功耗、8-bit CMOS数据获取器件。PCF8591具有4个模拟输入、1个模拟输出和1个串行I2C总线接口。PCF8591的3个地址引脚A0、A1和A2可用于硬件地址编程,允许在同一个IIC总线上接入8个PCF8591器件,而无需额外的硬件。在PCF8591器件上输入输出的地址、控制和数据信号都是通过双线双向I2C总线以串行的方式进行传输。3.3.1 IIC串行总线I2C总线是PHLIPS公司推出的一种串行总线,是具备多主机系统所需的包括总线裁决和高低速器件同步功能的高性能串行总线。I2C总线只有两根双向信号线。一根是数据线SDA,另一根是时钟线SCL。如图3-3所示IIC总线工作原理图。8图3-3 IIC总线工作原理图I2C总线通过上拉电阻接VCC。当总线空闲时,两根线均为高电平。连到总线上的任一器件输出的低电平,都将使总线的信号变低,即各器件的SDA及SCL都是线“与”关系。如图3-4所示,R p常取10K。8图3-4 IIC总线硬件连接图每个接到I2C总线上的器件都有唯一的地址。主机与其它器件间的数据传送可以是由主机发送数据到其它器件,这时主机即为发送器。由总线上接收数据的器件则为接收器。8起始和终止信号都是由主机发出的,在起始信号产生后,总线就处于被占用的状态;在终止信号产生后,总线就处于空闲状态。8连接到I2C总线上的器件,若具有I2C总线的硬件接口,则很容易检测到起始和终止信号。对于不具备I2C总线硬件接口的有些单片机来说,为了检测起始和终止信号,必须保证在每个时钟周期内对数据线SDA采样两次。8 接收器件收到一个完整的数据字节后,有可能需要完成一些其它工作,如处理内部中断服务等,可能无法立刻接收下一个字节,这时接收器件可以将SCL线拉成低电平,从而使主机处于等待状态。直到接收器件准备好接收下一个字节时,再释放SCL线使之为高电平,从而使数据传送可以继续进行。8想对IIC总线进行操作就要熟悉IIC常涉及的几个信号,如起始信号 S,终止信号 P,应答信号和非应答信号。如图3-5所示。8 图3-5 信号工作图以下是IIC总线涉及的信号在C语言上的实现。8(1)起始信号 Svoid iic_start() /i2c起始信号 sda=1; _nop_(); scl=1; somenop; sda=0; somenop; scl=0;(2)终止信号 Pvoid iic_stop() sda=0; _nop_(); scl=1; somenop; sda=1;(3)应答信号void ack() unsigned char i=0; scl=1;somenop;while(sda=1)&&(i<200) i+;scl=0;(4)发送一个字void iic_sendbyte(unsigned char byt) unsigned char i; for(i=0;i<8;i+) if(byt&0x80) sda=1; else sda=0; somenop; scl=1; byt<<=1; somenop; scl=0; ack();(5)接收一个字unsigned char iic_recbyte() uchar i,da; for(i=0;i<8;i+) scl=1; somenop; da<<=1; if(sda) da|=0x01; scl=0; somenop; return da;(6)以上程序中的somenop由以下两条程序实现:#include <intrins.h>#define somenop_nop_();_nop_();_nop_();_nop_();_nop_();3.3.2 PCF8591 AD转换的应用FCF8591引脚图如图3-6所示。图3-6 PCF8591引脚图PCF8591芯片的datasheet知AIN0-AIN3为四通道模拟输入端,A0-A2为编程端口,用于多片PCF8591的情形。当IIC总线系统中只有一片PCF8591时,可以把A0-A2都接GND。本系统使用了两个PCF8591,其中的一片A0-A2都接GND。另一片A2、A1接GND,A0接VCC。VDD接VCC,VREF接VCC,故模拟通道测量范围是0V到5V。AGND和EXT都接GND,使用的是内部时钟。SCL和SDA接单片机的P20、P21。进行AD转换的操作顺序。(1)对于芯片1是: IIC起始信号 先写0X90;/告诉芯片要进行写操作 再写控制字;/常用的由0X00,0X01,0X02,0X03 /0X00选择通道0,0X01选择通道 /1,0X02选择通道2,0X03选择 /通道3; IIC停止信号 延时5us IIC起始信号 写0X91 读转换结果 (2)对于芯片2是: IIC起始信号 先写0X92;/告诉芯片要进行写操作 再写控制字;/常用的由0X00,0X01,0X02,0X03 /0X00选择通道0,0X01选择通道 /1,0X02选择通道2,0X03选择 /通道3; IIC停止信号 延时5us IIC起始信号 写0X93 读转换结果3.4 LCD1602器件工业字符型液晶,能够同时显示16x02即32个字符。(16列2列)1602液晶也叫1602字符型液晶,它是一种专门用来显示字母、数字、符号等的点阵型液晶模块。它由若干个5X7或者5X11等点阵字符位组成,每个点阵字符位都可以显示一个字符,每位之间有一个点距的间隔,每行之间也有间隔,起到了字符间距和行间距的作用,正因为如此所以它不能很好地显示图形(用自定义CGRAM,显示效果也不好)。(1)LCD1602的基本操作时序1)读状态:输入:RS=L,RW=H,E=H, 输出:D0D7=状态字2)写指令:输入:RS=L,RW=L,D0D7=指令码,E=高脉冲 输出:无3)读数据:输入:RS=H,RW=H,E=H, 输出:D0D7=数据4)写数据:输入:RS=H,RW=L, D0D7=指令码,E=高脉冲 输出:无5)状态字最高位为1,表示LCD1602忙;状态字最高位为0,表示LCD1602空闲6)LCD1602的显示地址 第一行为00H 01H 27H 第二行为40H 41H67H(2)LCD1602初始化过程延时15ms写指令38H(不检测忙信号)延时5ms写指令38H(不检测忙信号)延时5ms写指令38H(不检测忙信号)(以后每次写指令、读/写数据操作之前均需检测忙信号)写指令38H:显示模式设置写指令01H:显示清屏写指令06H:显示光标移动设置写指令OCH:显示开及光标设置写显示地址 第一行00H27H 第二行40H67H写要显示的字符或数字(数字必须是ASCII码)(3)LCD1602的RS、RW、E引脚分别接单片机的P12、 P13、 P14,D0D7接单片机的P0口。3.4 单片机外围电路图如图3-7所示。图3-7 单片机外围电路(除去最小系统) 第4章 软件设计软件包括主程序和定时器0中断程序,主程序由延时程序、LCD相关程序、键盘检测程序、IIC程序、PCF8591程序等组成。4.1 主程序主程序由LCD相关程序、键盘检测程序、IIC程序、PCF8591、延时程序、数据处理程序等组成。4.1.1 主程序流程图如图4-1所示。图4-1 主程序流程图4.1.2 LCD1602与PCF8591程序流程图如图4-2所示。图4-2 LCD1602与PCF8591程序流程图4.1.3 数据处理程序流程图如图4-3所示。图4-3 数据处理程序流程图4.1.4 按键检测程序流程图如图4-4所示。图4-4 按键检测程序流程图LCD1602显示程序、AD转换程序、数据处理程序写在定时器T0中断函数中,T0定时200us。主程序中只有键盘检测程序。4.2 上位机程序介绍使用visual C+ 6.0可视化软件开发工具,调用MSCOMM控件,开发一个集存储与显示的上位机程序,用于大量数据的分析与处理。本设计并未实现上位机功能,只对上位机方面简单介绍了一下,主要是下位机功能的实现。4.2.1 Visual C+ 6.0Visual C+6.0由Microsoft开发, 它不仅是一个C+ 编译器,而且是一个基于Windows操作系统的可视化集成开发环境(integrated development environment,IDE)。Visual C+6.0由许多组件组成,包括编辑器、调试器以及程序向导AppWizard、类向导Class Wizard等开发工具。 这些组件通过一个名为Developer Studio的组件集成为和谐的开发环境。Microsoft的主力软件产品。Visual C+是一个功能强大的可视化软件开发工具。自1993年Microsoft公司推出Visual C+1.0后,随着其新版本的不断问世,Visual C+已成为专业程序员进行软件开发的首选工具。虽然微软公司推出了Visual C+.NET(Visual C+7.0),但它的应用的很大的局限性,只适用于Windows 2000,Windows XP和Windows NT4.0。所以实际中,更多的是以Visual C+6.0为平台。54.2.2 MSComm控件9 MSComm 控件通过串行端口传输和接收数据,为应用程序提供串行通讯功能。MSComm控件在串口编程时非常方便,程序员不必去花时间去了解较为复杂的API函数,而且在VC、VB、Delphi等语言中均可使用。 Microsoft Communications Control(以下简称MSComm)是Microsoft公司提供的简化Windows下串行通信编程的ActiveX控件,它为应用程序提供了通过串行接口收发数据的简便方法。具体的来说,它提供了两种处理通信问题的方法:一是事件驱动(Eventdriven)方法,一是查询法。MSComm控件提供下列两种处理通讯的方式:事件驱动方式和查询方式。事件驱动方式事件驱动通讯是处理串行端口交互作用的一种非常有效的方法。在许多情况下,在事件发生时需要得到通知,例如,在串口接收缓冲区中有字符,或者 Carrier Detect (CD) 或 Request To Send (RTS) 线上一个字符到达或一个变化发生时。在这些情况下,可以利用 MSComm 控件的 OnComm 事件捕获并处理这些通讯事件。OnComm 事件还可以检查和处理通讯错误。所有通讯事件和通讯错误的列表,参阅 CommEvent 属性。在编程过程中,就可以在OnComm事件处理函数中加入自己的处理代码。这种方法的优点是程序响应及时,可靠性高。每个MSComm控件对应着一个串行端口。如果应用程序需要访问多个串行端口,必须使用多个 MSComm 控件。查询方式查询方式实质上还是事件驱动,但在有些情况下,这种方式显得更为便捷。在程序的每个关键功能之后,可以通过检查 CommEvent 属性的值来查询事件和错误。如果应用程序较小,并且是自保持的,这种方法可能是更可取的。例如,如果写一个简单的电话拨号程序,则没有必要对每接收一个字符都产生事件,因为唯一等待接收的字符是调制解调器的“确定”响应。4.2 硬件与软件调试系统调试以程序为主,硬件调试先检测电路的焊接是否正确,然后用外用表检测或通电检测其是否有短路或断路。软件调试包括调试程序和对硬件准确性的调试。利用杜邦线把0V到5V的模拟电压信号接到八路模拟输入通道上,通过按键可以改变当检测的通道。液晶实时显示通道号和模拟电压值。 结 论我不会忘记这难忘的几个月的时间里,亲手实现了自己想做的项目。以前总是在51单片机开发板上写程序,然后看看效果,从没有自己设计过硬件电路,哪怕单片机最小系统也没硬件实现过。通过这次毕业设计,我学到了太多的东西,小到电焊铁的使用,大到使用KEILC51编写

    注意事项

    本文(多路数据采集系统毕业论文.doc)为本站会员(文库蛋蛋多)主动上传,三一办公仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知三一办公(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    备案号:宁ICP备20000045号-2

    经营许可证:宁B2-20210002

    宁公网安备 64010402000987号

    三一办公
    收起
    展开