资源预览内容
第1页 / 共42页
第2页 / 共42页
第3页 / 共42页
第4页 / 共42页
第5页 / 共42页
第6页 / 共42页
第7页 / 共42页
第8页 / 共42页
第9页 / 共42页
第10页 / 共42页
亲,该文档总共42页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述
辽宁科技大学本科生毕业设计 第IV 页基于DS18B20的多路温度检测系统的设计与实现摘要为了达到测量和检测多处温度值,就要求主系统连接多个温度传感器,由于主系统和配件之间连接器上的空闲引脚通常极为有限,要想在不增加连接器复杂度和成本的条件下给系统增加外设识别和控制功能就成为一项极具挑战性的任务。作为拥有1-Wire的DS18B20器件能够满足这些要求。本设计采用多个DS18B20连接在于同一条单线总线上,这可以在许多不同的地方放置多个DS18B20温度传感器进行温度检测。通过用单片机来实现对多个DS18B20的控制,从而实现温度检测,实现报警。显示部分采用了七段数码显示管进行显示,可同时对时间和温度进行显示方便观察。键盘通过对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 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 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. 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 section 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 单片机外围电路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 绪论在单片机应用系统中,要处理的数据不仅很多,而且很重要时,通常的做法是用并行口扩展单片机外部数据存储器芯片。近年来,随着半导体技术的不断发展,陆续出现了一些新的数据要求非常严格的芯片,比较典型的有基于I2C 总线接口的24 系列,基于SPI 总线的25 系列,以及并行总线接口的28 系列,29系列,这些芯片的特点是芯片掉电后数据不会丢失,数据可以保存几年、甚至几十年,这些芯片采用I2C、SPI 或Microwire 串行总线协议,与单片机接口通常仅占用24个I/ O 口,可以最大限度地节省单片机的资源,并且数据可以反复擦写1。1.1 概述I2C总线的应用Philips公司开发的I2C总线是串行总线的一个应用,它主要应用于单片机外围芯片的扩展。它只需两根线即可实现单片机与总线上各个具有I2C总线接口的外围芯片进行数据交换。该协议是解决单片机I/O口资源紧张的有效措施,I2C总线是目前最完善的外围器件的扩展总线,具有最完善的总线规范和最方便的用户界面,其上可挂接多达128个串行外围器件或设备。目前有很多半导体集成电路上都集成了I2C接口。带有I2C接口的单片机有:CYGNAL的 C8051F0XX系列,PHILIPSP87LPC7XX系列,MICROCHIP的PIC16C6XX系列等。很多外围器件如存储器、监控芯片等也提供I2C接口。1.2 概述单总线的应用单总线是一种最简单的串行总线形式, 它通过单条连接线完成了全部的控制、通信和供电, 节省了I/O 口, 降低了系统成本并简化了设计。目前常用的微机与外设之间进行数据传输的串行总线主要有I2C总线、SPI总线和SCI总线。其中I2C总线以同步串行2线方式进行通信(一条时钟线,一条数据线),SPI总线则以同步串行3线方式进行通信(一条时钟线,一条数据输入线,一条数据输出线),而SCI总线是以异步方式进行通信(一条数据输入线,一条数据输出线)的。这些总线至少需要两条或两条以上的信号线。近年来,美国的达拉斯半导体公司(DALLASSEMICONDUCTOR)推出了一项特有的单总线(1Wire Bus)技术3。该技术与上述总线不同,它采用单根信号线,既可传输时钟,又能传输数据,而且数据传输是双向的,因而这种单总线技术具有线路简单,硬件开销少,成本低廉,便于总线扩展和维护等优点。单总线适用于单主机系统,能够控制一个或多个从机设备。主机可以是微控制器,从机可以是单总线器件,它们之间的数据交换只通过一条信号线。当只有一个从机设备时,系统可按单节点系统操作;当有多个从机设备时,系统则按多节点系统操作。本文结合以单总线温度传感器构成的温度测控系统, 详细讲述单总线 器件与常用的8051系列单片机的软件接口。1.3 本设计的结构安排如前所述,本设计就是采用单片机模拟串口协议实现带电子钟的温度检测系统。本设计的结构安排如下:第2章简单介绍两种串行协议即I2C总线协议和单总线协议的原理、特点、时序以及使用方法。第3章介绍本设计应用I2C总线协议和单总线协议实现带电子钟的温度检测系统的硬件。具体的芯片选择和简单的芯片介绍。并且给出了本设计所用主机ATC89C51单片机的介绍。以及I2C协议和单总线协议在ATC89C51单片机上的实现。最后给出了人机接口的电路图,并对键盘功能和电路进行了介绍。第4章介绍本设计I2C总线协议和单总线协议的软件实现。并给出了人机接口部分的驱动程序包括键盘有液晶显示的程序。给出了设计整体的流程图。这章是设计的重点。本设计因为采用的是串行总线器件所以对于硬件设计相对简单。但软件部分就是此次设计的难点。下面,我们就逐章进入本设计的全过程。2 串行总线2.1 I2C总线2.1.1 I2C总线工作原理I2C( Inter-Integrated Circuit)总线是一种由PHILIPS公司开发的两线制总线,由一条串行数据线SDA和一条串行时钟线SCL组成。该总线是双向、两线、串行、多主控(multi-master)接口标准,具有总线仲裁机制,非常适合在器件之间进行近距离、非经常性的数据通信。由于其使用两线的硬件接口简单,I2C总线的应用越来越广泛。实现I2C总线通信协议主要有两种方法:利角MCU对两根I/O口线进行软件编程,模拟I2C总线的SCL和SDA时序要求:使用专用I2C总线控制核,但受其主机(host)接口方式和时钟频率的限制,在有些场合应用并不方便。本设计就是对89C51的两个I/O口进行编程,模拟I2C总线的SCL和SDA时序要求的。在CPU与被控IC之间、IC与IC之间进行双向传送,最高传送速率100kbps。各种被控制电路均并联在这条总线上,但就像电话机一样只有拨通各自的号码才能工作,所以每个电路和模块都有唯一的地址,在信息的传输过程中,I2C总线上并接的每一模块电路既是主控器(或被控器),又是发送器(或接收器),这取决于它所要完成的功能。CPL发出的控制信号分为地址码和控制量两部分,地址码用来选址,即接通需要控制的电路,确定控制的种类;控制量决定该调整的类别(如对比度、亮度等)及需要调整的量。这样,各控制电路虽然挂在同一条总线上,却彼此独立,互不相关。2.1.2 I2C总线数据传送在I2C总线上传送的一个数据字节由八位数组成,总线对每次传送的字节数没有限制,但每个字节后必须跟一位应答位。传输速率可达400K波特。数据传送时,高位在前,低位在后,这和传统的串行通通讯不同。数据传输时,在时钟线SCL高电平期间,数据线SDA上的信息要保持不变,在SCL低电平期间,SDA上的电平才允许变化。每个SCL脉冲对应SDA上的一位数据。如图2.1所示。允许数据变化数据线上数据有效图2.1 I2C总线位传输如果在时钟线SCL高电平期间,SDA上的电平出现了下降沿,这种状态规定为起始信号(S);如果在时钟线SCL高电平期间,SDA上的1电平出现上升沿,这种状态规定为终止信号(P)。2.2 单总线2.2.1 单总线多节点系统美国的达拉斯半导体公司(DALLAS SEMICONDUCTOR) 推出了一项特有的单总线(1 - Wire Bus) 技术。它采用单根信号线, 既可传输时钟, 又能传输数据, 而且数据传输是
收藏 下载该资源
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号