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

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

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

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

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

    多路数据采集系统设计摘要:本文介绍了基于单片机的数据采集的硬件设计和软件设计,数据采集系统是模拟域与数字域之间必不可少的纽带,它的存在具有着非常重要的作用。本文介绍的重点是数据采集系统,而该系统硬件部分的重心在于单片机。数据采集与通信控制采用了模块化的设计,数据采集与通信控制采用了单片机AT89S52来实现,硬件部分是以单片机为核心,还包括A/D模数转换模块,显示模块,和串行接口部分。关键词:数据采集; 89C51单片机; DS1302; 烟雾传感器; Abstract:This article describes the microcontroller-based data acquisition hardware and software design, data acquisition system is the analog domain and the essential linkbetween the digital domain, its presence has a very important role. This articlefocuses on data acquisition systems, and hardware components of the system's center of gravity lies in the microcontroller. Data acquisition and communication control with a modular design, data collection and communications control using theMCU AT89S52 to achieve, based on the hardware part of the microcontroller core, but also includes an A / D conversion module, display module, part and serialinterfaces . Key words:Data acquisition; 89C51 microcontroller; DS1302; Smoke sensor ;目 录1、绪论41.1 研究背景及其目的意义41.2 国内外研究现状51.3 该课题研究的主要内容内容62 数据采集62.1数据采集系统62.2系统总体方案设计2.2.1主体部分2.2.2A/D模数转换的选择72.2.3单片机的选择82.2.4 显示部分82.2.5热释电传感器2.2.6烟雾传感器3 硬件部分3.1主机部分3.1.1 单片机9 3.1.2 液晶显示的应用原理103.1.3 单片机之间的通信143.1.4热释电传感器3.1.5烟雾传感器4、 软件部分20 4.1 简介KeilUvision220 4.2 主机程序设计254.2.1主程序4.2.2时钟芯片程序4.2.3液晶显示器程序5 调试结果1、绪论1.1 研究背景及其目的意义近年来,数据采集及其应用受到了人们越来越广泛的关注,数据采集系统也有了迅速的发展,它可以广泛的应用于各种领域。数据采集系统起始于20世纪50年代,1956年美国首先研究了用在军事上的测试系统,目标是测试中不依靠相关的测试文件,由非成熟人员进行操作,并且测试任务是由测试设备高速自动控制完成的。由于该种数据采集测试系统具有高速性和一定的灵活性,可以满足众多传统方法不能完成的数据采集和测试任务,因而得到了初步的认可。大概在60年代后期,国内外就有成套的数据采集设备和系统多属于专用的系统。1120世纪70年代后期,随着微型机的发展,诞生了采集器、仪表同计算机溶为一体的数据采集系统。由于这种数据采集系统的性能优良,超过了传统的自动检测仪表和专用数据采集系统,因而获得了惊人的发展。从70年代起,数据采集系统发展过程中逐渐分为两类,一类是实验室数据采集系统,一类是工业现场数据采集系统。1120世纪80年代随着计算机的普及应用,数据采集系统得到了很大的发展,开始出现了通用的数据采集与自动测试系统。该阶段的数据采集系统主要有两类,一类以仪表仪器和采集器、通用接口总线和计算机组成。这类系统主要应用于实验室,在工业生产现场也有一定的应用。第二类以数据采集卡、标准总线和计算机构成,这一类在工业现场应用较多。20世纪80年代后期,数据采集发生了很大的变化,工业计算机、单片机和大规模集成电路的组合,用软件管理,是系统的成本减低,体积变小,功能成倍增加,数据处理能力大大加强。1120世纪90年代至今,在国际上技术先进的国家,数据采集系统已成功的运用到军事、航空电子设备及宇航技术、工业等领域。由于集成电路制造技术的不断提高,出现了高性能、高可靠的单片机数据采集系统(DAS)。数据采集技术已经成为一种专门的技术,在工业领域得到了广泛的应用。该阶段的数据采集系统采用模块式结构,根据不同的应用要求,通过简单的增加和更改模块,并结合系统编程,就可扩展或修改系统,迅速组成一个新的系统。11尽管现在以微机为核心的可编程数据采集与处理采集技术的发展方向得到了迅速的发展,而且组成一个数据采集系统只需要一块数据采集卡,把它插在微机的扩展槽内并辅以应用软件,就能实现数据采集功能,但这并不会对基于单片机为核心的数据采集系统产生影响。相较于数据采集板卡成本和功能的限制,单片机具多功能、高效率、高性能、低电压、低功耗、低价格等优点,而双单片机又具有精度较高、转换速度快、能够对多点同时进行采集,因此能够开发出能满足实际应用要求的、电路结构简单的、可靠性高的数据采集系统。这就使得以单片机为核心的数据采集系统在许多领域得到了广泛的应用。1.2 国内外研究现状数据采集系统是通过采集传感器输出的模拟信号并转换成数字信号,并进行分析、处理、传输、显示、存储和显示。它起始于20世纪中期,在过去的几十年里,随着信息领域各种技术的发展,在数据采集方面的技术也取得了长足的进步,采集数据的信息化是目前社会的发展主流方向。各种领域都用到了数据采集,在石油勘探、科学实验、飞机飞行、地震数据采集领域已经得到应用。我国的数字地震观测系统主要采用TDE-124C型TDE-224C型地震数据采集系统。近年来,又成功研制了动态范围更大、线性度更高、兼容性更强、低功耗可靠性的TDE-324C型地震数据采集系统。该数据采集对拾震计输出的电信号模拟放大后送至A/D数字化,A/D采用同时采样,采样数据经DSP数字滤波处理后,变成数字地震信号。该数据采集系统具备24位A/D转化位数,采样率有50HZ、100HZ、200HZ。11由美国PASCO公司生产的“科学工作室”是将数据采集应用于物理实验的崭新系统,它由3部分组成:(1)传感器:利用先进的传感技术可实时采集技术可实时采集物理实验中各物理量的数据;(2)计算机接口:将来自传感器的数据信号输入计算机,采样速率最高为25万次/S;(3)软件:中文及英文的应用软件。11受需求牵引,新一代机载数据采集系统为满足飞行实验应用也在快速地发展。如爱尔兰ACRA公司2000年研发推出的新一代KAM500机载数据采集系统到了2006年。本系统采用16位(A/D)模拟数字变换,总采样率达500K/S,同步时间为+/-250ns,可以利用方式组成高达1000通道的大容量的分布式采集系统。1.3 该课题研究的主要内容内容数据采集技术是信息科学的重要分支之一, 它研究信息数据的采集、存储、处理以及控制等问题。它是对传感器信号的测量与处理, 以微型计算机等高技术为基础而形成的一门综合应用技术。数据采集也是从一个或多个信号获取对象信息的过程。随着微型计算机技术的飞速发展和普及,数据采集监测已成为日益重要的检测技术,广泛应用于工农业等需要同时监控温度、湿度和压力等场合。数据采集是工业控制等系统中的重要环节,通常采用一些功能相对独立的单片机系统来实现,作为测控系统不可缺少的部分,数据采集的性能特点直接影响到整个系统。尽管现在以微机为核心的可编程数据采集与处理技术作为数据采集技术的发展方向得到了迅速的发展,并且适于通用微机(如IBM PC 系列) 使用的板卡级数据采集产品也已大量出现,组成一个数据采集系统简单到只需要一块数据采集卡,把它插在微机的扩展槽内,并辅以应用软件,就能实现数据采集功能,但这并不会对基于单片机为核心的数据采集系统产生影响,因为单片机功能强大、抗干扰能力强、可靠性高、灵活性好、开发容易等优点,使得基于单片机为核心的数据采集系统在许多领域得到了广泛的应用.2、数据采集2.1数据采集系统数据采集,又称数据获取,是利用一种装置,从系统外部采集数据并输入到系统内部的一个接口。数据采集技术广泛引用在各个领域。70年代初,随着计算机技术及大规模集成电路的发展,特别是微处理器及高速A/D转换器的出现,数据采集系统结构发生了重大变革。原来由小规模集成的数字逻辑电路及硬件程序控制器组成的采集系统被微处理器控制的采集系统所代替。由微处理器去完成程序控制,数据处理及大部分逻辑操作,使系统的灵活性和可靠性大大地提高,系统硬件成本和系统的重建费用大大地降低。在该系统中需要将模拟量转换为数据量,而 A/D是将模拟量转换为数字量的器件,他需要考虑的指标有:分辨率、转换时间、转换误差等等。而单片机是该系统的基本的微处理系统,它完成数据读取、处理及逻辑控制,数据传输等一系列的任务。在该系统中采用的是8051系列的单片机。双机通信的串行口可以采用RS232C标准接口,由芯片MAX232实现双机的通信。而数据的显示则采用的是DS1602液晶显示器,该器件比较简单,在生活中接触也较多。需要的系统框图如图1.1所示:1.1系统框图2.2 系统总体方案设计2.2.1主体部分该系统是一个主从式多路数据采集系统,主机和从机均用单片机实现,它的主机部分负责数据处理和显示,主机和从机之间用RS-232进行通信。它由AT89S52、烟雾传感器、热释电传感器、报警系统、DS1602液晶显示组成。系统框图如图2.1:2.1系统流程图2.2.2A/D模数转换的选择A/D转换器的种类很多,就位数来说,可以分为8位、10位、12位和16位等。位数越高其分辨率就越高,价格也就越贵。A/D转换器型号很多,而其转换时间和转换误差也各不相同。(1)逐渐逼近式A/D转换器:它是一种速度快、精度较高、成本较低的直接式转换器,其转换时间在几微秒到几百微秒之间。(2)双积分A/D转换器:它是一种间接式的A/D转换器,优点是抗干扰能力强,精度比较高,缺点是数度很慢,适用于对转换数度要求不高的系统。(3)并行式A/D转换器:它又被称为flash(快速)型,它的转换数度很高,但她采用了很多个比较器,而n位的转换就需要2n-1个比较器,因此电路规模也极大,价格也很贵,只适用于视频A/D转换器等数度特别高的领域。鉴于上面三种方案,在价格、转换速度等多种标准考量下,在本设计选用的是逐渐逼近式A/D转换器ADC0809.2.2.3单片机的选择单片机是一种面向大规模的集成电路芯片,是微型计算机中的一个重要的分支。此系统是由CPU、随即存取数据存储器、只读程序存储器、输入输出电路(I/O口),还有可能包括定时/计数器、串行通信口、显示驱动电路(LCD和LED驱动电路)、脉宽调制电路、模拟多路转换器及A/D转换器等电路集成到一个单块芯片上,构成了一个最小但完善的计算机任务。单片机要使用特定的组译和编译软件编译程序,在用keiluvision2把程序下载到单片机内。而本设计选用的是AT89C52.2.2.4 显示部分显示部分我选择地1602,其原理是利用液晶的物理特性,通过电压对其显示区域进行控制,有电就有显示,这样就可以显示出图形。液晶显示器具有厚度薄、适用于大规模集成电路直接驱动和易于实现全彩色显示的特点,目前已经被广泛应用在便携电脑、数字摄像机和PDA移动通信工具等众多领域。其特点: (1)显示质量高由于液晶显示器每一个点抽到信后就一直保持那种色彩和亮度,恒定发光,而不像阴极射线管显示器那样需要不断刷新新亮点,因此,液晶显示器画质高且不会闪烁。(2) 数字式接口液晶显示器都是数字式的,与单片机系统接口更加简单可靠,操作更加方便。(3) 体积小、重量轻液晶显示器通过显示屏上的点击控制液晶分子状态来达到显示的目的,在重量上臂相同显示面积的传统显示器要轻的多。(4) 功耗低相对而言,液晶显示器的功耗主要消耗在内部的电极和驱动IC上,因而耗电量比其他显示器要少的多。2.2.5 热释电传感器1. 全自动感应:人进入其感应范围则输出高电平, 人离开感应范围则自动延时关闭高电平,输出低电平。2. 光敏控制(可选择,出厂时未设):可设置光敏控制,白天或光线强时不感应。3. 温度补偿(可选择,出厂时未设):在夏天当环境温度升高至3032,探测距离稍变短,温度补偿可作一定的性能补偿。4. 两种触发方式:(可跳线选择)a.不可重复触发方式:即感应输出高电平后,延时时间段一结束,输出将自动从高电平变为低电平;b.可重复触发方式:即感应输出高电平后,在延时时间段内,如果有人体在其感应范围活动,其输出将一直保持高电平,直到人离开后才延时将高电平变为低电平(感应模块检测到人体的每一次活动后会自动顺延一个延时时间段,并且以最后一次活动的时间为延时时间的起始点)。5. 具有感应封锁时间(默认设置:无封锁时间):感应模块在每一次感应输出后(高电平变成低电平),可以紧跟着设置一个封锁时间段,在此时间段内感应器不接受任何感应信号。此功能可以实现“感应输出时间”和“封锁时间”两者的间隔工作,可应用于间隔探测产品;同时此功能可有效抑制负载切换过程中产生的各种干扰。(此时间可设置在零点几秒几十秒钟)。6. 工作电压范围宽:默认工作电压DC4.5V-20V。7. 微功耗:静态电流<50 微安,特别适合干电池供电的自动控制产品。8.输出高电平信号:可方便与各类电路实现对接。2.2.6烟雾传感器3、硬件部分3.1主机部分3.1.1 单片机单片机是一种集成的电路芯块采用了超大规模技术把具有运算能力(如算术运算、逻辑运算、数据传送、中断处理)的微处理器(CPU),随机存取数据存储器(RAM),只读程序存储器(ROM),输入输出电路(I/O口),可能还包括定时计数器,串行通信口(SCI),显示驱动电路(LCD或LED驱动电路),脉宽调制电路(PWM),模拟多路转换及A/D转换器等电路集成到一块单片机上,构成一个最小然而很完善的计算机系统。这些电路能在软件的控制下准确快速的完成程序设计者事先规定的任务。总的而言单片机的特点可以归纳为以下几个方面:集成度高、存储容量大、外部扩展能力强、控制功能强、低电压、低功耗、性能价格比高、可靠性高这几个方面。8单片机按内部数据通道的宽度,可分为4位、8位、16位及32位单片机。它们被应用在不同领域里,8位单片机由于功能强大,被广泛的应用在工业控制、智能接口、仪表仪器等各个领域。8位单片机在中、小规模应用场合仍占主流地位,代表了单片机的发展方向,在单片机应用领域发挥越来越大的作用。随着移动通讯、网络技术、多媒体技术等高科技产品进入家庭,32位单片机应用得到了长足发展。纵观单片机的发展过程,可以预示单片机的发展趋势:1、 微型单片化2、 低功耗CMOS3、与多品种共存4、可靠性和应用水平越来越高单片机有着微处理器所不具备的功能,它可以独立地完成现代工业控制所要求的智能化控制功能这就是单片机的最大特点。然而单片机又不同于单板机,芯片在没有开发前,它只是具备功能极强的超大规模集成电路,如果赋予它特定的程序,它便是一个最小的、完整的微机控制系统。它与单板机或个人电脑有着本质的区别,单片机属于芯片级应用,需要用户了解单片机芯片的结构和指令系统以及其它集成电路应用技术和系统设计所需要的理论和技术,用这样特定的芯片设计应用程序,从而使芯片具备特定的智能。83.1.2液晶显示器的应用原理 3.1引脚描述 3.1.3 单片机之间的通信(1)串口通信RS-232C计算机与计算机或计算机与终端之间的数据传送可以采用串行通讯和并行通讯二种方式。由于串行通讯方式具有使用线路少、成本低,特别是在远程传输时,避免了多条线路特性的不一致而被广泛采用。在串行通讯时,要求通讯双方都采用一个标准接口,使不同的设备可以方便地连接起来进行通讯。 RS-232-C接口(又称 EIA RS-232-C)是目前最常用的一种串行通讯接口。它是在1970年由美国电子工业协会(EIA)联合贝尔系统、调制解调器厂家及计算机终端生产厂家共同制定的用于串行通讯的标 准。它的全名是“数据终端设备(DTE)和数据通讯设备(DCE)之间 串行二进制数据交换接口技术标准”该标准规定采用一个25个脚的 DB25连接器,对连接器的每个引脚的信号内容加以规定,还对各种信号的电平加以规定。(1)接口的信号内容 实际上RS-232-C的25条引线中有许多是很少使用的,在计算机与终端通讯中一般只使用3-9条引线。RS-232-C最常用的9条引线的信号内容。见表3.2所示(2)接口的电气特性 在RS-232-C中任何一条信号线的电压均为负逻辑关系。即:逻辑“1”,-5 -15V;逻辑“0” +5 +15V 。噪声容量为2V。即要求接收器能识别低至+3V的信号作为逻辑“0”,高于3V的信号作为逻辑“1”。 引脚序号信号名称符号流向功能2发送数据TXDDTE->DCEDTE发送串行数据3接收数据RXDDTE<-DCEDTE接收串行数据4请求发送RTSDTE->DCEDTE请求DCE将线路切换到发送方式5允许发送CTSDTE<-DCEDCE告诉DTE线路已接通可以发送数据6数据设备准备好DSRDTE<-DCEDCE准备好7信号地信号公共地8载波检测DCDDTE<-DCE表示DCE接收到远程载波20数据终端准备好DTRDTE->DCEDTE准备好22振铃指示RIDTE<-DCE表示DCE与线路接通,出现振铃表3.2 常用引线的信号内容(3)接口的物理结构 RS-232C接口连接器一般使用型号为DB-25的25芯插头座,通常插头在DCE端,插座在DTE端。一些设备与PC机连接的RS-232-C接口,因为不使用对方的传送控制信号,只需三条接口线,即“发送数据”、“接收数据”和“信号地”。所以采用DB-9的9芯插头座,传输线采用屏蔽双绞线。两个DB-9的连接如图3.3所示图3.3 两个DB-9的连接图(4)传输电缆长度 由RS-232C标准规定在码元畸变小于4%的情况下,传输电缆长度应为50英尺,其实这个4%的码元畸变是很保守的,在实际应用中,约有99%的用户是按码元畸变10-20%的范围工作的,所以实际使用中最大距离会远超过50英尺。 3.1.4 热释电传感器1. 感应模块通电后有一分钟左右的初始化时间,在此期间模块会间隔地输出0-3 次,一分钟后进入待机状态。2. 应尽量避免灯光等干扰源近距离直射模块表面的透镜,以免引进干扰信号产生误动作;使用环境尽量避免流动的风,风也会对感应器造成干扰。3. 感应模块采用双元探头,探头的窗口为长方形,双元(A 元B 元)位于较长方向的两端,当人体从左到右或从右到左走过时,红外光谱到达双元的时间、距离有差值,差值越大,感应越灵敏,当人体从正面走向探头或从上到下或从下到上方向走过时,双元检测不到红外光谱距离的变化,无差值,因此感应不灵敏或不工作;所以安装感应器时应使探头双元的方向与人体活动最多的方向尽量相平行,保证人体经过时先后被探头双元所感应。为了增加感应角度范围,本模块采用圆形透镜,也使得探头四面都感应,但左右两侧仍然比上下两个方向感应范围大、灵敏度强,安装时仍须尽量按以上要求。3.4热释电传感器参数图3.5热释电电路原理图3.1.5烟雾传感器4、 软件部分4.1 简介KeilUvision2Keil提供了包括C编译器、宏汇编、连接器、库管理和一个功能强大的仿真调试器等在内的完整开发方案,通过一个集成开发环境(UVISION)将这些组合在一起。Keil有以下几个特点:1、 全功能的源代码编辑器;2、 器件库用来配置开发工具设置;3、 项目管理器用来创建和维护用户的项目;4、 集成的MAKE工具可以汇编、编译和连接用户嵌入式应用;5、 所有开发工具的设置都是对话框形式的;6、 真正的源代码级的对CPU和外围器件的调试器;7、 高级GDI(AGDI)接口用来在目标硬件上进行软件调试以及和Monitor-51进行通信4.2 主机程序设计本软件系统有一个主程序,两个子程序,两个个子程序分别为时钟芯片程序、液晶显示程序。4.2.1主程序(包括烟雾传感器、热释电传感器及报警系统程序)主程序对系统进行初始化,主要是进行定时/计数的初始化,然后调用键盘扫描程序Keys_Scan(),再根据按下的键来调用向串口发送数据子程序putc_to_serialport()将相应的数据发送给串行口。#include "MyType.h"#include "LCD1602.h"#include "ds18b20.h"#include "DS1302.h" sbit bz=P13;sbit re=P15;sbit ya=P16; void main(void)Init_DS1302();LCD1602Init();/初始化1602DispStr(0,1,"Time:");/提示信息DispStr(0,0,"Temp: C");/提示信息while(1)re=1;ya=1;DispStr(6,0,get_temp_string();DispStr(6,1,show_date();delay(500);if(!ya)DispStr(15,0,"S");elseDispStr(15,0," ");if(re)DispStr(15,1,"H");elseDispStr(15,1," ");4.2.2时钟芯片子程序 #include "MyType.h"#include "LCD1602.h"#include "DS1302.h"#include "intrins.h"/*从430上移植过来的*/unsigned char hour,minute;uchar time=_TIME_;/_TIME_为WINDOWS时间,格式为"hh:ss:mm"uchar value,key,EnableSet;uchar DS1302_OutputByte() /实时时钟读取一字节(内部函数) uchar value,i; value=0x00; for (i=8;i>0;i-) value= value>>1; SetSDAIN; if (ReadSDA) value= value|0x80; SetSCL; ClrSCL; return value; void DS1302_InputByte(uchar value)/实时时钟写入一字节(内部函数) uchar i; SetSDAOUT;for (i=8;i>0;i-) if(value&0x01)SetSDA; else ClrSDA; SetSCL; ClrSCL; value=value>>1; uchar Read_DS1302(uchar Addr)/读取DS1302某地址的数据 unsigned char ucData; ClrRST; ClrSCL; SetRST; DS1302_InputByte(Addr|0x01); / 地址,命令 ucData = DS1302_OutputByte();/ 读1Byte数据 SetSCL; ClrRST; return(ucData);void Write_DS1302(uchar Addr,uchar ucDa)/Addr: DS1302地址, ucData: 要写的数据 ClrRST; ClrSCL; SetRST; DS1302_InputByte(Addr); / 地址,命令 DS1302_InputByte(ucDa); / 写1Byte数据 SetSCL; ClrRST;void DS1302_SetProtect(uchar flag) /是否写保护 if(flag) Write_DS1302(0x8E,0x10); else Write_DS1302(0x8E,0x00);uchar tran_input(uchar value)/输入数据入转换函数 return (value/10)<<4 | (value%10);uchar Tran_Output(uchar value)/bcd转换成ascii return (value&0x70)>>4)*10 +(value&0x0F);void DS1302_SetTime(uchar Address, uchar value) /设置时间函数 DS1302_SetProtect(0); Write_DS1302(Address, tran_input(value); /重设时间void RescriptTime(uchar* IsSetTime)EnableSet=1;DS1302_SetProtect(0);/清除写保护/Addr: DS1302地址, ucData: 要写的数据(要将字符串转换成数值)Write_DS1302(0x84,tran_input(IsSetTime0-'0')*10+IsSetTime1-'0');/小时设置Write_DS1302(0x82,tran_input(IsSetTime3-'0')*10+IsSetTime4-'0');/分钟设置Write_DS1302(0x80,tran_input(IsSetTime6-'0')*10+IsSetTime7-'0');/秒钟设置DS1302_SetProtect(1);/设置写保护EnableSet=0; void Init_DS1302()/初始化芯片 EnableSet=0; SetSCLOUT; SetRSTOUT; if(Read_DS1302(0x80)&0x80) DS1302_SetTime(0x80,0); RescriptTime(time); uchar* show_date(void) if(EnableSet=1)return 0;/如果正在设定时间就停止走 value=(Read_DS1302(0x81);/秒 key=Tran_Output(value); time6=( key/10 + '0'); time7=( key%10 + '0');/DS1302_SetTime(0x82,23); minute=value=(Read_DS1302(0x83);/分 key=Tran_Output(value); time3=( key/10 + '0'); time4=( key%10 + '0');/DS1302_SetTime(0x84,16); hour=value=(Read_DS1302(0x85);/时 key=Tran_Output(value); time0=( key/10 + '0'); time1=( key%10 + '0');return time;4.2.3液晶显示程序Liquid crystal display program/1602驱动程序。#include "MyType.h"#include "LCD1602.h"/*从430上移植过来的*/(2)写指令,RS.RW=00void write_com(uchar com)RS=0;/RS为0表读或写指令。RW=0;/RW为0是写状态。E=1;/ E为高电平数据输入。P0=com;/指令输入。/uchar i=90;while(i-);/经调试,i=90是最短的延时时间了delay(1);/延时2ms,让数据稳定.E=0;/数据锁存。/(3)写数据,RS.RW=10void write_date(uchar date)RS=1;/RS为1表数据。RW=0;/RW为0是写状态。待添加的隐藏文字内容2E=1;/ E为高电平数据输入。P0=date;/数据输入。/uchar i=90;while(i-);/经调试,i=90是最短的延时时间了delay(1);/延时2ms,让数据稳定.E=0;/下降沿数据锁存。void LCD1602Init() /初始化。write_com(0x38);/8位数据线传送,2行5×点阵。/write_com(0x28);/0x28=0010 1000, 4位数据线传送,2行5×7点阵,4位数据线传送则要传送两次D7到D4。write_com(0x0c);/显示开,光标关,闪烁关write_com(0x06);/输入模式设定显示一个字符之后向右移动一个位置,不移动write_com(0x01);/清显示. write_com(0x80);/从第一行第一个位置显示。/让液晶从某个位置起连续显示一个字符串void DispStr(uchar x,uchar y,uchar *ptr) uchar *temp; uchar i,n = 0; temp = ptr; while(*ptr+ != '0') n+;/计算字符串有效字符的个数 for (i=0;i<n;i+) Disp1Char(x+,y,tempi); if (x = 0x0f) x = 0; y = 1; /向液晶输入显示字符位置的坐标信息void LocateXY(uchar x,uchar y) uchar temp; temp = x&0x0f; y &= 0x01; if(y) temp |= 0x40; /如果在第2行 temp |= 0x80; write_com(temp);/在某个位置显示一个字符void Disp1Char(uchar x,uchar y,uchar dat) LocateXY( x, y ); write_date( dat);/* /将整数转按十进制字符在某位置显示。void DispiayLongInt(unsigned char x,unsigned char y,long val) int8 i; uint8 display_buffer10; LocateXY( x, y ); for(i=9;i>=0;i-) display_bufferi='0'+val%10; val/=10; for(i=0;i<9;i+) if(display_bufferi!='0')break; for(;i<10;i+)write_date(display_bufferi);/End of function/*/左对齐显示小数/*void DispiayFloat(uchar x,uchar y,double fx)long tmpx=(long)(fx);uchar ds10;char i=0;uchar n,k;LocateXY( x, y );/显示定位for(n=0;n<5;n+)if(tmpx!=0)tmpx/=10;else break;if(n)/整数位数不为0 tmpx=(long)(fx);if(tmpx<0)write_date(

    注意事项

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

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




    备案号:宁ICP备20000045号-2

    经营许可证:宁B2-20210002

    宁公网安备 64010402000987号

    三一办公
    收起
    展开