基于c51单片机的数据采集系统_毕业论文(编辑修改稿)内容摘要:

点,使得基于单片机为核心的数据采集系统在许多领域得到了广泛的应用.传统的基于单片机的数据采集系统由于没有上位机的支持,不管采用什么样的数据存储器,它的存储容量都是有限的,所以不得不对存储的历史数据进行覆盖刷新,这样不利于用户对数据进行整体分析,因而也不能对生产过程的状况进行准确的把握。 本系统采用下位机负责模拟数据的采集,从单片机负责采集八路数据,并应答主机发送的命令,上位机即主机是负责处理接受过来的数字量的处理及显示,主机和从机之间用PL2303或RS232进行通信。 这样用户可以在上位机上编写各种程序对文件中的数据进行有效查询和分析,有利于工业过程的长期正常运行和检查。 该系统采用的是STC89C52单片机,此芯片功能比较强大,能够满足设计要求。 采用的方法实际PCF8591是8路8位AD,最大数位255,它外部有一个基准电压,调节所测电压范围,我们所测外部模拟电压范围为05V,0V对应为0,5V就对应255,外部所测电压经模数转换AD变化为数字量0255,数码管也就显示此值十进制转化值((AD/255)*5)。 然后通过PL2303或RS232转换送到PC机上显示,显示界面为我们送的串口调试界面。 实现步骤用Protel99se作图软件画出电路的PCB图和SCH图。 用Keil uvision3软件编写,通过串口调试助手将编写程序下载的主芯片中。 用LED显示所测电压值的数字量。 用USB接口与电脑相连,实现PC机与下位机相连。 从而实现PC机与单片机的同 步显示。 预期成果 分析阶段:单片机数据采集系统的需求分析。 根据基于C51单片机采集系统要完成的数据采集工作,明确本系统要做什么,撰写需求说明书。 设计阶段:分为概要设计和详细设计,解决系统怎样做的问题。 包括功能设计和电路布线设计;设计本系统的各个功能模块:按键、LED显示、A/D模数转换等功能,并设计各模块间的接口,完成数据传输及采集工作。 实现阶段:采用C语言及汇编语言编码,采用KeiluVision3软件完成,并用Protel 99 SE软件进行电路图的绘制,用数据线串行来实现更为完整的系统功能。 测试阶段:基于C51单片机采集系统进行上位机与下位机的数据采集,测试本系统是否能达到预期的设想,是否能完成数据采集工作,针对发现的问题或新的要求及时完善本系统。 完成阶段:撰写《基于C51单片机采集系统的设计报告》及毕业论文。 第二章 开发环境及开发工具 在本设计中用到了Protel99se对单片机板子原理图元件库元件图、单片机板子原理图、单片机板子PCB图元件库元件图、单片机板子PCB图进行了画图;用到了KeilUvision3编写了电压数据采集系统的代码,进行了编译并产生了一个HEX文件;用到了Microsoft Visual Studio 2005软件编写了一个PC机电压数值显示界面; 选好COM口后就会显示电压数据的十六进制显示。 Protel99se介绍Protel99SE是应用于Windows9X/2000/NT操作系统下的EDA设计软件,采用设计库管理模式,可以进行联网设计,具有很强的数据交换能力和开放性及3D模拟功能,是一个32位的设计软件,可以完成电路原理图设计,印制电路板设计和可编程逻辑器件设计等工作,可以设计32个信号层,16个电源地层和16个机加工层。 按照系统功能来划分,Protel99se主要包含以下俩大部分和6个功能模块。 电路工程设计部分(1)电路原理设计部分(Advanced Schematic 99):电路原理图设计部分包括电路图编辑器(简称SCH编辑器)、电路图零件库编辑器(简称Schlib编辑器)和各种文本编辑器。 本系统的主要功能是:绘制、修改和编辑电路原理图;更新和修改电路图零件库;查看和编辑有关电路图和零件库的各种报表。 (2)印刷电路板设计系统(Advanced PCB 99):印刷电路板设计系统包括印刷电路板编辑器(简称PCB编辑器)、零件封装编辑器(简称PCBLib编辑器)和电路板组件管理器。 本系统的主要功能是:绘制、修改和编辑电路板;更新和修改零件封装;管理电路板组件。 (3)自动布线系统(Advanced Route 99):本系统包含一个基于形状(Shapebased)的无栅格自动布线器,用于印刷电路板的自动布线,以实现PCB设计的自动化。 电路仿真与PLD部分(1)电路模拟仿真系统(Advanced SIM 99):电路模拟仿真系统包含一个数字/模拟信号仿真器,可提供连续的数字信号和模拟信号,以便对电路原理图进行信号模拟仿真,从而验证其正确性和可行性。 (2)可编程逻辑设计系统(Advanced PLD 99):可编程逻辑设计系统包含一个有语法功能的文本编辑器和一个波形编辑器(Waveform)。 本系统的主要功能是;对逻辑电路进行分析、综合;观察信号的波形。 利用PLD系统可以最大限度的精简逻辑部件,使数字电路设计达到最简化。 (3)高级信号完整性分析系统(Advanced Integrity 99):信号完整性分析系统提供了一个精确的信号完整性模拟器,可用来分析PCB设计、检查电路设计参数、实验超调量、阻抗和信号谐波要求等。 Protel99SE的功能特性开放式集成化的设计管理体系 超强功能的、修改与编辑功能 强大的设计自动化功能 Microsoft Visual Studio 2005介绍 Microsoft Visual Studio。 它同时也能开发跨平台的应用程序,如开发使用微软操作系统的手机的程序等。 总体来说是一个非常庞大的软件,甚至包含代码测试功能。 这个版本的Visual Studio 包含有众多版本,分别面向不同的开发角色。 Microsoft Visual Studio 2005 开发系统是一个完整的开发工具系列,旨在为Microsoft Windows 操作系统、Web和移动设备快速构建和部署各种应用程序。 Microsoft Visual Studio 2005 产品能为各类开发人员提供更广阔的开发空间和更先进的设计体验。 其特点有: 支持 Visual Basic、C、C++ 和 J 语言。 开发和部署基于客户端服务器结构的 Windows 应用程序、Web 应用程序、SmartPhone 和 Pocket PC 应用程序。 几乎适用于任何类型应用程序的“拖放式”用户界面设计器。 包含一个用于测试 Web 应用程序的内置 Web 服务器,无需 IIS。 支持母板页,用于跨 Web 应用程序维护一致的外观。 用于简单、直观地进行调试的“编辑并继续”功能 KeilUvision3介绍KeilSoftware公司推出的uVision3是一款可用于多种8051MCU的集成开发环境(IDE),该IDE同时也是PK51及其它开发套件的一个重要组件。 除增加了源代码、功能导航器、模板编辑以及改进的搜索功能外,uVision3还提供了一个配置向导功能,加速了启动代码和配置文件的生成。 此外其内置的仿真器可模拟目标MCU,包括指令集、片上外围设备及外部信号等。 uVision3提供逻辑分析器,可监控基于MCUI/O引脚和外设状态变化下的程序变量。 Keil提供了包括C编译器、宏汇编、连接器、库管理和一个功能强大的仿真调试器等在内的完整开发方案,通过一个集成开发环境(UVISION)将这些组合在一起。 Keil有以下几个特点: 全功能的源代码编辑器; 器件库用来配置开发工具设置; 项目管理器用来创建和维护用户的项目; 集成的MAKE工具可以汇编、编译和连接用户嵌入式应用;1 所有开发工具的设置都是对话框形式的;1 真正的源代码级的对CPU和外围器件的调试器;1 高级GDI(AGDI)接口用来在目标硬件上进行软件调试以及和 Monitor51 进行通信 其它 单片机下载驱动软件:将Keil软件编程代码通过USB接口下载到主芯片STC89C52中,从而实现数据采集系统的电压数据采集工作。 :,能设置校验、数据位和停止位,能以ASCII码或十六进制接收或发送任何数据或字符(包括中文),可以任意设定自动发送周期,并能将接收数据保存成文本文件,能发送任意大小的文本文件。 硬件连接方面,传统台式PC机支持标准RS232接口,当下带有串口的PC很少见,所以需要usb/232转换接口,并且安装相应驱动程序。 第三章 数据采集 数据采集系统数据采集,又称数据获取,是利用一种装置,从系统外部采集数据并输入到系统内部的一个接口。 数据采集技术广泛引用在各个领域。 70年代初,随着计算机技术及大规模集成电路的发展,特别是微处理器及高速A/D转换器的出现,数据采集系统结构发生了重大变革。 原来由小规模集成的数字逻辑电路及硬件程序控制器组成的采集系统被微处理器控制的采集系统所代替。 由微处理器去完成程序控制,数据处理及大部分逻辑操作,使系统的灵活性和可靠性大大地提高,系统硬件成本和系统的重建费用大大地降低。 在该系统中需要将模拟量转换为数据量,而 A/D是将模拟量转换为数字量的器件,他需要考虑的指标有:分辨率、转换时间、转换误差等等。 而单片机是该系统的基本的微处理系统,它完成数据读取、处理及逻辑控制,数据传输等一系列的任务。 在该系统中采用的是PCF8591系列的单片机。 双机通信有两种方式:RS232标准接口串行通信和PL2303 USB—UART通信,由芯片RS232实现双机的通信。 而数据的显示则采用的是LED数码管,该器件比较简单,在生活中接触也较多。 数据采集系统一般由信号调理电路,多路切换电路,采样保持电路,A/D,单片机等组成。 :A/D转换器单片机单片机LED显示器滑动变阻器调节按键RS232或PL2303采集信号 系统框图 方案论证 A/D模数转换的选择A/D转换器的种类很多,就位数来说,可以分为8位、10位、12位和16位等。 位数越高其分辨率就越高,价格也就越贵。 A/D转换器型号很多,而其转换时间和转换误差也各不相同。 (1)逐渐逼近式A/D转换器:它是一种速度快、精度较高、成本较低的直接式转换器,其转换时间在几微秒到几百微秒之间。 (2)双积分A/D转换器:它是一种间接式的A/D转换器,优点是抗干扰能力强,精度比较高,缺点是数度很慢,适用于对转换数度要求不高的系统。 (3)并行式A/D转换器:它又被称为flash(快速)型,它的转换数度很高,但她采用了很多个比较器,而n位的转换就需要2n1个比较器,因此电路规模也极大,价格也很贵,只适用于视频A/D转换器等数度特别高的领域。 鉴于上面三种方案,在价格、转换速度及应用程度等多种标准考量下,在本设计选用的是逐渐逼近式A/D转换器——PCF8591单片机是一种面向大规模的集成电路芯片,是微型计算机中的一个重要的分支。 此系统是由CPU、随即存取数据存储器、只读程序存储器、输入输出电路(I/O口),还有可能包括定时/计数器、串行通信口、USB接口、显示驱动电路(LCD和LED驱动电路)、脉宽调制电路、模拟多路转换器及A/D转换器等电路集成到一个单块芯片上,构成了一个最小但完善的计算机任务。 单片机要使用特定的组译和编译软件编译程序,再用Keiluvision3把程序下载到单片机内。 而本设计选用的是STC89C52. 串行口的选择串行口我选用了标准RS232C接口,它是电平与TTL电平转换驱动电路。 常用的芯片是MAX232,MAX232的优点是:(1)一片芯片可以完成发送转换和接收转换的双重功能。 (2)单一电源+5V供电(3)它的电路设计与连接比较简单而且功能齐全。 我们还采用了USBUART转换电路进行通行,USB接口既可以为单片机提供电源也可以实现单片机与PC机的的连接从而实现电压值的接受与转换。 LED显示部分LED数码显示管是一种由LED发光二极管组合显示字符的显示器件。 它使用了8个LED显示管,其中7个用于显示字符,1个用来显示小数点,故通常称之为八段发光二极管数码显示器。 对LED数码显示器的控制可以采用按时间向它提供具有一定驱动能力的位选和段选信号。 LED数码显示有动态扫描显示法和静态显示。 在单片机中,为了节省硬件资源,多采用动态扫描显示法。 按键 单片机中的复位方式有三种:手动按钮复位、上电复位、积分型上电复位。 我们采用的是手动复位,把单片机内部电路设置成为一个确定的状态,所有的寄存器初始化。 通过复位可以瞬间让单片机处于初始状态,转动滑动变阻器后按复位键,电压值会相应的变为正确的电压值。 通信方式 计算机与计算机或计算机与终端之间的数据传送可以采用串行通讯和并行通讯二种方式。 由于串行通讯方式具有使用线路少、成本低,特别是在远程传输时,避免了多条线路特性的不一致而被广泛采用。 在串行通讯时,要求通讯双方都采用一个标准接口,使不同的设备可以方便地连接起来进行通讯。 RS232C接口(又称 EIA RS232C)是目前最常用的一种串行通讯接口。 常用的串行通信方式有:UART异步串行通信、I2C总线串行同步通信、SPI串行总线同步通信。 本实验中我们采用的是I2C通信。 1) UART是单片机与PC之间的最简单的通信方式之一,也是单片机之间常用通信。 2) I2C总线是由数据线SDA和时钟SCL构成的串行总线,可发送和接收数据。 I2C总线在传送数据过程中共有三种特殊类型信号, 它们分别是:开始信号、结束信号和应答信号。 SCL线为高电平期间,SDA线由高电平向低电平的变化表示起始信号;SCL线为高电平期间,SDA线由低电平向高电平的变化表示终止信号。 SCL为高电平期间,数据线上的数据必须保持稳定,只有SCL信号为低电平期间,SDA状态才允许变化。 如图所示: 3)该设计采用的是I2C通信的方式。
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。 用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。