温度计的论文.doc_第1页
温度计的论文.doc_第2页
温度计的论文.doc_第3页
温度计的论文.doc_第4页
温度计的论文.doc_第5页
已阅读5页,还剩31页未读 继续免费阅读

下载本文档

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

文档简介

江苏技术师范学院毕业设计说明书(论文) jiangsu teachers university of technology 本科毕业设计(论文)数字温度计的设计和制作 学院名称: 东方学院 专 业: 通信工程 班 级: 03 姓 名: 沈俊 指导教师姓名: 贾中宁 指导教师职称: 教授 2007 年 06 月 数字温度计的设计和制作摘 要:温度计是一种日常生活中常用的测试设备,本课题设计制作了一个数字温度计。该温度计的控制部分使用单片机at89s52,温度传感器使用ds18b20,显示部分采用4位共阴led数码管。本文较详细地介绍了设备的构成原理、at89s52和ds18b20的功能及外围电路的设计方法,用c语言编写了软件程序,设计、制作了pcb版。对制作的设备进行测试,其可测温度范围是0到60。本设备结构简单,工作稳定,成本低廉可作为日常使用的测温设备。关键词:单片机,温度计, ds18b20,at89s51 design and realization of a digital thermometerabstract: a thermometer is used in everyday life test equipment, the subject of a design digital thermometer. the thermometer control of the use of scm at89s52, temperature sensors used ds18b20. some shows used a total of four led digital control. this paper described in detail the composition of the equipment principle, the function of at89s52, ds18b20 and design of the external circuit, clanguage of the software program, designed and produced the pcb version. making the right equipment for testing and measuring temperature range can be 0 to 60 . the equipment is simple, stable jobs and can be used as low-cost day-to-day use of the temperature measurement equipment. key word: scm ,thermometer, ds18b20, at89s51 目 录序言 . 5第1章 方案的设计与论证 61.1设计要求 6 1.2数字温度计设计方案论证 61.2.1设计方案 61.3总体思路 81.3.1主控制器 8 1.3.2显示电路 81.3.3温度传感器 10第2章 单片机介绍 112.1 单片机技术 112.2 单片机技术的特点 122.3 本设计cpu的选型说明 122.4 89s52单片机 132.4.1各功能部件进一步的说明 132.4.2 89s52芯片的主要特性 142.4.3 89s52芯片的外部引脚功能 14第3章 protel 99 se 183.1 protel 99 se的发展 183.2如何进行原理图设计 183.2.1用protel 99 se进行电路设计的基本步骤 183.2.2电路原理图设 193.2.3 印刷电路板的设计 20 3.3 设计中的问题及解决方法 22第4章 数字式温度计的程序 234.1 数字式温度计的程序流程图 234.2 数字式温度计的主程序 244.3 数字式温度计的显示程序 264.4数字式温度计的ds18b20程序 29参考文献 33附录一 34致谢 36数字温度计的设计和制作序言此数字温度计的设计和制作涉及到单片机的软件和硬件的相关知识,程序通过c语言的编写实现其功能,单片机用以控制数码管显示以及接收传感器的数据。随着人生活水平的不段提高,人们追求方便快捷的生活方式。本课题的设计就是为了满足人们的日常需要,设计的目的为了日常生活中测量温度,提供给人们当时的温度情况。该设计控制器使用单片机at89s52,测温传感器使用ds18b20,用4位共阴led数码管以串口传送数据,实现温度显示。使用单片机设计具有体积小,重量轻;功耗低;功能强,价格低。本设计所介绍的数字温度计与传统的温度计相比,具有读数方便,测温准确,其输出温度采用数字显示,主要用于对测温比较准确的场所,或科研实验室使用。论文主要分为四部分:第一章介绍了数字温度计的设计方案与论证及一些元器件介绍,第二章介绍了单片机的原理及at89s52的功能,第三章介绍了protel 99 se,第四章介绍了数字式温度计的程序。第一章 设计要求1 1计要求测量温度基本范围0-60精度误差0.1led数码直读显示1. 2数字温度计设计方案论证 2. 方案一 由于本设计是测温电路,可以使用热敏电阻之类的器件利用其感温效应,在将随被测温度变化的电压或电流采集过来,进行a/d转换后,就可以用单片机进行数据的处理,在显示电路上,就可以将被测温度显示出来,这种设计需要用到a/d转换电路,感温电路比较麻烦。方案二 常用的测温方式有热电阻,热电偶传感器,热敏电阻,由于本设计所要的测量的是常温,上述测温方式所测的的温度范围很大,进而考虑到用温度传感器,在单片机电路设计中,大多都是使用传感器,所以这是非常容易想到所以可以采用一只温度传感器ds18b20,此传感器,可以很容易直接读取被测温度值,进行转换,就可以满足设计要求。从以上两种方案,很容易看出,采用方案二,电路比较简单,软件设计也比较简单,故采用了方案二。 1.2.1设计方案数字温度计电路设计方框图如图1-2所示,控制器采用单片机at89s52,温度传感器采用ds18b20,用4位共阴led数码管实现温度显示。 图1-21.3 总体思路1.3.1主控制器 单片机at89s52具有低电压供电和体积小等特点,四个端口只需要两个口就能满足电路系统的设计需要,产品的设计使用系统使用9v交流供电。1.3.2显示电路显示电路采用4位共阴led数码管,从p0口送字形,p2口高四位确定字位1数码管的说明led显示器应用十分广泛,1972年开始有少量led显示屏用于钟表和计算器。逐渐受到了来自其它显示技术的激烈竞争,如液晶、等离子体和真空荧光管显示器。在数字测量仪表和各种数字系统中,都要将数字量直观的显示出来,一方面供人们直接读取测量和运算的结果;两一方面用于监视数字系统的工作状况。因此,数字显示电路是许多师资设备不可缺少的部分。数字显示电路通常由译码器、驱动器和显示器等部分组成。数码显示器是用来显示数字、文字或符号的器件,现在已有多种不同类型的产品,广泛应用于各种数字设备中,目前数码管显示器正朝着小型、低功耗、平面化的方向发展。数码管引脚如图1-4所示。图1-4数码管的显示方式一般有三种:第一种是字形重叠式,它是将不同的电极重叠起来,要显示某字符,只需使相应的电极发亮即可,如辉光放电管、边光显示管等。第二种是分段式,数码管是由一些按一定规律排列的颗发光的点阵所组成,利用光点的不同组便可以显示不同的数码,如场致发光记分牌。led显示器的可靠性也非常好,单就可靠性,led的半衰期(即光输出量减少到最初值一半的时间)大概是1万到10万小时。相反,小型指示型白炽灯的半衰期(此处的半衰期指的是有一半数量的灯失效的时间)典型值是10万到数千小时不等,具体时间取决于灯的额定工作电流。led数码管有共阳和共阴两种,把这些led发光二极管的正极接到一块(一般是拼成一个8字加一个小数点)而作为一个引脚,就叫共阳的,相反的,就叫共阴的,那么应用时这个脚就分别的接vcc和gnd。再把多个这样的8字装在一起就成了多位的数码管了。2怎样测量数码管引脚找公共共阴和公共共阳首先,我们找个电源(3到5伏)和1个1k(几百的也欧的也行)的电阻,vcc串接个电阻后和gnd接在任意2个脚上,组合有很多,但总有一个led会发光的找到一个就够了,然后用gnd不动,vcc(串电阻)逐个碰剩下的脚,如果有多个led(一般是8个),那它就是共阴的了。相反用vcc不动,gnd逐个碰剩下的脚,如果有多个led(一般是8个),那它就是共阳的了。如图1-5所示。第 8 页 共 36 页图1-51.3.3温度传感器 ds18b20数字温度计是dallas公司生产的1wire,即单总线器件,具有线路简单,体积小的特点。因此用它来组成一个测温系统,具有线路简单,在一根通信线,可以挂很多这样的数字温度计,十分方便。11ds18b20的性能特点如下:(1)只要求一个端口即可实现通信。(2)在ds18b20中的每个器件上都有独一无二的序列号。(3)实际应用中不需要外部任何元器件即可实现测温。(4)测量温度范围在55。c到125。c之间。(5)数字温度计的分辨率用户可以从9位到12位选择。(6)内部有温度上、下限告警设置。2、ds18b20的引脚介绍 to92封装的ds18b20的引脚排列见图1-6所示, 图1-6(底视图)ds18b20详细引脚功能描述: 21:gnd地信号 2:dq数据输入/输出引脚。开漏单总线接口引脚。当被用着在寄生电源下,也可以向器件提供电源。 3:vdd可选择的vdd引脚。当工作于寄生电源时,此引脚必须接地。3ds18b20的使用方法 由于ds18b20采用的是1wire总线协议方式,即在一根数据线实现数据的双向传输,而对at89s52单片机来说,硬件上并不支持单总线协议,因此,我们必须采用软件的方法来模拟单总线的协议时序来完成对ds18b20芯片的访问。3由于ds18b20是在一根i/o线上读写数据,因此,对读写的数据位有着严格的时序要求。ds18b20有严格的通信协议来保证各位数据传输的正确性和完整性。该协议定义了几种信号的时序:初始化时序、读时序、写时序。所有时序都是将主机作为主设备,单总线器件作为从设备。而每一次命令和数据的传输都是从主机主动启动写时序开始,如果要求单总线器件回送数据,在进行写命令后,主机需启动读时序完成数据接收。数据和命令的传输都是低位在先。ds18b20的读时对于ds18b20的读时序分为读0时序和读1时序两个过程。对于ds18b20的读时隙是从主机把单总线拉低之后,在15秒之内就得释放单总线,以让ds18b20把数据传输到单总线上。ds18b20在完成一个读时序过程,至少需要60us才能完成。ds18b20的写时序对于ds18b20的写时序仍然分为写0时序和写1时序两个过程。对于ds18b20写0时序和写1时序的要求不同,当要写0时序时,单总线要被拉低至少60us,保证ds18b20能够在15us到45us之间能够正确地采样io总线上的“0”电平,当要写1时序时,单总线被拉低之后,在15us之内就得释放单总线。4第2章 单片机介绍2.1 单片机技术 科技的进步需要技术不断的提升。以前一块大而复杂的模拟电路花费了用户巨大的精力,并且繁多的元器件增加了成本。而现在,只需要一块几厘米见方的单片机,写入简单的程序,就可以使以前庞大的电路简单很多。相信在使用并掌握了单片机技术后,不管是在今后开发或是工作上,一定会带来意想不到的惊喜。首先要从它 随机存取存储器(ram)、只读存储器(rom)、输入/输出端口(i/0)等主要计算机功能部件都集成在一块集成电路芯片上的微型计算机。计算机的产生加快了人类改造世界的步伐,但是它毕竟体积大。微计算机(单片机)在这种情况下诞生了,纵观我们现在生活的各个领域,从导弹的导航装置,到飞机上各种仪表的控制,从计算机的网络通讯与数据传输,到工业自动化过程的实时控制和数据处理,以及我们生活中广泛使用的各种智能ic卡、电子宠物等,这些都离不开单片机。以前单片机还没诞生时,这些东西也能做,但是只能使用复杂的模拟电路。然而这样做出来的产品不仅体积大,而且成本高,并且由于长期使用,元器件不断老化,控制的精度自然也会达不到标准。在单片机产生后,我们就将控制这些东西变为智能化了,我们只需要在单片机外围接一点简单的接口电路,核心部分只是由人为的写入程序来完成。这样产品的体积变小了,成本也降低了,长期使用也不会担心精度达不到了。所以,它的优势不仅体现在在,将来将会有更多的人来接受它、使用它。据统计,我国的单片机年容量已达13 亿片,且每年以大约16%的速度增长,但相对于世界市场我国的占有率还不到1%。特别是沿海地区的玩具厂等生产产品多数用到单片机,并不断地辐射向内地。 所以,学习单片机在我国是有着广阔前景的。5 3. 2单片机技术的特点单片机由于将cpu,内存和一些必要的接口集成到一个芯片上,并且面向控制功能将结构作了一定的优化,所以它有一般芯片不具有的特点: 1. 体积小,重量轻; 2. 电源单一,功耗低; 3. 功能强,价格低; 4. 全部集成在一块芯片上,布线短,合理; 5. 数据大部分在单片机内传送,运行速度快,抗干扰能力强,可靠性高。 2.3 本设计cpu的选型说明 目前随着电子技术的发展,单片机的功能日益丰富,集成度日益提高,运行速度也越来越快。国内广泛应用的单片机主要有intel公司的mcs-51系列8位单片机,mcs-96系列16位机,microchip公司的pic单片机,ti低功耗的msp430和日立,motorola的其他类型单片机。其中mcs-51系列单片机应用范围最广,方便易用,文档详尽。如:8031片内不带程序存储器rom,使用时用户需外接程序存储器和一片逻辑电路373,外接的程序存储器多为eprom的2764系列;8051片内有4k rom,无须外接外存储器和锁存器,更能体现单片的简练。但是用户编的程序将无法烧写到其rom中,只有将程序交芯片厂代为烧写,并且是一次性的,不能改写其内容;8751与8051基本一样,但8751片内有4k的eprom,用户可以将自己编写的程序写入单片机的eprom中进行现场实验与应用,eprom的改写同样需要用紫外线灯照射一定时间擦除后才能再烧写。6由于上述类型的单片机应用的早,影响很大,已经成为事实上的工业标准。后来很多芯片厂商以各种方式与intel公司合作,也推出了同类型的单片机,如同一种单片机的多个版本一样,虽都在不断的改变制造工艺,但内核却一样,也就是说这类单片机指令系统完全兼容,绝大多数管脚也兼容;在使用上基本可以直接互换。在众多的mcs-51系列单片机中,要算 atmel 公司的at89c51,at89s51更实用,不但和8051指令、管脚完全兼容,而且其片内的4k程序存储器是flash工艺制作的,这种工艺的存储器用户可以用电的方式瞬间擦除、改写,一般专为 atmel at89xx 做的编程器均带有这些功能。显而易见,这种单片机对开发设备的要求很低,开发时间也大大缩短。写入单片机内的程序还可以进行加密,这又很好地保护了用户的劳动成果。而且,at89c51、at89s51目前的售价比8031还低,市场供应也很充足。atmel公司的51系列还有at89c2051、at89c1051等品种,这些芯片是在at89c51的基础上将一些功能精简掉后形成的精简版。at89c2051取掉了p0口和p2口,内部的程序flash存储器也小到2k,相应的价格也低一些,特别适合在一些智能玩具,手持仪器等程序不大的电路环境应用;at89c1051在2051的基础上,再次精简掉了串口功能等,程序存储器再次减小到1k,当然价格也更低。所以,根据本系统的特点,为了保证单片机接口的性能和扩展性,选用与mcs-51系列相兼容的atmel公司的at89c52单片机。2.4 89s52单片机制造工艺为cmos的at89s52单片机采用的是40只引脚的双列直插封装(dip)方式(图2-4)。如果按功能划分,它由8个部件组成,即微处理器(cpu),数据存储(ram),程序存储器(eprom),i/o口(p0口、p1口、p2口、p3口),串行口,定时器/计数器,中断系统及特殊功能寄存器(sfr)。72.4.1各功能部件进一步的说明:1. 数据存储器(ram):片内为256个字节(单元),片外最多扩至64kb。 2.程序存储器(eprom):at89c52单片机含有8kb的快擦写可编程/擦除只读存储器 (eprom),片内最多可扩至64kb。 3.中断系统:具有6个中断源,2级中断优先权 4.定时器/计数器:3个16位的定时器/计时器,具有四种工作方式。 5.串行口:1个全双工的串行口,具有四种工作方式。6.p0口、p1口、p2口、p3口:为4个并行8位i/o口7.特殊功能寄存器(sfr):共有21个,用于对于片内各功能模块进行管理,控制监视。实际上是一些控制寄存器和状态寄存器,是一个特殊功能的ram区。8.微处理器(cpu):为8位的cpu,且内含一个1位cpu(微处理器),不仅可处理字节数据,还可进行位变量的处理。2.4.2 89s52芯片的主要特性 与mcs-51 兼容 8k字节可编程闪烁存储器 寿命:1000写/擦循环 数据保留时间:10年 全静态工作:0hz-24hz 三级程序存储器锁定 256*8位内部ram 32可编程i/o线 三个16位定时器/计数器 6个中断源 可编程串行通道 低功耗的闲置和掉电模式 片内振荡器和时钟电路 2.4.3 89s52芯片的外部引脚功能8图2-4 at89s52芯片的外部引脚vcc:供电电压。gnd:接地。p0口:p0口为一个8位漏级开路双向i/o口,每脚可吸收8个ttl门电流。p0能够用于外部程序数据存储器,它可以被定义为数据/地址的低八位。 p1口:p1口是一个内部提供上拉电阻的8位双向i/o口,p1口缓冲器能接收输出4个ttl门电流。p1口管脚写入1后,被内部上拉为高,可用作输入,p1口被外部下拉为低电平时,将输出电流,这是由于内部上拉的缘故。在flash编程和校验时,p1口作为低八位地址接收。p2口:p2口为一个内部上拉电阻的8位双向i/o口,p2口缓冲器可接收,输出4个ttl门电流,当p2口被写1时,其管脚被内部上拉电阻拉高,且作为输入。并因此作为输入时,p2口的管脚被外部拉低,将输出电流。这是由于内部上拉的缘故。 p3口:p3口管脚是8个带内部上拉电阻的双向i/o口,可接收输出4个ttl门电流。当p3口写入1后,它们被内部上拉为高电平,并可用作输入接口。另外,被外部拉低的p3口将用上拉电阻输出电流(ttl)。p3口也可作为at89c52一些特殊功能口,如下所示: p3.0 rxd(串行输入口) p3.1 txd(串行输出口) p3.2 /int0(外部中断0) p3.3 /int1(外部中断1)p3.4 t0(计时器0外部输入) p3.5 t1(计时器1外部输入)p3.6 /wr(外部数据存储器写选通) p3.7 /rd(外部数据存储器读选通)p3口同时为闪烁编程和编程校验接收部分控制信号。 rst:复位输入。当振荡器复位器件时,要保持rst脚两个机器周期的高电平时间。 ale/prog:当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的低位字节。flash编程期间,此引脚用于输入编程脉冲。通常状况下,ale端以不变的频率周期输出正脉冲信号,此频率为振荡器频率的1/6。因此它可用作对外部输出的脉冲或用于定时目的。然而要注意的是:每当用作外部数据存储器时,将跳过一个ale脉冲。如果想禁止ale的输出,可在sfr8eh地址上置0。此时, ale只执行movx,只有当执行movc指令时,ale才起作用。另外,该引脚被略微拉高。如果微处理器在外部执行状态,ale禁止,置位无效。 9/psen:外部程序存储器的选通信号。在由外部程序存储器取址期间,每个机器周期会出现两次有效的/psen信号。但在访问外部数据存储器时,这两次有效的/psen信号将不出现。/ea/vpp:当/ea保持低电平时,使用外部程序存储器(0000h-ffffh),不管是否有内部程序存储器。注意加密方式1时,/ea将内部锁定为reset;当/ea端保持高电平时,使用的是内部程序存储器。在flash编程期间,此引脚也用于施加12v编程电源(vpp)。xtal1:反向振荡放大器的输入及内部时钟工作电路的输入。 xtal2:来自反向振荡器的输出。at89s52单片机的可擦除只读存储器可以反复擦除1000次。该器件采用atmel高密度非易失存储器制造技术制造,与工业标准的mcs-51指令集和输出管脚相兼容。因为将多功能8位cpu和闪烁存储器组合在单个芯片中, 所以at89c52是一种高效微控制器,且对开发设备的要求很低,从而使开发时间也大大缩短。at89s52单片机为很多嵌入式控制系统提供了一种灵活性高且价廉的方案,有利于小型化设计。第3章 protel 99 3.1 protel 99 se的发展历史随着计算机的普及,eda(electronic design automation)技术获得了越来越旺盛的生命力。1998年后期,protel公司再次引进强大技术microcode engineering公司的仿真技术和incases engineering gmbh公司的信号完整性分析技术,使得protel的eda软件步入了与unix上大型eda软件相抗衡的局面。1999年正式推出 protel 99具有pdm功能的强大eda综合设计环境。protel软件的良好信誉以及protel 99的卓越表现使之很快成为众多eda用户的手选软件。3.2如何进行原理图设计3.2.1用protel 99 se进行电路设计的基本步骤101.电路原理图设计的步骤 : 电路原理图的设计是整个电路设计的基础,因此电路原理图要设计好,以免影响后面的设计工作。电路原理图的设计一般有如下步骤: (1)设置原理图设计环境; (2)放置元件; (3)原理图布线; (4)编辑和调整; (5)检查原理图; (6)生成网络表。2.印刷电路板设计的步骤:印刷电路板设计是从电路原理图变成一个具体产品的必经之路,因此,印刷电路板设计是电路设计中最重要、最关键的一步。通常,印刷电路板设计的具体步骤如下: (1)规划电路板; (2)设置参数; (3)装入网络表; (4)元器件布局; (5)自动布线; (6)手工调整。3.2.2电路原理图设计电路原理图设计最基本的要求是正确性,其次是布局合理,最后在是正确性和布局合理的前提下力求美观。根据以上所述的电路原理图设计步骤,两级放大器电路原理图设计过程如下: (1)启动原理图设计服务器 进入protel 99 se,创建一个数据库,执行菜单file/new命令,从框中选择原理图服务器(schematic document)图标,双击该图标,建立原理图设计文档。双击文档图标,进入原理图设计服务器界面。(2)设置原理图设计环境 执行菜单design/options和tool/preferences,设置图纸大小、捕捉栅格、电气栅格等。 (3)装入所需的元件库在设计管理器中选择browse sch页面,在browse区域中的下拉框中选择library,然后单击add/remove按钮,在弹出的窗口中寻找protel 99 se子目录,在该目录中选择librarysch路径,在元件库列表中选择所需的元件库,比如miscellaneous devices ddb,ti databook库等,单击add按钮,即可把元件库增加到元件库管理器中。 (4)放置元件根据实际电路的需要,到元件库中找出所需的元件,然后用元件管理器的place按钮将元件放置在工作平面上,再根据元件之间的走线把元件调整好。 (5)原理图布线 利用protel 99 se提供的各种工具、指令进行布线,将工作平面上的器件用具有电气意义的导线、符号连接起来,构成一个完整的电路原理图。 (6)编辑和调整 利用protel 99 se 所提供的各种强大的功能对原理图进一步调整和修改,以保证原理图的美观和正确。同时对元件的编号、封装进行定义和设定等。 (7)检查原理图 使用protel 99 se 的电气规则,即执行菜单命令tool/rec对画好的电路原理图进行电气规则检查。若有错误,根据错误情况进行改正。 (8)生成网络表 网络表是电路原理图设计和印刷电路板设计之间的桥梁,执行菜单命令design/create netlist可以生成具有元件名、元件封装、参数及元件之间连接关系的网络表。3.2.3 印刷电路板设计电路设计的最终目的是为了设计出电子产品,而电子产品的物理结构是通过印刷电路板来实现的。数字式温度计的pcb版图如图3-2所示。图3-2应用protel 99 se设计印刷电路板过程如下: (1)启动印刷电路板设计服务器执行菜单file/new命令,从框中选择pcb设计服务器(pcb document)图标,双击该图标,建立pcb设计文档。双击文档图标,进入pcb设计服务器界面。 (2)规划电路板 根据要设计的电路确定电路板的尺寸。选取keep out layer复选框,执行菜单命令place/keepout/track,绘制电路板的边框。执行菜单design/options,在“signal lager”中选择bottom lager,把电路板定义为单面板。 (3)设置参数参数设置是电路板设计的非常重要的步骤,执行菜单命令design/rules,左键单击routing按钮,根据设计要求,在(rules classes)中设置参数。 选择routing layer,对布线工作层进行设置:左键单击properties,在“布线工作层面设置”对话框的“pule attributes”选项中设置tod layer为“not used”、设置 bottom layer为“any”。选择width constraint,对地线线宽进行设置:左键单击add按钮,进入线宽规则设置界面,首先在rule scope区域的filter kind选择框中选择net,然后在net下拉框中选择gnd,再在rule attributes区域将minimum width、maximum width和preferred三个输入框的线宽设置为需要的宽度。电源线宽的设置:在net下拉框中选择vcc,其他与地线线宽设置相同。 整板线宽设置:在filter kind选择框中选择whole board,然后将minimum width,maximum width和preferred三个输入框的线宽设置为需要宽度。 (4)装入元件封装库 执行菜单命令design/add/remove library,在“添加/删除元件库” 对话框中选取所有元件所对应的元件封装库,例如:pcb footprint,transistor,general ic,international rectifiers等。 (5)装入网络表 执行菜单design/load nets命令,然后在弹出的窗口中单击browse按钮,再在弹出的窗口中选择电路原理图设计生成的网络表文件(扩展名为net),如果没有错误,单击execute。若出现错误提示,必须更改错误。 (6)元器件布局 protel 99 se既可以进行自动布局也可以进行手工布局,执行菜单命令tools/auto placement/auto placer可以自动布局。布局是布线关键性的一步,为了使布局更加合理,多数设计者都采用手工布局方式。(7)自动布线 protel 99 se采用世界最先进的无网格、基于形状的对角线自动布线技术。执行菜单命令auto routing/all,并在弹出的窗口中单击route all按钮,程序即对印刷电路板进行自动布线。只要设置有关参数,元件布局合理,自动布线的成功率几乎是100%。(8) 手工调整自动布线结束后,可能存在一些令人不满意的地方,可以手工调整,把电路板设计得尽善尽美。(9) 输出印刷电路板图打印输出印刷电路板图执行菜单命令file/print/preview,形成扩展名为ppc的文件,再执行菜单命令file/print job,就可以打印输出印刷电路板图。3.3 设计中的问题及解决方法虽然protel 99 se功能强大,人机界面友好,但在设计过程中还是会不可避免的遇到一些问题。(1) 生成的印刷电路板图与电路原理图不相符,有一些元件没有连上。这种情况时有发生,问题出在原理图上,看上去原理图上的元件已经连接完毕,但画图不符合规范,导致元件并未真正连接完毕。不规范的连线有: 连线超过元器件的断点; 连线的两部分有重复。解决方法:在画原理图连线时,应尽量做到: 在元件端点处连线; 元器件连线尽量一线连通,少出现直接将其端点对接上的方法来实现。(2)在印刷电路板设计中装入网络表时元器件不能完全调入。原因有: 原理图中未定义元件的封装形式; 印刷电路板封装的名称不存在,致使在封装库中找不到; 封装可以找到,但元件的管脚名称与印刷电路板库中封装的管脚名称不一致。解决方法: 到网络表文档中查找未定义封装的元件,补上元件封装; 确认印刷电路板元件封装库是否已调入,同时检查原理图中元件封装名称是否与印刷电路板元件封装库中的名称是否一致; 使印刷电路板元件封装库中的元件与原理图中的一致。如三极管的管脚名称在原理图中定义为1,2,3,而在印刷电路板封装库中焊盘序号定义为e,b,c,必须修改印刷电路板封装库中的三极管管脚名称,使他与原理图中定义的三极管管脚名称一致。第4章 数字式温度计的程序4.1 数字式温度计的程序流程图1. 主程序流程图如图4-1所示图4-12中断程序流程图如图4-2所示图4-14.2 数字式温度计的主程序void main(void)p0=0xff; p1=0xff; p2=0xff; p3=0xff; th0=(65536 -5000)/256; tl0=(65536 -5000)%256;tmod=0x01; et0=1; ea=1; tr0=1; readtemperature();_delay_us(60000);_delay_us(60000);_delay_us(60000);readtemperature();while(1) if(f_1s)static u08 secondcount=0;f_1s = false;secondcount+;if(secondcount=1)init_ds18b20();writeonechar(0xcc); writeonechar(0x44); else if(secondcount=2)secondcount =0;sys_temperature=readtemperature();else secondcount=0;temperaturedisp(sys_temperature); /end mainvoid time0 (void) interrupt 1ledflash();sys_clock+;if(sys_clock=230 )sys_clock = 0 ;sys_second+ ;f_1s = true; th0=(65536 -5000)/256;tl0=(65536 -5000)%256;4.3 数字式温度计的显示程序#include includeconfig.hsbit dig1=p24; sbit dig2=p25;sbit dig3=p26; sbit dig4=p27; u08 led4 =0,0,0;u08 code segtab = 0x3f,/*0*/ 0x06,/*1*/ 0x5b,/*2*/ 0x4f,/*3*/ 0x66,/*4*/ 0x6d,/*5*/ 0x7d,/*6*/ 0x07,/*7*/ 0x7f,/*8*/ 0x6f,/*9*/ 0x77,/*a*/ 0x7c,/*b*/ 0x39,/*c*/ 0x58,/*c*/ 0x5e,/*d*/ 0x79,/*e*/ 0x71,/*f*/ 0x76,/*h*/ 0x74,/*h*/ 0x38,/*l*/ 0x54,/*n*/ 0x37,/*n*/ 0x5c,/*o*/ 0x73,/*p*/ 0x50,/*r*/ 0x78,/*t*/ 0x3e,/*u*/ 0x40,/*-*/;void dispdig(u08 whichdig,u08 content) dig1=1; dig2=1; dig3=1; dig4=1; p0 = content; switch (whichdig) case 1:dig1=0;break; case 2:dig2=0;break; case 3:dig3=0;break; case 4:dig4=0;break; default:break; void ledflash(void) stati

温馨提示

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

评论

0/150

提交评论