Protel电路设计方案课程设计方案设计方案说明书_第1页
Protel电路设计方案课程设计方案设计方案说明书_第2页
Protel电路设计方案课程设计方案设计方案说明书_第3页
Protel电路设计方案课程设计方案设计方案说明书_第4页
Protel电路设计方案课程设计方案设计方案说明书_第5页
已阅读5页,还剩20页未读 继续免费阅读

付费下载

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

《Protel电路设计(课程设计)》说明书ﻩ 专业名称:电子信息工程ﻩﻩﻩﻩ班级:ﻩﻩﻩﻩ学号:ﻩﻩﻩﻩ姓名:ﻩﻩ ﻩ指导老师:ﻩﻩﻩﻩ日期:2013年12月16日ﻬ目录TOC\o”1—3”\h\z\uHYPERLINK\l"_Toc375128458"一、设计的目的和意义:ﻩPAGEREF_Toc375128458\h2HYPERLINK2.传感器ﻩPAGEREF_Toc375128461\h3HYPERLINK\l”_Toc375128462”3.温度穿管器DS18B20ﻩPAGEREF_Toc375128462\h4HYPERLINK\l"_Toc375128463"4.智能温度报警系统ﻩPAGEREF_Toc375128463\h5HYPERLINK\l”_Toc375128464"三、设计过程ﻩPAGEREF_Toc375128464\h6HYPERLINK(2)报警电路的连接ﻩPAGEREF_Toc375128469\h8HYPERLINK\l"_Toc375128470"(3)键盘的连接ﻩPAGEREF_Toc375128470\h8HYPERLINK\l”_Toc375128471"(4)温度传感器的连接 PAGEREF_Toc375128471\h9HYPERLINK4.单片机程序设计ﻩPAGEREF_Toc375128472\h9HYPERLINK\l"_Toc375128473”(1)主程序设计ﻩPAGEREF_Toc375128473\h9HYPERLINK\l”_Toc375128474”(2)LCD1602显示函数设计 PAGEREF_Toc375128474\h10HYPERLINK\l"_Toc375128475"(3)传感器读取温度数据函数ﻩPAGEREF_Toc375128475\h10HYPERLINK\l"_Toc375128476"(4)键盘函数设计ﻩPAGEREF_Toc375128476\h10HYPERLINK\l”_Toc375128477”(5)推断函数设计ﻩPAGEREF_Toc375128477\h10HYPERLINK四、结论ﻩPAGEREF_Toc375128480\h12HYPERLINK\l"_Toc375128481"五、参考文献ﻩPAGEREF_Toc375128481\h13HYPERLINK\l”_Toc375128482"六、附录ﻩPAGEREF_Toc375128482\h14HYPERLINK附录二温度掌握报警器PCB原理图 PAGEREF_Toc375128484\h14HYPERLINK\l”_Toc375128485”附录三温度掌握报警器实物图ﻩPAGEREF_Toc375128485\h15HYPERLINK\l"_Toc375128486”附录四温度掌握报警器程序ﻩPAGEREF_Toc375128486\h16一、设计的目的和意义:通过课程设计,使同学进一步熟识理论对实践的指导作用,激发同学学习理论知识的热忱。同学们以实际工作者的身份,直接参加生产过程(包括组织、管理、设计研发、标准规范、实际生产、测试、封装…)。既可运用已有的知识技能,又可学习拓展新的知识,增加自己的岗位阅历技能,获得能力上的飞跃。本课题“基于单片机掌握的温度报警器设计与制作”是一个以单片机为掌握核心的温度自动测量系统。其讨论意义如下:它是一个单片机系统,对它的设计和制作可以灵敏运用在单片机课程中所学的知识,并使之得到巩固和提高。单片机在现实生活中应用格外普遍,掌握这方面知识对今后从事此类工作的同学来说是一项不行或缺的技能。它的测温部分采纳了没过Dallas半导体公司的DS18B20,一线式数字式温度传感器,DS18B20是新一代的测温器件,具有很多优点,它正在逐步取代传统的测温元件------热敏电阻和热电偶。它的主要优点是把温度转换、A/D转换和数据的串行通讯集成为一体,而且它的体积很小,格外便于构成多点测温系统。它的最终目标是完成一个实际应用的产品,所以它的设计开发过程完全依据实际仪器产品的设计制造过程进行.讨论课题的同时积累了很多实际阅历,对以后的实践会有很大帮助。二、设计原理及规模:温度掌握是工业掌握的重要组成部分,而温度测量又是温度掌握当中重要的一环。本课题“智能温度报警器的设计"主要讨论以一个单片机为掌握核心的温度自动测量系统.本设计是一个基于单片机的温度测量电路,在单片机的电路设计中,单片机可以测量电信号。单片机的借口信号是数字信号,要用单片机作为掌握器测量温度这类非电信号,就要使用温度传感器将温度信号转换为电流或者电信号输出,如果转化的信号是模拟信号,还需要进行A/D转化,以满意单片机接口的需要。进步联想到可以采纳始终温度传感器DS18B20,ﻩ此传感器,可以很容易直接读取被测温度值,进行转换,成功的进行温度采集以后,进可以利用单片机进行数据处理,然后通过 lcd将温度显示出来,就可以满意设计要求,硬件部分主要包括:测温电路、传感电路以及测温电路与单片机的借口、报警电路与单片机的借口等组成的.下面将对其做一些介绍。温度传感器采纳DS18B20,掌握器采纳AT89C51,显示电路采纳LCD1600液晶显示器实现。1.AT89C51单片机AT89C51单片机是美国ATMEL公司生产的低电压,高性能CMOS

8位单片机,片内含有4K

bytes

可反复擦写的只读程序存储器(PEROM)和128

bytes的随机存取数据存储器(RAM),器件采纳公司的高密度、非易如失性存储技术生产,兼容标准MCS-51指令系统,片内置通用8位中央处理器(CPU)和Flash存储单元,功能强大。它的主要性能参数如下:

(1)与MCS-51产品指令系统完全兼容;(2)4K字节可重擦Flash闪速存储器;

(3)1000次擦写周期;

(4)全静态操作;(5)三级加密程序存储器;

(6)128*8字节内部RAM;

(7)32个可编程I/O口线;

(8)2个16位定时/计数器;

(9)6个中断源;

(10)可编程串行UART通道;

(11)低功耗空闲和掉电模式

;2.传感器传感器是指设计到系统中的一种装置。它把特定参数转换为便于测试分析的形式.传感器有两种类型:一是无源传感器:除被测信号外,不要求施加电源的传感器;二是有源传感器:除被测信号外,要求施加电源的传感器。传感器的灵敏度对系统分辨率必须是适当的,信号输出形式应适应测试系统要求.并且有足够的频率响应;应避开使用需要校准(初始校准或者其他校准)的传感器;全部传感器均需要采纳良好的设计准则进行设计。必要时采纳滤波或者屏蔽,以使电磁辐射造成的干扰最少。

在工业掌握和电子测量中,温度传感器是实现温度测量和掌握的关键部件,

它起着至关重要的作用.温度传感器,依据其使用方式通常分为接触法与非接触法两类。接触法是指测温元件与被测物体直接接触。由热平衡原理可知,两个物体接触后,经过足够长时间的热交换会达到热平衡,此时它们的温度相等。其优点是,温度计与被测物体有良好的热接触,测温精准度较高。缺点是用接触法测温时,感温元件要与被测物体接触,往往要破坏被测物体的热平衡状态,并受被测介质的腐蚀作用,此外如果测温元件与被测物体接触不良会引起测量误差,因此,对测温元件的结构、性能要求苛刻。

非接触法师利用物体的热辐射能随温度变化的原理测定物体温度的。它的优点是:不与被测物体接触,也不转变被测物体的温度分布,热惯性小,因此这种方法测温上限很高,通常用来测定1000℃以上的移动、旋转或反应飞快的高温物体的表面温度。其缺点是测量温度比较低,使用不便利。温度传感器是一种将被测物体的温度变化这种非电物理量信号按肯定规律转换为电量变化的装置,它是利用金属、合金或者半导体材料与温度有关的特性。依据温度传感器输出信号的模式,可大致划分为3大类:模拟式温度传感器、规律输出温度传感器、数字式温度传感器。传统的模拟温度传感器,如热电偶、热电阻、热敏电阻及半导体温度传感器都是将温度值经过肯定的测量接口电路转换后输出模拟电压或电流信号,再将进一步处理,然后利用模数转换器将其转换为掌握器可以处理的数字信号,即可

由掌握器读取。一个完整的温度采集系统包括以下几部分:温度传感器、测量电路、模拟信号处理电路、A/D转换电路以及单片机.

而在实际中,有些不需要进行严格的温度值测量,只需测量其是否超出某一设定范围,然后输出跳变信号进行掌握,一旦温度超出所规定的范围,则发出报警信号。例如可以启动或关闭风扇、空调、加热器或其他掌握设备,此时可选用规律输出式温度传感器。LM56、MAS6501-MAX6504、MAX6509/6510是这种类型的典型代表。

随着集成电路的不断进展,消灭了数字式的温度传感器

,它是微电子技术、计算机技术和自动检测技术(ATE)的结晶,可以将待测环境的温度模拟量直接转化为单片机能够处理的数字量信号。数字温度传感器把模拟传感器温度采集系统测量电路、模拟信号处理电路、A/D转化电路和其他功能的单元(如存储器或寄存器)集成到一起,就构成具有数字输出能力的数字温度传感器。

数字温度传感器依据输出信号的不同可分为3类:时间输出的温度传感器,如AD公司的TMP03/04;频率输出的单线温度传感器,如MAX6577;数值输出的温度传感器,数值输出的单线温度传感器直接以串行方式输出芯片测出的简略温度数值,所以其时序格外重要。3.温度穿管器DS18B20DALLAS公司的DS18B20就是这样一种独特的温度传感器。它只需要一个接口引脚即可通信,可用数据线供电,并具备多点测温能力。由于DS18B20组成的温度测控系统格外便利,克服了模拟式传感器与微机接口时需要的A/D转换器及其它简洁外围电路的缺点,占用微处理器的端口较少,可节省大量的引线和规律电路。从而使测温装置与各传感器的接口变得十分简洁,而且成本低,体积小,牢靠性高。因此这次设计选用DS18B20作为温度传感器。

DS18B20数字温度传感器是美国DALLAS公司推出的一线式数字温度传感器。它将地址线、数据线、掌握线合为一线双向串行传输数据的信号线,并允许在这根信号上挂多个DS18B20,可组成网络多点测温检测系统。DS18B20具有如下特性:

(1)

具有三引脚PR-35封装形式;

(2)

具有独特的单总线接口方式,CPU只需一根端口就能与DS18B20通信;

(3)

温度测量范围为-55℃---125℃,测温分辨率可达0.0625℃;

(4)

被测温度用可编程为9位—12位A/D转换精度的数字量串行输出;

(5)

电压范围在3.0—5。5V;

(6)

具有负电特性,电源极性接反时,温度计不会因发热而烧毁,只是不能正常工作。4。智能温度报警系统主要由电源、键盘、数字温度传感器、单片机、显示装置和报警装置等基本模块组成。本课题是利用一种新型的可编程温度传感器DS18B20,它能代替模拟温度传感器和信号处理电路,直接与单片机沟通,完成温度的采集和数据的处理.较之原始的温度处理器它具有系统结构简洁、抗干扰能力强,适合于恶劣环境下进行现场温度测量等优点。它的三个引脚,一个接电源,一个接地,另外一个可以直接与单片机连接。键盘一般分为独立式按键和行列式按键两类。可采纳4*4行列矩阵结构。显示器模块显示电路使用LED数码管显示器,采纳静态显示方法。报警电路报警电路主要由蜂鸣器和变色二极管构成。主要功能如下:(1)用户可以自行设定温度的上限和下限(2)当温度超过上限或者下限时,可以通过发光二极管以及蜂鸣器实现自动报警。(3)当温度低于设定下限时,通过外拓继电器电路掌握加热棒实现温度提升。三、设计过程1.方案设计本设计是一个基于单片机的温度测量电路,传统的温度检测系统采纳热敏电阻等温度敏感元件,热敏电阻虽然成本低,但是需要后续信号处理、A/D转换处理等才能将温度转换成数字信号,不但电路简洁,牢靠性和精度也相对较低,在应用中还需要解决引线误差补偿、干扰等问题,故传统方案不行取。进而格外容易考虑到使用温度传感器,在单片机电路设计中,单片机除了可以测量电信号外,还可以用于温度、湿度等非电信号的测量,能独立工作的单片机温度检测、温度掌握系统已经广泛的应用于很多领域。单片机的接口信号是数字信号,要用单片机作为掌握器测量温度这类非电信号,就要使用温度传感器将温度信息转换为电流或者电压信号输出,如果转化的信号是模拟信号,还需要进行A/D转化,以满意单片机接口的需要。进一步联想到可以采纳一只温度传感器DS18B20,此传感器,可以很容易直接读取被测温度值,进行转换,成功地进行温度采集以后,就可以利用单片机进行数据处理,然后通过LCD将温度显示出来,就可以满意设计要求。硬件部分设计主要包括:测温电路、传感器电路及测温电路与单片机的接口、报警电路与单片机的接口等组成的。

本设计中,温度传感器采纳DS18B20,掌握器采纳AT89S51,显示电路采纳LCD1602液晶显示器实现,总体方框图如下:LCD显示器单片机AT89C51LCD显示器单片机AT89C51DS18B20DS18B20指示灯。扫描驱动指示灯。扫描驱动电源报警电路温度控制电路电源报警电路温度控制电路2。温度掌握的实现系统工作时先由使用者设定预期达到的两位温度值,温度值输入后,打开电源,单片机自动复位,进行初始化,这时LED显示器显示预先设定好的温度,然后温度检测电路将测点的温度输入单片机,经软件滤波后作为实测温度,此后显示器将始终显示实测温度。若实测温度高于或低于设定温度时,则通过报警电路点亮LED灯并打开蜂鸣器报警.若在设定温度范围内,则系统保持不变.3.系统模块(1)89C51单片机与LCD1602图一单片机与LCD1602的连接AT89C51与显示模块LCD1602连接形成显示电路,接通电源后,DS18B20将采集到温度传送给主掌握器AT89C51,主掌握器进行计算、转换等工作之后把数据传给LCD1602模块,则LCD1602显示屏上会显示出当前的温度。此时我们按下各功能键可以依据自己的需要进行温度HIGH和LOW值的设置,在LCD1602显示屏幕上会消灭设置的值,另外进行测试时相关温度值也会直接消灭在LCD1602屏幕上,一目了然。(2)报警电路的连接图二报警电路的连接报警信号与蜂鸣器信号分别连接单片机的P3.5与P3。6口掌握LED灯的闪烁与蜂鸣器的报警装置。(3)键盘的连接图三键盘的连接S1,S2,S3分别连接P1。0,P1。1,P1.2口实现数字增加,削减和确定的功能。(4)温度传感器的连接图四温度传感器的连接DS18B20的I/O口与单片机的P3。4连接实现温度数据的传送。4.单片机程序设计(1)主程序设计主程序的主要功能是负责温度的实时显示,读出并处理DS18B20测量的当前温度值,送入主掌握器进行数据处理并转换为数字信号后进行显示,其流程图如下所示。图五主程序流程图系统软件采纳C语言编写.在中断服务程序中,实现用户输入以及上位机的接口功能;在主程序中,实现温度传感器网络的自动搜寻、猎取温度信息,并依据预先设定的温度上下限,实现相应的报警功能。该系统中,依据不同的分辨率要求,可通过编程设定,该流程可满意高精度设计要求。(2)LCD1602显示函数设计在测得温度后,将温度数据转换为十进制数的温度表示,然后再通过查表调用液晶1602显示在液晶上,这里面数据处理类似于由二进制转换为十进制,再由十进制转换为ASCII码。本子函数中主要包括LCD初始化部分,字符输出部分,数据输出部分等。(3)传感器读取温度数据函数该函数包括传感器的初始化,并读出RAM中的9字节,在读出时将前两位温度数据赋值给输出数据作为该函数的反馈(4)键盘函数设计本函数通过检测P1。3口的点击次数确定温度是否设定完成,在第一次上升沿到来之前反复扫描P1。1及P1.2口的按键是否被点击,从而分别将预先设定的最高温度与最低温度的值分别进行加减操作(5)推断函数设计本函数主要掌握蜂鸣器与报警电路连接端口的输出,该函数可以调用传感器的温度数据与键盘函数中保存的预设温度进行比较。若不在设定范围则掌握LED与蜂鸣器报警(6)读温度流程图六读温度流程图ﻫ读温度子程序的主要功能是读出RAM中的9字节,在读出时需进行CRC校验校验有错时不进行温度数据的改写,如上图。(7)显示模块子程序在测得温度后,将温度数据转换为十进制数的温度表示,然后再通过查表调用液晶1602显示在液晶上,这里面数据处理类似于由二进制转换为十进制,再由十进制转换为ASCII码。首先要对LCD进行初始化设置,写入报警温度的上、下限值,同时进行温度比较,若当时温度在设定的上下限范围内,则系统无反应,若温度超过上、下限温度,则蜂鸣器报警。四、结论本设计所介绍的温度计报警器与传统的温度计相比,可以设置上下报警温度,当温度不在设置范围内时,可以进行报警,该系统主要用于对测温比较精准的场所,或科研实验室使用。它结构简洁,不需外接元件,可由用户设置温度报警界限等特点,可广泛用于食品库、冷库、粮库等需要掌握温度的地方。DS18B20集温度测量、A/D转换于一体,具有体积小、动态范围宽、测量精度高、单总线结构、直接与CPU接口等特点。经试验,基于AT89S51单片机和DS18B20的温度测量仪,设计简洁,掌握便利,测量精准,测温范围宽,另外,利用单总线具有很强的扩展性,还可以组建多点的温度检测网络。因此,基于AT89C51单片机和DS18B20的温度测量仪,具有广泛的应用前景。目前,该类产品已在温度掌握系统中得到了广泛的应用。故该设计意义较为深远.同时,该方案具有安装便利、数字化程度高、精度高、适应性强等特点,在多种温度检测系统中都具有重大意义.本设计实现了利用单片机以及DS18B20进行温度报警器的制作,通过这次设计,使我接触到了很多之前没有学习过的理论知识而且使我在电路知识方面有很大提高,学习并掌握了单片机应用的基本知识以及温度传感器DS18B20等芯片的使用方法;通过动手实践操作,将理论知识应用于实际,使自己的知识更加生动丰富,经过一段时间的学习和制作,最终完成了利用单片及DS18B20实现温度报警器制作的设计.五、参考文献[1]严芸。浅谈温度传感器的现状与进展[J].大众科技,2006,(5):38-39.[2]谭浩强。C程序设计[M].清华高校出版社,1999.[3]杨小川.ProtelDXP设计指导教程[M]。清华高校出版社,2003.[4]贵国庆。LCD1602液晶显示秒表[J].电子制作,2006。(4):59-61.[[5]朱蕤、张常年。基于AT89C51单片机的温度传感器掌握电路[D].北方工业高校,2006.[6]黄继昌.传感器工作原理及应用实例[M]。人民邮电出版社.1998.[7]周航慈。单片机程序设计基础[M].北京航空航天高校出版社.2003.[8]谢宜仁.单片机有用技术问答[M].人民邮电出版社。2003。[9]朱善君.单片机接口技术与应用[M].清华高校出版社.2005.[10]郭亨礼.传感器有用电路[M].上海科学技术出版社。1992.[11]谢宜仁.单片机有用技术问答[M].人民邮电出版社.2003。[12]肖来胜。单片机技术有用教程[M].华中科技高校出版社.2004。[13]Transistorspecificationsmanual.HowardW.Sams&Co。,Inc[M].1972.六、附录附录一温度掌握报警器原理图附录二温度掌握报警器PCB原理图附录三温度掌握报警器实物图附录四温度掌握报警器程序#include<stdio.h〉//标准输入输出#include〈intrins.h>#include"lcd1602。h”#include"ds18b20.h”#include"key。h"#include"judge.h"voidInitTimer0(void){TMOD=0x01;TH0=0x0D8;TL0=0x0F0;ﻩﻩ//计时10msEA=1;ET0=1;TR0=1;}/******************************************************************//*主函数*//******************************************************************/voidmain(void){ﻩP3=0X00;ﻩstart_disp();ﻩwhile(!start_flag)ﻩ{ﻩﻩkey(); }ﻩwhile(start_flag)ﻩ{ﻩﻩInitTimer0();ﻩﻩdisplay();ﻩjudge(); }}voidTimer0Interrupt(void)interrupt1{TH0=0x0D8;TL0=0x0F0;temp=ReadTemperature();}#include"lcd1602.h"#include〈intrins.h〉#include<stdio。h>unsignedinttemp;unsignedchartempH,tempL;chardataTimeNum[]="";chardataTest1[]="”;/******************************************************************//*函数声明*//******************************************************************//******************************************************************//*微秒延时函数*//******************************************************************/voidDelayUs(unsignedcharus)//delayus{unsignedcharuscnt;uscnt=us>>1;/*12MHz频率*/while(--uscnt);}/******************************************************************//*毫秒函数声明*//******************************************************************/voidDelayMs(unsignedcharms){while(——ms){DelayUs(250);DelayUs(250);ﻩDelayUs(250);ﻩDelayUs(250);}}/******************************************************************//*写入命令函数*//******************************************************************/voidWriteCommand(unsignedcharc){DelayMs(5);//操作前短暂延时,保证信号稳定E=0;RS=0;RW=0;_nop_();E=1;Data=c;E=0;}/******************************************************************//*写入数据函数*//******************************************************************/voidWriteData(unsignedcharc){DelayMs(5);//操作前短暂延时,保证信号稳定E=0;RS=1;RW=0;_nop_();E=1;Data=c;E=0;RS=0;}/******************************************************************//*写入字节函数*//******************************************************************/voidShowChar(unsignedcharpos,unsignedcharc){unsignedcharp;if(pos>=0x10)p=pos+0xb0;//是其次行则命令代码高4位为0xcelsep=pos+0x80;//是其次行则命令代码高4位为0x8WriteCommand(p);//写命令WriteData(c);//写数据}/******************************************************************//*写入字符串函数*//******************************************************************/voidShowString(unsignedcharline,char*ptr){unsignedcharl,i;l=line<<4;for(i=0;i<16;i++)ShowChar(l++,*(ptr+i));//循环显示16个字符}/******************************************************************//*初始化函数*//******************************************************************/voidInitLcd(){DelayMs(15);WriteCommand(0x38);//displaymodeWriteCommand(0x38);//displaymodeWriteCommand(0x38);//displaymodeWriteCommand(0x06);//显示光标移动位置WriteCommand(0x0c);//显示开及光标设置WriteCommand(0x01);//显示清屏}voidstart_disp(void){ InitLcd();//初始化LCD DelayMs(15);//延时保证信号稳定ﻩsprintf(Test1,”H:30CL:10C");//打印输出第一行信息 ShowString(0,Test1);ﻩsprintf(TimeNum,"current:”);//打印输出其次行信息ﻩShowString(1,TimeNum);}voiddisp_set(unsignedcharaddr,unsignedchara){ﻩunsignedcharg,d;ﻩg=’0’+a/10;//gaoshiwei d='0’+a%10;ﻩWriteCommand(addr);//高位地址ﻩWriteData(g);ﻩWriteCommand(addr+1);//低位地址 WriteData(d);ﻩ}voiddisplay(void){unsignedcharstr[7];ﻩﻩif(temp&0x8000)ﻩ{ str[0]=’—';ﻩﻩtemp=~temp; ﻩtemp+=1;ﻩﻩ}ﻩelseﻩstr[0]='0';tempH=temp>〉4; tempL=temp&0x0f; tempL=tempL*6/10;//近似处理ﻩstr[1]='0'+tempH/100;//baiﻩstr[2]='0'+tempH/10;//shi str[3]='0'+tempH%10;//geﻩstr[4]='.';//.ﻩstr[5]=’0'+tempL; str[6]='C’;ﻩWriteCommand(0xc8);ﻩWriteData(str[0]);ﻩWriteCommand(0xc9);ﻩWriteData(str[1]);ﻩWriteCommand(0xca);ﻩWriteData(str[2]);ﻩWriteCommand(0xcb);ﻩWriteData(str[3]);ﻩWriteCommand(0xcc);ﻩWriteData(str[4]);ﻩWriteCommand(0xcd);ﻩWriteData(str[5]);ﻩWriteCommand(0xce);ﻩWriteData(str[6]);}#include"ds18b20.h"/******************************************************************//*延时函数*//******************************************************************/voiddelay(unsignedinti)//延时函数{while(i--);}/******************************************************************//*初始化*//******************************************************************/voidInit_DS18B20(void){unsignedcharx=0;DQ=1;//DQ复位delay(8);//稍做延时DQ=0;//单片机将DQ拉低delay(80);//精确延时大于480usDQ=1;//拉高总线delay(10);x=DQ;//稍做延时后如果x=0则初始化成功x=1则初始化失败delay(5);}/******************************************************************//*读一个字节*//******************************************************************/unsignedcharReadOneChar(void){unsignedchari=0;unsignedchardat=0;for(i=8;i〉0;i--){DQ=0;//给脉冲信号dat>>=1;ﻩﻩﻩﻩ//检测数据信号DQ是否被拉高放低DQ=1;//给脉冲信号if(DQ)dat|=0x80;delay(5);}return(dat);}/******************************************************************//*写一个字节*//******************************************************************/voidWriteOneChar(unsignedchardat){unsignedchari=0;for(i=8;i〉0;i--){DQ=0;ﻩ ﻩﻩDQ=dat&0x01;delay(5);DQ=1;dat〉>=1;}delay(5);}/******************************************************************//*读取温度*//******************************************************************/unsignedintReadTemperat

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论