毕业设计论文基于DS18B20的多路温度检测系统的设计与实现.doc

上传人:sccc 文档编号:4862835 上传时间:2023-05-20 格式:DOC 页数:40 大小:521.02KB
返回 下载 相关 举报
毕业设计论文基于DS18B20的多路温度检测系统的设计与实现.doc_第1页
第1页 / 共40页
毕业设计论文基于DS18B20的多路温度检测系统的设计与实现.doc_第2页
第2页 / 共40页
毕业设计论文基于DS18B20的多路温度检测系统的设计与实现.doc_第3页
第3页 / 共40页
毕业设计论文基于DS18B20的多路温度检测系统的设计与实现.doc_第4页
第4页 / 共40页
毕业设计论文基于DS18B20的多路温度检测系统的设计与实现.doc_第5页
第5页 / 共40页
点击查看更多>>
资源描述

《毕业设计论文基于DS18B20的多路温度检测系统的设计与实现.doc》由会员分享,可在线阅读,更多相关《毕业设计论文基于DS18B20的多路温度检测系统的设计与实现.doc(40页珍藏版)》请在三一办公上搜索。

1、 辽宁科技大学本科生毕业设计 第IV 页基于DS18B20的多路温度检测系统的设计与实现摘要为了达到测量和检测多处温度值,就要求主系统连接多个温度传感器,由于主系统和配件之间连接器上的空闲引脚通常极为有限,要想在不增加连接器复杂度和成本的条件下给系统增加外设识别和控制功能就成为一项极具挑战性的任务。作为拥有1-Wire的DS18B20器件能够满足这些要求。本设计采用多个DS18B20连接在于同一条单线总线上,这可以在许多不同的地方放置多个DS18B20温度传感器进行温度检测。通过用单片机来实现对多个DS18B20的控制,从而实现温度检测,实现报警。显示部分采用了七段数码显示管进行显示,可同时对

2、时间和温度进行显示方便观察。键盘通过对89C51的P1口直接编程来实现。关键词:1-Wire;串行总线;七段数码显示管;温度测量The design and implementation of the multi-temperature detection system based on DS18B20AbstractIn order to achieve measurement and testing various temperature,It requires the main system linked to a number of temperature sensors,As the

3、 main system and accessories between the connector pins are usually very limited spare, not to increase the connector complexity and cost of the conditions to increase the peripheral system to identify and control has become one of the greatest challenges of task.As with 1 - Wire the DS18B20 device

4、can meet these requirementsThis design uses a number of DS18B20,what connected with a one-way bus,which can in many different places at various DS18B20 temperature sensor to detect temperature.To achieve through the use of multiple DS18B20 control, thus realizing the temperature detection,and alarm.

5、 Demonstrate a part having adopt seven section of digital display tube to carry out the convenient observation demonstrating, but carrying out display on time and the temperature at the same time.89C51 keyboard through the P1 port direct programming to achieve.Key words: 1-Wire; Serial Bus ; Seven s

6、ection of digital display tube; temperature survey 目录摘要IABSTRACTII1 绪论11.1 概述I2C总线的应用11.2 概述单总线的应用11.3 本设计的结构安排22 串行总线32.1 I2C总线32.1.1 I2C总线工作原理32.1.2 I2C总线数据传送32.2 单总线42.2.1 单总线多节点系统42.2.2 单总线数据通信53 硬件设计63.1 本设计系统结构框图63.2 系统的原理图73.3 单片机及其管脚说明73.4 用I/O口实现I2C总线协议93.5 DS18B20的读写程序和单总线协议的实现103.6 单片机外围电

7、路143.6.1 键盘143.6.2 报警153.7 三极管的简介153.8 七段数码显示管163.9 看门狗的原理183.10 晶振电路原理194 软件设计204.1 工作方案简介204.2 主程序流程图214.3 功能模块224.4 由DS18B20完成温度检测模块224.5 由DS1338完成时间读取模块274.6 单片机外围电路元件模块304.6.1 键盘模块304.6.2 报警模块32结论33参考文献34致谢35附录36 辽宁科技大学本科生毕业设计 第 23 页1 绪论在单片机应用系统中,要处理的数据不仅很多,而且很重要时,通常的做法是用并行口扩展单片机外部数据存储器芯片。近年来,随

8、着半导体技术的不断发展,陆续出现了一些新的数据要求非常严格的芯片,比较典型的有基于I2C 总线接口的24 系列,基于SPI 总线的25 系列,以及并行总线接口的28 系列,29系列,这些芯片的特点是芯片掉电后数据不会丢失,数据可以保存几年、甚至几十年,这些芯片采用I2C、SPI 或Microwire 串行总线协议,与单片机接口通常仅占用24个I/ O 口,可以最大限度地节省单片机的资源,并且数据可以反复擦写1。1.1 概述I2C总线的应用Philips公司开发的I2C总线是串行总线的一个应用,它主要应用于单片机外围芯片的扩展。它只需两根线即可实现单片机与总线上各个具有I2C总线接口的外围芯片进

9、行数据交换。该协议是解决单片机I/O口资源紧张的有效措施,I2C总线是目前最完善的外围器件的扩展总线,具有最完善的总线规范和最方便的用户界面,其上可挂接多达128个串行外围器件或设备。目前有很多半导体集成电路上都集成了I2C接口。带有I2C接口的单片机有:CYGNAL的 C8051F0XX系列,PHILIPSP87LPC7XX系列,MICROCHIP的PIC16C6XX系列等。很多外围器件如存储器、监控芯片等也提供I2C接口。1.2 概述单总线的应用单总线是一种最简单的串行总线形式, 它通过单条连接线完成了全部的控制、通信和供电, 节省了I/O 口, 降低了系统成本并简化了设计。目前常用的微机

10、与外设之间进行数据传输的串行总线主要有I2C总线、SPI总线和SCI总线。其中I2C总线以同步串行2线方式进行通信(一条时钟线,一条数据线),SPI总线则以同步串行3线方式进行通信(一条时钟线,一条数据输入线,一条数据输出线),而SCI总线是以异步方式进行通信(一条数据输入线,一条数据输出线)的。这些总线至少需要两条或两条以上的信号线。近年来,美国的达拉斯半导体公司(DALLASSEMICONDUCTOR)推出了一项特有的单总线(1Wire Bus)技术3。该技术与上述总线不同,它采用单根信号线,既可传输时钟,又能传输数据,而且数据传输是双向的,因而这种单总线技术具有线路简单,硬件开销少,成本

11、低廉,便于总线扩展和维护等优点。单总线适用于单主机系统,能够控制一个或多个从机设备。主机可以是微控制器,从机可以是单总线器件,它们之间的数据交换只通过一条信号线。当只有一个从机设备时,系统可按单节点系统操作;当有多个从机设备时,系统则按多节点系统操作。本文结合以单总线温度传感器构成的温度测控系统, 详细讲述单总线 器件与常用的8051系列单片机的软件接口。1.3 本设计的结构安排如前所述,本设计就是采用单片机模拟串口协议实现带电子钟的温度检测系统。本设计的结构安排如下:第2章简单介绍两种串行协议即I2C总线协议和单总线协议的原理、特点、时序以及使用方法。第3章介绍本设计应用I2C总线协议和单总

12、线协议实现带电子钟的温度检测系统的硬件。具体的芯片选择和简单的芯片介绍。并且给出了本设计所用主机ATC89C51单片机的介绍。以及I2C协议和单总线协议在ATC89C51单片机上的实现。最后给出了人机接口的电路图,并对键盘功能和电路进行了介绍。第4章介绍本设计I2C总线协议和单总线协议的软件实现。并给出了人机接口部分的驱动程序包括键盘有液晶显示的程序。给出了设计整体的流程图。这章是设计的重点。本设计因为采用的是串行总线器件所以对于硬件设计相对简单。但软件部分就是此次设计的难点。下面,我们就逐章进入本设计的全过程。2 串行总线2.1 I2C总线2.1.1 I2C总线工作原理I2C( Inter-

13、Integrated Circuit)总线是一种由PHILIPS公司开发的两线制总线,由一条串行数据线SDA和一条串行时钟线SCL组成。该总线是双向、两线、串行、多主控(multi-master)接口标准,具有总线仲裁机制,非常适合在器件之间进行近距离、非经常性的数据通信。由于其使用两线的硬件接口简单,I2C总线的应用越来越广泛。实现I2C总线通信协议主要有两种方法:利角MCU对两根I/O口线进行软件编程,模拟I2C总线的SCL和SDA时序要求:使用专用I2C总线控制核,但受其主机(host)接口方式和时钟频率的限制,在有些场合应用并不方便。本设计就是对89C51的两个I/O口进行编程,模拟I

14、2C总线的SCL和SDA时序要求的。在CPU与被控IC之间、IC与IC之间进行双向传送,最高传送速率100kbps。各种被控制电路均并联在这条总线上,但就像电话机一样只有拨通各自的号码才能工作,所以每个电路和模块都有唯一的地址,在信息的传输过程中,I2C总线上并接的每一模块电路既是主控器(或被控器),又是发送器(或接收器),这取决于它所要完成的功能。CPL发出的控制信号分为地址码和控制量两部分,地址码用来选址,即接通需要控制的电路,确定控制的种类;控制量决定该调整的类别(如对比度、亮度等)及需要调整的量。这样,各控制电路虽然挂在同一条总线上,却彼此独立,互不相关。2.1.2 I2C总线数据传送

15、在I2C总线上传送的一个数据字节由八位数组成,总线对每次传送的字节数没有限制,但每个字节后必须跟一位应答位。传输速率可达400K波特。数据传送时,高位在前,低位在后,这和传统的串行通通讯不同。数据传输时,在时钟线SCL高电平期间,数据线SDA上的信息要保持不变,在SCL低电平期间,SDA上的电平才允许变化。每个SCL脉冲对应SDA上的一位数据。如图2.1所示。允许数据变化数据线上数据有效图2.1 I2C总线位传输如果在时钟线SCL高电平期间,SDA上的电平出现了下降沿,这种状态规定为起始信号(S);如果在时钟线SCL高电平期间,SDA上的1电平出现上升沿,这种状态规定为终止信号(P)。2.2

16、单总线2.2.1 单总线多节点系统美国的达拉斯半导体公司(DALLAS SEMICONDUCTOR) 推出了一项特有的单总线(1 - Wire Bus) 技术。它采用单根信号线, 既可传输时钟, 又能传输数据, 而且数据传输是双向的,主机可以是微控制器,从机可以是单总线器件,它们之间的数据交换只通过一条信号线。单总线多节点系统示意图如下图2.2所示。微控制器(主机)1-WIREDEVICEn-11-Wire device21-WIREDEVICEn1-WIREDEVICE1 图2.2 单总线多节点系统示意图单总线技术是在一根总线上仅有一个主系统和若干个从系统组成的计算机应用系统,由于总线上的所

17、有器件都通过1 条信号线传输信息,这样,整个系统要按单总线协议规定的时序进行工作,具体的内容是初始化器件、识别器件和进行数据交换。目前,单总线器件主要有数字温度传感器(如DS18B20)、A/D 转换器(DS2450)、门禁、身份识别器(如DS1990A)、单总线控制器(如DS1WM)等。本设计应用实例以DS18B20为温度传感器,构建了多点温度检测系统。系统采用1-Wire公众域(PD)软件应用程序接口,采用循环程序结构实现查看任何一个检测点的编号、温度值等数据指示,实现了多个检测点数据的自动化监管。2.2.2 单总线数据通信单总线技术实现的硬件简单,但芯片的品种繁多,在适当的外部电路中能完

18、成复杂的操作,这些功能的实现,则依赖良好的软件环境支持。作为一种与目前大多数标准串行数据通信方式不同的串行数据传输方式,它有自己独特的通信协议单总线协议2 (或称一线协议)。单总线协议定义了如下几种信号类型:复位脉冲、应答脉冲、写0、写I,读0和读1。所有这些信号,除了应答脉冲以外,都有由主机发出同步信号,并且所有的命令和数据都是字节低位在前,这一点与多数标准串行通信方式不同。3 硬件设计本系统的硬件电路包括主机、温度与检测与控制、人机对话(键盘/显示/报警)和其他扩展电路(电子日历/复位电路)4个主要部分。图3.1为系统的硬件电路原理图3.1 本设计系统结构框图温度/时间液晶显示键盘报警主机

19、集成温度传感器DS18B20数字温度传感器DS18B20串行实时时钟DS1338智能温度传感器DS18B20 图3.1 系统的结构框图由于系统控制方案简单,数据量也不大,因此选用89C51作为控制系统的核心,也可视具体情况换用8051、8052、8751、8752、80C51、89C52等。其中,8051、8052、8751、8752的各个引脚输入/输出电平只与TTL电平兼容;89C51、89C52、80C51各引脚输入/输出电平既与TTL电平兼容,也与CMOS电平兼容。3.2 系统的原理图图3.2 系统原理图3.3 单片机及其管脚说明AT89C51是一种带4K字节闪烁可编程可擦除只读存储器(

20、FPEROMFlash Programmable and Erasable Read Only Memory)的低电压,高性能CMOS8位微处理器,俗称单片机。AT89C2051是一种带2K字节闪烁可编程可擦除只读存储器的单片机。该器件采用ATMEL高密度非易失存储器制造技术制造,与工业标准的MCS-51指令集和输出管脚相兼容。下面指出了各个管脚的用途。VCC:供电电压。GND:接地。P0口:P0口为一个8位漏级开路双向I/O口,每脚可吸收8个TTL门电流。当P1口的管脚第一次写1时,被定义为高阻输入。P0能够用于外部程序数据存储器,它可以被定义为数据/地址的第八位。在FIASH编程时,P0

21、口作为原码输入口,当FIASH进行校验时,P0输出原码,此时P0外部必须被拉高。P1口:P1口是一个内部提供上拉电阻的8位双向I/O口,P1口缓冲器能接收输出4TTL门电流。P1口管脚写入1后,被内部上拉为高,可用作输入,P1口被外部下拉为低电平时,将输出电流,这是由于内部上拉的缘故。在FLASH编程和校验时,P1口作为第八位地址接收。 P2口:P2口为一个内部上拉电阻的8位双向I/O口,P2口缓冲器可接收,输出4个TTL门电流,当P2口被写“1”时,其管脚被内部上拉电阻拉高,且作为输入。并因此作为输入时,P2口的管脚被外部拉低,将输出电流。P2口当用于外部程序存储器或16位地址外部数据存储器

22、进行存取时,P2口输出地址的高八位。在给出地址“1”时,它利用内部上拉优势,当对外部八位地址数据存储器进行读写时,P2口输出其特殊功能寄存器的内容。P2口在FLASH编程和校验时接收高八位地址信号和控制信号。P3口:P3口管脚是8个带内部上拉电阻的双向I/O口,可接收输出4个TTL门电流。当P3口写入“1”后,它们被内部上拉为高电平,并用作输入。作为输入,由于外部下拉为低电平,P3口将输出电流(ILL)这是由于上拉的缘故。P3口也可作为AT89C51的一些特殊功能口, P3口管脚 备选功如下:P3.0 RXD(串行输入口)P3.1 TXD(串行输出口)P3.2 /INT0(外部中断0)P3.3

23、 /INT1(外部中断1)P3.4 T0(记时器0外部输入)P3.5 T1(记时器1外部输入)P3.6 /WR(外部数据存储器写选通)P3.7 /RD(外部数据存储器读选通)P3口同时为闪烁编程和编程校验接收一些控制信号。RST:复位输入。当振荡器复位器件时,要保持RST脚两个机器周期的高电平时间。ALE/PROG:当访问外部存储器,地址锁存允许的输出电平用于锁存地址地位字节。/PSEN:外部程序存储器的选通信号。在由外部程序存储器取指期间,每个机器周期两次/PSEN有效。但在访问外部数据存储器时,这两次有效的/PSEN信号将不出现。/EA/VPP:在FLASH编程期间,此引脚也用于施加12V

24、编程电源(VPP)。XTAL1:反向振荡放大器的输入及内部时钟工作电路的输入。XTAL2:来自反向振荡器的输出。3.4 用I/O口实现I2C总线协议为了记录系统每次检测温度的时间,本设计特别在温度检测的基础上增加了电子钟的功能。因为本设计主要是研究串行总线,所以选用具有I2C协议的DS1338串行实时时钟(RTC)芯片,并用单片机的两个普通I/O线实现I2C总线功能,这样可以最大限度地节省单片机的资源6。下面就DS1338芯片的特性进行一下介绍。DS1338串行实时时钟(RTC)就是其中的一种,DS1338具有低功耗、全二进制编码的十进制(BCD)时钟/日历,外加56字节NV SRAM。地址与

25、数据通过I2C总线串行传送。时钟/日历可以提供秒、分、时、日、月、年信息。对于少于31天的月份,到每月的最后一天会自动进行调节,包括闰年修正。DS1338采用内置晶振和表面贴封装,并为数据存储提供56字节电池备份的NV RAM 。DS1338采用I2C串行接口协议,具有可编程方波输出功能自动电源失效检测与转换电路并通过UL认证等一系列特性。本设计主要应用DS1338串行实时时钟(RTC)来实现带电子钟的温度检测系统。DS1338的接口电路如图3.3所示5。图3.3 DS1338的接口电路目前,51、96系列的单片机应用很广,但是由于它们都没有I2C 总线接口,从而限制了在这些系统中使用具有I2

26、C 总线接口的器件。通过对I2C 总线时序的分析,可以用51 单片机的两根I/ O 线来实现I2C总线的功能。本设计就是用ATC89C51的通用I/ O口来作为I2C总线接口,并由软件控制实现数据传送的。连接电路如图3.4所示,具体的软件实现本设计在软件设计中将给出详细的介绍。图3.4 DS18B20与单片机接口电路3.5 DS18B20的读写程序和单总线协议的实现DS18B20的读写程序和测温程序相同,只是得到的温度值的位数因分辨率不同而不同,且温度转换时的延时时间由2s减为750ms。 DS18B20测温原理中低温度系数晶振的振荡频率受温度影响很小,用于产生固定频率的脉冲信号送给计数器1。

27、高温度系数晶振随温度变化其振荡率明显改变,所产生的信号作为计数器2的脉冲输入。计数器1和温度寄存器被预置在55所对应的一个基数值。计数器1对低温度系数晶振产生的脉冲信号进行减法计数,当计数器1的预置值减到0时,温度寄存器的值将加1,计数器1的预置将重新被装入,计数器1重新开始对低温度系数晶振产生的脉冲信号进行计数,如此循环直到计数器2计数到0时,停止温度寄存器值的累加,此时温度寄存器中的数值即为所测温度。图3.5中的斜率累加器用于补偿和修正测温过程中的非线性,其输出用于修正计数器1的预置值。图3.5 DS18B20测温原理框图DS18B20有4个主要的数据部件: (1)光刻ROM中的64位序列

28、号是出厂前被光刻好的,它可以看作是该DS18B20的地址序列码。64位光刻ROM的排列是:开始8位(28H)是产品类型标号,接着的48位是该DS18B20自身的序列号,最后8位是前面56位的循环冗余校验码(CRC=X8+X5+X4+1)。光刻ROM的作用是使每一个DS18B20都各不相同,这样就可以实现一根总线上挂接多个DS18B20的目的。 (2)DS18B20中的温度传感器可完成对温度的测量,以12位转化为例:用16位符号扩展的二进制补码读数形式提供,以0.0625/LSB形式表达,其中S为符号位。 这是12位转化后得到的12位数据,存储在18B20的两个8比特的RAM中,二进制中的前面5

29、位是符号位,如果测得的温度大于0,这5位为0,只要将测到的数值乘于0.0625即可得到实际温度;如果温度小于0,这5位为1,测到的数值需要取反加1再乘于0.0625即可得到实际温度。 例如+125的数字输出为07D0H,+25.0625的数字输出为0191H,-25.0625的数字输出为FF6FH,-55的数字输出为FC90H。 (3)DS18B20温度传感器的存储器 DS18B20温度传感器的内部存储器包括一个高速暂存RAM和一个非易失性的可电擦除的EEPRAM,后者存放高温度和低温度触发器TH、TL和结构寄存器。 (4)配置寄存器 该字节各位的意义如下:表3.1 配置寄存器结构TMR1R0

30、11111 低五位一直都是1,TM是测试模式位,用于设置DS18B20在工作模式还是在测试模式。在DS18B20出厂时该位被设置为0,用户不要去改动。R1和R0用来设置分辨率,如下表3.2所示:(DS18B20出厂时被设置为12位)表3.2 温度分辨率设置表R1R0分辨率温度最大转换时间009位93.75ms0110位187.5ms1011位375ms1112位750ms本设计采用多个温度传感器DS18B20对温度进行采样,从而进行温度的检测与控制。因为DS18B20是使用单总线协议的,所以具有单总线的优点,本设计通过对DS18B20的使用,使读者对单总线协议有了更深的认识。下面就DS18B2

31、0芯片的特性进行一下介绍。与 DALLAS 公司早期生产的 DS1820 相比,DS18B20具有如下特点4:(1) 精度:DS18B20 在-10+85范围内精度为+-0.5。(2) 分辨率:DS18B20 的分辨率由912位(包括1位符号位)数据在线编程决定。(3) 温度转换时间:DS18B20 的转换时间与设定的分辨率有关,当设定为9位时,最大转换时间为93.75ms;10位时,为187.5ms;11位时,为375ms;12位时,为750ms。(4) 电源电压范围:在保证温度转换精度为+-0.5的情况下,电源电压可为+3.0V+5.5。(5) 程序设置寄存器:该寄存器主要用来设置分辨率位

32、数的。(6) 64位ROM编码:从高位算起,该ROM有一个字节的CRC校验码,6个字节的产品序号和一个字节的家族代码。对于家族代码, DS18B20是28H。(7) 温度数据寄存器:寄存器由两个字节组成,DS18B20 对于12 位的分辨率为2-4,如图3.6所示4。232221202-12-22-3低位字节2-4高位字节Msb 单位= LsbSSSSS262524符号位图3.6 DS18B20的分辨率(8) 内部存储器分配:DS18B20H 高速暂存寄存器是DS18B20 高速暂存寄存器的存储分配温度值低位字节E2ROM温度值高位字节TH/用户字节1TH/用户字节1(报警上限)TL/用户字节

33、2TL/用户字节2(报警下限)程序设置字节程序设置字节保留保留保留CRC 图3.7 DS18B20 高速暂存寄存器的存储分配DS18B20 采用TO92封装或8脚SOIC封装。其引脚排列及含义如下图3.8所示。8 NCNC 1DALLASDS18B206 NC7 NCVDD 3NC 25 GNDNC 1GND:地 VDD:电源DQ:数据输入/输出 NC:空脚1 GND 2 DQ 3 VDD图3.8 DS18B20 的封装DS18B20 的供电方式有两种: 一种是寄生电源;另一种为外电源供电,因为多个器件挂在总线上,为了识别不同的器件,在程序设计中一般有四个步骤:初始化命令;传送ROM 命令;传

34、送RAM命令;数据交换命令。本设计在软件介绍部分会就DS18B20 温度传感器件具体介绍其每一部分的时序。本系统利用DS18B20完成温度采集及转换工作,而单片机89C51起实时控制及通讯作用.可以将多个DS18B20与单片机一位总线相连,形成多点测温, 本设计研究多片DS18B20与单片机构成的测温系统。DSS18B20与单片机接口电路如图3.9所示.图3.9 DS18B20与单片机接口电路3.6 单片机外围电路3.6.1 键盘本设计采用89C51单片机的P1口来实现。本设计键盘的连接如下图3.10所示。图3.10 键盘的连接将全部行线置低电平,然后检测列线的状态。只要有一列的电平为低,则表

35、示键盘中有键被按下,而且闭合的键位于低电平线与3根行线相交叉的3个按键之中。若所有列线均为高电平,则键盘中无键按下。在确认有键按下后,即可进入确定具体闭合键的过程。其方法是:依次将行线置为低电平,即在置某根行线为低电平时,其它线为高电平。在确定某根行线位置为低电平后,再逐行检测各列线的电平状态。若某列为低,则该列线与置为低电平的行线交叉处的按键就是闭合的按键。3.6.2 报警本设计的报警功能由蜂鸣器实现。当由于意外因素导致DS18B20温度高于设置温度时,P1.7口送出的低电平经反向器驱动蜂鸣器鸣叫报警。3.7 三极管的简介三极管是一种控制元件,三极管的作用非常的大,可以说没有三极管的发明就没

36、有现代信息社会的如此多样化,电子管是他的前身,但是电子管体积大耗电量巨大,现在已经被淘汰。三极管主要用来控制电流的大小,以共发射极接法为例(信号从基极输入,从集电极输出,发射极接地),当基极电压UB有一个微小的变化时,基极电流IB也会随之有一小的变化,受基极电流IB的控制,集电极电流IC会有一个很大的变化,基极电流IB越大,集电极电流IC也越大,反之,基极电流越小,集电极电流也越小,即基极电流控制集电极电流的变化。但是集电极电流的变化比基极电流的变化大得多,这就是三极管的电流放大作用。刚才说了电流放大是晶体三极管的作用,其实质是三极管能以基极电流微小的变化量来控制集电极电流较大的变化量。这是三

37、极管最基本的和最重要的特性。我们将Ic/Ib的比值称为晶体三极管的电流放大倍数,用符号“”表示。电流放大倍数对于某一只三极管来说是一个定值,但随着三极管工作时基极电流的变化也会有一定的改变。根据三极管的作用我们分析它可以把微弱的电信号变成一定强度的信号,当然这种转换仍然遵循能量守恒,它只是把电源的能量转换成信号的能量罢了。三极管有一个重要参数就是电流放大系数。当三极管的基极上加一个微小的电流时,在集电极上可以得到一个是注入电流倍的电流,即集电极电流。集电极电流随基极电流的变化而变化,并且基极电流很小的变化可以引起集电极电流很大的变化,这就是三极管的放大作用。三极管的作用还有电子开关,配合其它元

38、件还可以构成振荡器,此外三极管还有稳压的作用。3.8 七段数码显示管七段数码管在工业控制中有着很广泛的应用,例如用来显示温度、数量、重量、日期、时间,还可以用来显示比赛的比分等,具有显示醒目、直观的优点.无论是共阴极还是共阳极的数码管,都分段码和位码,要想让它亮必须驱动它! 以共阳极4位数码管为例,即首先要选中你想要电亮的数码管的位,要想让4个数码管全亮须4个位全选中,所谓选中的含义就是给高电平(共阳极)。数码管分8个段,即段码,每个段的亮灭都对应着一个数字或字母,想让哪一段亮就给哪段送低电平。其中扫描分静态扫描和动态扫描! 静态扫描比动态扫描简单些。动态扫描他在没个时间只能点亮一位数码管,但

39、是由于扫描频率的设置,单片机的速度是很快的,但几十MS内就能让4位数码管循环亮灭很多次,这些人的肉眼是分辨不出来的,数码管的亮度可以通过软件设置(扫描频率的设置)调整。每个数码管都有a、b、c、d、e、f、g七个笔划和一个小数点DP,这八个联对应二极管阳极,阴极都联在一起(称共阴极)。以四位数码管矩阵为例,四个数码管的a、b、c、d、e、f、g七个笔划和一个小数点DP电极分别并联在一起。当c行高电平,3列低电平,其他行列都为高阻态时,第三个数码管的c笔划亮,通过扫描方式在1/20秒内四个数码管的笔划该亮的都亮一次,由于视觉暂留,就会看到结果。本设计是通过三极管来驱动数码管显示,当基极电流很小时

40、,无论基极电流如何变化,集电极电流都接近为0,集电极电流不随基极电流而变化,也就是管子不导通;当基极电流增大到一定值以后,集电极电流此后大于0,且集电极电流随着基极电流而变化,这是放大状态;当基极电流继续增大,达到一定值以后,集电极电流此后再也大不上去了,此后即便是基极电流再增加,集电极电流也不能增大,即饱和了。对于单片机端口通过晶体管驱动负载的情况,无论负载是数码管还是继电器,晶体管都只能工作在截止状态或饱和状态,是不能工作在放大状态的。本设计每个三极管负责一段,最后那个三极管负责小数点位。当置于低电平时才有效,每个数码管都会显示一个相同的数字,所以然后需把其他三个数码管置高电平。通过这种方

41、法就能把温度测出来。数码管连接如下图3.11所示。图3.11 数码管与单片机接口电路3.9 看门狗的原理在由单片机构成的微型计算机系统中,由于单片机的工作常常会受到来自外界电磁场的干扰,造成程序的跑飞,而陷入死循环,程序的正常运行被打断,由单片机控制的系统无法继续工作,会造成整个系统的陷入停滞状态,发生不可预料的后果,所以出于对单片机运行状态进行实时监测的考虑,便产生了一种专门用于监测单片机程序运行状态的芯片,俗称看门狗。看门狗电路电路的应用,使单片机可以在无人状态下实现连续工作,其工作原理是:看门狗芯片和单片机的一个I/O引脚相连,该I/O引脚通过程序控制它定时地往看门狗的这个引脚上送入高电

42、平(或低电平),这一程序语句是分散地放在单片机其他控制语句中间的,一旦单片机由于干扰造成程序跑飞后而陷入某一程序段不进入死循环状态时,写看门狗引脚的程序便不能被执行,这个时候,看门狗电路就会由于得不到单片机送来的信号,便在它和单片机复位引脚相连的引脚上送出一个复位信号,使单片机发生复位,即程序从程序存储器的起始位置开始执行,这样便实现了单片机的自动复位。本设计采用X25045芯片的看门狗定时器功能,实现对系统进行复位的。看门狗定时器对微控制器提供了独立的保护系统。它提供了三种定时时间,可用编程选择200us、600us和6.4s,本设计采用6.4s对看门狗进行监测。在设定的时间内如果没有对X2

43、5045进行访问,则看门狗以RESET信号做输出响应,即变为高电平,延时约200ms以后RESET由高电平变位低电平,实现对系统进行复位。复位电路的基本功能是:系统上电时提供复位信号,直至系统电源稳定后,撤销复位信号。为可靠起见,电源稳定后还要经一定的延时才撤销复位信号,以防电源开关或电源插头分-合过程中引起的抖动而影响复位。图3.12所示的RC复位电路可以实现上述基本功能。图3.12 RC复位电路3.10 晶振电路原理 晶振是晶体振荡器的简称,在电气上它可以等效成一个电容和一个电阻并联再串联一个电容的二端网络,电工学上这个网络有两个谐振点,以频率的高低分其中较低的频率是串联谐振,较高的频率是

44、并联谐振。由于晶体自身的特性致使这两个频率的距离相当的接近,在这个极窄的频率范围内,晶振等效为一个电感,所以只要晶振的两端并联上合适的电容它就会组成并联谐振电路。这个并联谐振电路加到一个负反馈电路中就可以构成正弦波振荡电路,由于晶振等效为电感的频率范围很窄,所以即使其他元件的参数变化很大,这个振荡器的频率也不会有很大的变化。 晶振有一个重要的参数,那就是负载电容值,选择与负载电容值相等的并联电容,就可以得到晶振标称的谐振频率。 一般的晶振振荡电路都是在一个反相放大器(注意是放大器不是反相器)的两端接入晶振,再有两个电容分别接到晶振的两端,每个电容的另一端再接到地,这两个电容串联的容量值就应该等

45、于负载电容,请注意一般IC的引脚都有等效输入电容,这个不能忽略。4 软件设计4.1 工作方案简介程序处理是整个系统的关键,即简洁的硬件结构是靠复杂的软件来支持的。本设计采用的是基于I2C总线协议和单总线协议的温度测控系统。系统上电复位后先处于停止状态,等待输入初始时间和报警温度。显示器显示输入的时间和温度;时间和报警温度设定好后就可以按确定键启动系统工作了。温度检测系统不断定时检测当前温度,并送往显示器显示,达到报警值时启动报警电路报警。并显示当前时间;启动后不能再修改报警温度,必须使电路复位回到初始状态再重新设定报警温度。4.2 主程序流程图开始各数据缓冲区、各标志位初始化调用键盘管理子程序确定键闭合时返回调温度检测子程序当前温度检测缓冲区调显示子程序调报警子程序调时钟程序调显示子程序访问看门狗子程序图4.1主程序流程图4.3 功能模块根据上面对工作流程的分析,系统软件可以分为以下几个功能模块:(1)温度检测及温度值变换:由单总线温度传感器DS18B20完成(2)时间的读取:由具有I2C总线协议的传行实时时钟DS1338完成(3)键盘管理:监测键盘输入,接收初始时间设置,

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 建筑/施工/环境 > 农业报告


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号