收藏 分享(赏)

单片机功能豆浆机设计-毕业论文.doc

上传人:精品资料 文档编号:7759601 上传时间:2019-05-25 格式:DOC 页数:64 大小:504KB
下载 相关 举报
单片机功能豆浆机设计-毕业论文.doc_第1页
第1页 / 共64页
单片机功能豆浆机设计-毕业论文.doc_第2页
第2页 / 共64页
单片机功能豆浆机设计-毕业论文.doc_第3页
第3页 / 共64页
单片机功能豆浆机设计-毕业论文.doc_第4页
第4页 / 共64页
单片机功能豆浆机设计-毕业论文.doc_第5页
第5页 / 共64页
点击查看更多>>
资源描述

1、河南理工大学毕业设计(论文)说明书1摘要本设计从现代化计算机控制技术入手,利用单片机的强大智能功能,通过完整的软件与硬件的结合,模拟了一种先进的豆浆制作的自动控制系统。根据豆浆机的工作要求与单片机功能的特点,本设计提出出一套适合实验室条件下的豆浆机控制模拟设备,主要通过单片机、温度传感器,驱动与检测电路组成。本次设计选择的电器设备有 AT89S51 单片机、DS18B20 温度传感器,ULN2003 驱动器,继电器等。设计硬件控制流程图、控制电路图,软件中的主程序流程图及完整的控制程序。工作过程:硬件电路主要以单片机为核心,根据检测电路(温度传感器及其他检查电路)送来的不同信号做出处理后,通过

2、改变单片机输出端口的状态,控制驱动电路做出与之对应的工作;整个工作过程的控制思想有软件编程来实现,控制程序的编写是根据豆浆机在工作过程中可能遇到的情况,及对其处理的判断直到工作结束,程序执行完毕,从而完成对整个工作过程的控制。通过系统模拟实验与下载调试表明:该系统设计合理,自动化程度高,实验过程时间短,工作稳定可靠,基本满足了设计的相关要求。关键词:单片机;温度传感器;驱动芯片;按键控制;河南理工大学毕业设计(论文)说明书2AbstractThe design of modern computer control technology from the start, using the pow

3、er of intelligent features microcontroller, through the complete combination of software and hardware to simulate an advanced automatic control system of milk production.Soymilks work according to requirements and functional characteristics of MCU, the design of a set of suitable laboratory conditio

4、ns for Soymilk control analog devices, primarily through the microcontroller, temperature sensor, drive and detection circuit. The design choices of electrical equipment AT89S51 microcontroller, DS18B20 the temperature sensor, ULN2003 drivers, relays and so on. Design hardware control flow, control

5、circuit, the software in the main program flow chart and complete control procedures. The work process: hardware circuits mainly microcontroller as the core,According to detection circuit (temperature sensors and other examinations circuit) sent a different signal to make treatment, by changing the

6、state of microcontroller output ports to control the drive circuit to make corresponding efforts; the entire work process control ideology software programming to implementation, preparation of control program is based on soya-bean milk likely to be encountered in the course of their work situation,

7、 and for its handling of the judge until the conclusion of the work, the program is finished, thus completing the entire work process control. Through the system and download the debugging simulation experiments show that: the system design is reasonable, high degree of automation, the experiment ti

8、me is short, work stable and reliable and can basically meet the relevant requirements of design.河南理工大学毕业设计(论文)说明书3Keywords: microcontroller; temperature sensor; driver chip; keys to control目录摘要 1Abstract21 系统总体设计 11.1 引言 11.2 豆浆机控制系统的总体介绍 11.3 豆浆机功能的设计 21.4 豆浆机控制电路的硬件选择 21.5 豆浆机工作算法的构思 32 硬件电路设计 42

9、.1 控制电路硬件简述 42.2 硬件电路设计 42.2.1 单片机的简介 42.2.2 AT89S51 单片机 52.2.3 驱动及检测电路 92.2.4 温度传感器的控制电路 152.2.5 按键与显示指示电路 242.2.5 控制电路的电源电路 253 系统软件设计 273.1 温度传感器的读写控制程序 273.2 无水防干烧与按键的编程思路 293.3 煮豆、打浆及防溢出的编程及思路 293.4 整体程序 344 系统模拟仿真 364.1 功能测试 36河南理工大学毕业设计(论文)说明书44.1.1 豆浆机防干烧与防溢出功能测试 364.1.2 豆浆机打浆功能的测试 365 设计总结

10、385.1 本设计的优点 385.2 本设计可改进的方面 38致谢 39参考文献 40附录 41焦作大学毕业设计 1 豆浆机控制系统的总体设计1河南理工大学毕业设计(论文)说明书11 系统总体设计1.1 引言随着人类的进步与社会的发展,电子产品也在飞速的发展。在人类科学不断的进步中,我们的生活随之发生改变,全自动豆浆机也逐渐变为热销家用电器。豆浆机之所以成为家喻户晓的家用电器,其中有很多原因推动着豆浆机的发展,人们生活节奏的加快,对时间观念的重视及奶粉、饮料事件的不断出现等,使的人们对豆浆机更加偏爱。单片机作为整个控制系统的核心,其性能好坏对整个系统起着至关重要的作用。早期的单片机 8031,

11、89c51 等,大多采用紫外线擦除或需要专用的烧录器,在实验调试仿真时比较麻烦,且存储容量低,做大型的控制程序时,需要外接扩展存储器,造价和电路设计上都不划算,因此不宜使用。当前比较先进的 ARM 嵌入式芯片,存储容量大,运算速度快,智能度强大,外围引脚丰富,稳定性高,是比较合适的选择 1。但由于其价格昂贵,使豆浆机的成本大大增加,不适合大众消费。而当前应用比较广泛的 AT89s51 单片机及其同类单片机,有智能度高,外围电路成熟,成本低且存储容量可以满足要求,使用比较方便。所以无论从价格,还是功能上考虑,都是比较合适的选择。1.2 豆浆机控制系统的总体介绍本设计控制电路要求:首先,具有检测豆

12、浆机缸体内是否有水,水量是否过少,以防加热器干烧,遭到损坏,造成不必要的损失。其次,根据人们的放料及主观意识选择打浆方式。本系统共设置了三种工作方式:五谷浆,全豆豆浆及果蔬浆。在打浆工作中能根据温度传感器输出信号,能分别控制高温煮豆,启动打浆,文火熬浆,防溢出和工作完毕自动报警等功能。最后是电路板的设计,选用双层布线方式,既节省材料,又提高了集成度。设计产品制作过程:根据前期设想对部分电路进河南理工大学毕业设计(论文)说明书2行模拟调试通过后,画出原理图,制作印制电路板文件,印制电路板,焊接元器件,调试电路板排查故障,通过后根据豆浆机功能要求编写程序并调试及在电路板上模拟仿真。1.3 豆浆机功

13、能的设计一般豆浆机可分为:纯豆豆浆机,五谷豆浆机,多功能豆浆机和冷热多功能豆浆机。本设计为多功能豆浆机,其他豆浆机只是在此基础上加减部分元件及改变部分模块程序,这里就不再叙述。多功能豆浆机可以制作纯豆豆浆,五谷浆和果蔬浆。它们的制作是有人们根据原料的不同,选择对应的功能键,然后调用相应的其工作程序。纯豆豆浆的制作,根据大豆的成分,经过 8 小时左右的清水浸泡,使其变得疏松,既有营养价值,又方便研磨。在加热器加热到一定温度时,有温度传感器发出信号,启动打浆,此时分别做打浆煮沸工作。经过三遍后,开始文火熬浆及研磨搅拌工作(两遍),直到熬浆结束,报警提示,本次打浆即为五遍打浆法。五谷浆的制作,由于五

14、谷原料杂乱,浸泡不方便,一般就直接打浆,考虑到原料的硬度不同,并使五谷充分混合,本次打浆采用六遍打浆法,其具体做法与上同。果蔬浆的制作,一般果树比较软,并要考虑其新鲜口感,所以无须多遍研磨及搅拌,本次打浆采用四遍打浆法。1.4 豆浆机控制电路的硬件选择在硬件选择上为了有利于购买和实验方便,根据当前市场上各种处理器的性价比,本设计选择 AT89C51 单片机,温度检测采用 DS18B20 温度传感器,对交流电机的控制采用 5V5 脚继电器,对加热器的控制采用两个 5V8 脚继电器,因为豆浆机的功能要求,加热器具有“高温煮沸,河南理工大学毕业设计(论文)说明书3文火熬浆”,所以对其控制采用两路电源

15、。报警装置采用普通蜂鸣器。对继电器,蜂鸣器的驱动采用 ULN2003,它即可满足由单片机输出端口直接控制驱动,同时可兼做无水防干烧与防溢出用。只是 2003 是高电平有效,这与单片机个管脚上电就输出高电平有点冲突,但考虑到其价格低廉,控制简单,在这里仍然用它,只需在其前段加一电平转换即可。各器件的具体用法将在下文一一说明。1.5 豆浆机工作算法的构思根据家用电器的特点:控制电路简单,使用方便易学、易懂等。编程思路如下图 11。检测缸内是否有水开加热器,检测温度温度到达启动打浆文火熬浆,打浆搅拌继续熬煮,完毕报警无水报警图 1-1 豆浆机工作的算法本设计从无水防干烧开始,缸体内水量达到,检测电路

16、送出一个高电平,无水则报警。编程容易实现,只是检测信号电路不好设计。整个烧水煮豆过程是不确定的,当温度达到以后定时器开始计时,以后的工作有时间的限制。对温度传感器的启用与控制需要严格的时间限制,这部分程序的编写是复杂而繁琐的。在进行煮豆与打浆的切换,高温与文火的切换都有时间的控制,需要用到定时器中断中断;在煮豆防益,熬浆防益上不仅要用到外部中断,还要用到记时延时。这些部分是一个连贯的过程,又有着不确定时间。因此,实现起来不太容易,这正是整个程序核心。整个程序调试过程中,这部分出现的问题最多。对问题的排除是,整体改河南理工大学毕业设计(论文)说明书4过后,在逐步调试,一点一点添加功能模块,最终得

17、到实现。软件编程语言采用 C 语言。河南理工大学毕业设计(论文)说明书52 硬件电路设计2.1 控制电路硬件简述一个完整的控制系统,单纯依靠一块单片机是远远不够的。它必须与外围电路元件相互搭配,共同完成任务 2。本设计用到的外围电路有:温度检测电路,驱动电路,LED 显示电路,按键接口电路等。要是个部分电路能在一起稳定的工作,就要让他们衔接的很匹配,如各部分电路对电压、电流的要求等都要合理的设计。下面是对各部分硬件电路的介绍。如图 2-1 所示。89S51P3 P2P1LED 指示灯按键电路驱动电路复位电路电源电路检测电路电路P2P0P3图 2-1 硬件流程图2.2 硬件电路设计以下是对本设计

18、中的电路设计部分、硬件选取及元器件的用法等的介绍。2.2.1 单片机的简介单片微型计算机(Single Chip Microcomputer)简称单片机,是指集成在一块芯片上的计算机,它具有结构简单、控制功能强、可靠性高、体积小、价格低、等优点。单片机技术作为计算机技术的一个重要分支,河南理工大学毕业设计(论文)说明书6广泛地应用于工业控制、智能化仪器仪表、家用电器、电子玩具等各领域。尽管单片机种类很多,但无论是从世界范围还是从全国范围来看,使用最为广泛的应属 MCS-51 系列单片机。其生产厂家有:Intel 公司、Atmel 公司、Philips 公司等。本设计采用 Atmel 公司的 A

19、T89S51,其它厂家单片机这里不再多说,以下是对 AT89S51 的介绍。2.2.2AT89S51 单片机Atmel 公司生产的 AT89S51 单片机是一种低功耗/低电压、高性能的8 位单片机,内部除 CPU 外,还包括 128B 的内部用户数据存储器RAM,4KB 的内部用户程序存储器,4 个 8 位并行可编程 I/0 口,2 个 16位计数/定时器,5 个中断源,2 个优先级别,1 个可编程的串行通信口。以下是对各部分的具体介绍:内部介绍:(1)中央处理器又称 CPU,是整个单片机的核心部件,是 8 位数据宽度的处理器,能处理 8 位二进制数据或代码,CPU 负责控制、指挥和调度整个单

20、元系统协调的工作,完成运算和控制输入输出功能等操作。(2)数据存储器又称 RAM,S51(AT89S51)内部有 128 个 8 位用户数据存储单元和 128 个专用寄存器单元,它们是统一编址的,专用寄存器只能用于存放控制指令数据,用户只能访问,而不能用于存放用户数据,所以,用户能使用的 RAM 只有 128 个,可存放读写的数据,运算的中间结果或用户定义的字型数据。并具有 64KB 外部数据存储器寻址空间。(3)程序存储器又称 ROM,S51 共有 4KB 的掩膜 ROM,用于存放用户程序,原始数据或表格。并具有 64KB 外部程序存储器寻址空间。(4)定时/计数器,S51 有两个 16 位

21、的可编程定时/计数器,称为定时器 0(T0)和定时器 1(T1)。T0 有专用寄存器 TH0 和 TL0 组成,T10河南理工大学毕业设计(论文)说明书7有专用寄存器 TH1 和 TL1 组成。并且可编程定时/计数器的工作方式、定时时间、计数值、启动、中断请求等都可以由程序设定。(5)中断系统,S51 的中断功能较强,可满足控制应用的需要。共有 5 个中断源,即两个外中断、两个定时/计数器中断和一个串行中断,并具有两个优先级别的选择。(6)时钟电路,S51 内部有时钟电路,但石英晶体和微调电容需外接。用于产生整个单片机运行的脉冲时序,系统允许的晶振频率一般位6MHz 和 12MHz,在应用精度

22、要求较高的场合一般选用 11.0592MHz,可以使定时器/计数器更精确。以上是从 S51 单片机的内部介绍,下面再从外部看其结构。如图 2-2所示。 P102348REST9XALVNCU图 2-2 S51 的外部结构外部介绍:有外部结构图我们可以看到,S51 单片机有 40 个管脚。正电源和地线两根,外置石英振荡器的时钟线两根,一个复位端河南理工大学毕业设计(论文)说明书8RESET,/EA,ALE,/PSEN 三根线,P0-P3 共 32 个 I/O 口,中断口线与 P3 口线复用。现在我们对这些引脚的功能加以说明:(1)主电源引脚 Vcc 和 Vss Vcc(40 脚):主电源接5V

23、Vss(20 脚):接地 (2)时钟电路引脚 XTAL1 和 XTAL2:接外部晶体振荡器的引线端。当使用芯片内部时钟时,两引脚用于外接石英晶体和微调电容;当使用外部时钟时,用于接外部时钟脉冲信号。这两个引脚连接的电路成为时钟电路,用来产生单片机正常工作时所需要的时钟脉冲信号。(3)控制信号 RST/Vpd、ALE/(/PROG) 、/ PSEN 和 (/EA)/Vpp RST/Vpd(9 脚):复位端。高电平有效,保持在 2 个机器周期宽度以上,使单片机复位,用于完成单片机的复位初始化操作。在进行单片机应用系统设计时,这个引脚一定要连接相应的电路,即复位电路。该引脚有复用功能,Vpd 为备用

24、电源输入端,防止主电源掉电。ALE/(/PROG) (30 脚):地址锁存信号端。访问片外存贮器时,ALE作低八位地址的锁存控制信号。平时不访问片外存贮器时,该端以六分之一的时钟振荡频率固定输出脉冲。ALE 端负载驱动能力为 8 个 LSTTL 门。该引脚有复用功能, 为片内程序存贮器编程(固化)的编程脉冲输入。 /PSEN(29 脚):片外程序存贮器读选通信号端。负载能力为8LSTTL 门。 (/EA)/Vpp(31 脚):/EA 端接高电平时,CPU 取指令从片内程序存贮器自动顺延至片外程序存贮器。 /EA 端接低电平时,CPU 仅从片外程序存贮器取指令。该引脚有复用功能,Vpp 为片内程

25、序存贮器编程时的编程电压。(4)输入/输出引脚 P0、P1、P2 和 P3 口 P0.0P0.7(3932 脚):访问片外存贮器时作为低八位地址线和八位数据线(复用) 。负载能力为 8 个 LSTTL 门。河南理工大学毕业设计(论文)说明书9P1.0P1.7(18 脚): 8 位准双向 I/O 口。负载能力为 3 个LSTTL 门。 P2.0P2.7(2128 脚):访问片外存贮器时作为高八位地址线。P3.0P3.7(1017 脚):8 位准双向 I/O 口。负载能力为 3 个LSTTL 门。另外还有专门的第二功能。 P3 口的第二功能是P3.0(10 脚): RXD(串行口输入端)P3.1(

26、11 脚): TXD(串行口输出端) P3.2(12 脚): /INT0(外部中断 0 输入端) P3.3(13 脚): /INT1(外部中断 1 输入端) P3.4(14 脚): T0(定时器/计数器 0 外部输入端) P3.5(15 脚): T1(定时器/计数器 1 外部输入端) P3.6(16 脚): /WR(片外数据存贮器写选通信号输出端) P3.7(17 脚): /RD(片外数据存贮器读选通信号输出端) 3下图是单片机工作的最小模块,如图 2-3 所示。河南理工大学毕业设计(论文)说明书10P102345678REST9XALVNCU五pFuYKkBDG图 2-3 单片机最小工作模块

27、2.2.3 驱动及检测电路本设计选用的驱动芯片是 ULN2003,它具有价格便宜、原理简单易使用、工作稳定性高,并且可兼做豆浆机的无水防干烧和防溢出检测器用。以下将对其进行详细介绍。ULN2003 的外部结构如图 2-4 所示。河南理工大学毕业设计(论文)说明书11IN1234567OUT0CM9GD8LA图 2-4 ULN2003 的外部结构从 ULN2003 外部结构图上,可以很轻松的看出各管脚的功能,这足以说明它的使用相当简单。它有一个接电源引脚,一个接地引脚,六路输入对应着六路输出。ULN2003 是高耐压、大电流达林顿陈列,由七个硅 NPN 达林顿管组成。其特点是:ULN2003 的

28、每一对达林顿都串联一个 2.7K 的基极电阻 ,在 5V 的工作电压下它能与 TTL 和 CMOS 电路直接相连,可以直接处理原先需要标准逻辑缓冲器来处理的数据。ULN2003 工作电压高,工作电流大,灌电流可达 500mA,并且能够在关态时承受 50V 的电压,输出还可以在高负载电流并行运行。ULN2003 采用 DIP16 或 SOP16 塑料封装。由于其接口可以与多种元件直接连用,且封装常规已购买、驱动电流大使用方便等特点。因此常被用在数字电路及大电流高电压的灯、继电器、打印机锤和其它类似负载电路的接口处。也是本设计比较理想的驱动芯片。河南理工大学毕业设计(论文)说明书12图 2-5 内

29、部构造图图 2-6 工作原理图由其内部构造图和原理图可知,该芯片是高电平有效、集电极输出的开关元件。这里画出原理图供大家参考一下,其原理不再多说,只要懂得它的用法即可。下图是 ULN2003 在电路中的用法,如图 2-7 所示。河南理工大学毕业设计(论文)说明书13D23K1IN4567OUT0CM9G8LAVPSBelR图 2-7 驱动电路电路图中的 PA 是豆浆机的两路检测电路:无水防干烧与防溢出。实现方法是:利用水的导电特性,将 5V 电压放入缸体中及 PA 的 1端放入缸体,再将 P A 的 2 端放入缸体,如果有水的话它们即通过水连接在一起,因为水的电阻在 15K 欧姆左右,不会引起

30、电流过大,烧坏元河南理工大学毕业设计(论文)说明书14器件。因而可以利用检测 ULN2003 的 2 脚是否有高电平来判断缸体内是否有水。其具体方法是:将 PA 的 2 脚接在 ULN2003 的 2 脚,由于 ULN2003 的输入端是高电平有效,当某一输入端有效时,对应输出端变为接地,这样再将 ULN2003 输出端的 2 脚接在单片机的 P27 脚上,通过单片机检测其指定端口电平的高低,即可作出有水无水的判断。同理,将 PA 的 3 脚放在接近缸口的地方,利用水的导电性与 ULN2003 的输出端,单片机即可检测有无溢出。值得注意的是,豆浆机什么时候溢出,是一个不确定的因素。根据单片机针

31、对突发事件处理的功能,这里要接指定端口,即外部中断端口 P32 或 P33。因为单片机不能直接对交流电进行控制,但可以控制继电器的断开与闭合,从而实现对交流电的控制。ULN2003 的 12 脚、13 脚,即输出端的 4 脚、5 脚为加热器继电器,即 8 脚继电器的驱动控制端,因为豆浆机在工作的时候分为:高温煮豆与文火熬浆,所以这里选用两个继电器来控制。在高温煮豆时有继电器K2 工作,为加热器接通 220V 电源。在文火熬浆时让继电器 K3 工作,为加热器接通 110V 电源。为了安全期间,以防驱动芯片损坏,造成 220V与 110V 同时导通。这里采用具有互锁功能的继电器,确保它们不会同时得

32、电而损坏元器件的器件 4。接着是研磨、搅拌电机的继电器驱动控制端 ULN2003 的 11 脚,即输出端的 6 脚。这里没有必要为豆浆机的电机采用调速控制,因为采用调速控制与不用调速控制,对豆浆的味道几乎都没有区别。但采用调速控制虽然可以减少电能损耗,却要使豆浆机的成本增加。以企业对现在市场上豆浆机的定位及大众对豆浆机的消费情况来看,不易采用调速控制。在所有继电器下面都并联了一个续流二极管,用来对继电器断电后产生的电流进行处理。河南理工大学毕业设计(论文)说明书15最下面 ULN2003 的第 10 脚,即输出端的 7 脚,接的是蜂鸣器的驱动控制端,用于报警作用。ULN2003 的所有驱动控制

33、端,全部接在单片机上,由单片机根据情况来做出具体控制。对于 ULN2003 的部分输入端口,驱动电流要求交大一点,可以在其对应段加一上拉电阻皆即可。由于单片机上电时瞬间各 I/O 管脚默认为高电平,而 ULN2003 的输入端是高电平有效,这样在上电的一瞬间将会造成加热器继电器、电机继电器误动作。而加热器继电器电路才拥有互锁功能,上电瞬间系统不会有什么表现。只需要在 ULN2003 驱动电机的控制端加一电平转换即可,电路原理如图 2-8 所示。 R164k30K5Q8VCOUTP2图 2-8 电平转换电路电路原理是:在 ULN2003 的电机控制端加一 PNP 三极管,使其工作在饱和与截止状态

34、,因三极管是 PNP 型,在其控制端基极为低电平有效,这样就可以完成电平转换了。河南理工大学毕业设计(论文)说明书162.2.4 温度传感器的控制电路温度传感器的选择 温度传感器有很多种,如热电偶温度传感器、铂电阻温度传感器、红外温度传感器、数字温度传感器等。为了便于实验,并且自己有实物,本设计采用数字温度传感器 DS18B20。DS18B20 的简介DS18B20 是美国 DALLAS 半导体器件公司推出的单总线数字化智能集成温度传感器。单总线(1-Wire)是 DALLAS 公司的一项专有技术,它采用单根信号线,既传输时钟又传输数据,而且数据传输是双向的,具有节省I/O 口线资源、结构简单

35、、成本低廉、便于总线扩展和维护等诸多优点。5DS18B20 的特点及内部构造特点如下:采用独特的单总线接口方式,即只有一根信号线与控制器相连,实现数据的双向通信,不需要外部元件;测量结果直接输出数字温度信号,以单总线串行传送给控制器,同时可传送 CRC 校验码,具有极强的抗干扰纠错能力;支持多点组网功能,多个 DS18B20 可以并联在唯一的三根线上,实现组网多点测量;适应电压范围宽 3.0-5.5V,不需要备份电源、可用数据线供电,温度测量范围为-55125,-1085时测量精度为0.5;通过编程可实现 912 位的数字值读数方式,对应的可分辨温度分别为 0.5,0.25,0.125,0.0

36、625,实现高精度测温;负压特性。电源极性接反时,芯片不会因发热而烧毁,但不能正常工作。封装图及内部构造,如下图所示。河南理工大学毕业设计(论文)说明书17图 2-10 DS18B20 的封装引脚功能如下:NC:空引脚,悬空不使用;VDD:可选电源脚,电源电压范围 35.5V。工作于寄生电源时,此引脚应接地;I/O:数据输入/输出脚,漏极开路,常态下高电平。DS18B20 采用 3 脚 TO-92 封装或 8 脚 SOIC 及 CSP 封装方式。图 2-8所示为 DS18B20 的内部结构框图,它主要包括寄生电源、温度传感器、DVCPDQ 结 构 寄 存 器发 生 器8位 CR下 限 寄 存

37、器 TL上 限 寄 存 器 H温 度 传 感 器及 单供 电 方式 检 测 接 口总 线内 部 VD光 刻 ROM64位 暂器存存寄存 储 及 控 制 逻 辑高速图 2-9 DS18B20 内部结构框图河南理工大学毕业设计(论文)说明书1864 位光刻 ROM 及单总线接口、存放中间数据的高速暂存器(内含便笺式RAM)、存储与控制逻辑、用于存储用户设定的温度上下限值的 TH 和 TL触发器、结构寄存器、8 位循环冗余校验码(CRC)发生器等八部分。64 位 ROM 的结构如图 2-11 所示,开始 8 位是产品类型的编号;接着是每个器件唯一的序号,共 48 位;最后 8 位是前面 56 位的

38、CRC 检验码,这也是多个 DS18B20 可采用单线进行通信的原因。非易失性温度报警触发器 TH、TL,可以通过编程写入用户报警上下线数据。LSBMSBLSBMSBLSBMSB48 位序列号 8 位工厂代码(10H)8 位检验 CRC图 2-11 64 位 ROM 示意图DS18B20 温度传感器的内部存储器还包括一个高速暂存 RAM 和一个非易失性的可电擦除的 EEPROM。高速暂存 RAM 的结构位 9 字节的存储器,结构如图 2-12 所示。前两个字节包括测得温度的信息。3、4 字节是 TH 和 TL 的拷贝,是易失的,每次上电复位时被刷新。第 5 字节为配置寄存器,其内容用于确定温度

39、值的数字转换频率,DS18B20 工作时按此寄存器中的分辨率将温度转换成相应精度的数值。该字节各位的定义如图 2-13,其低 5 位一直为 1;TM是测试模式位,用于设置 DS18B20 在工作模式还是在检测模式,在DS18B20 出厂时,该位被设置为 0,用户不要去改动;R1 和 R2 决定温度转换的精度位数,即用来设置分辨率,其定义方法见表 a。河南理工大学毕业设计(论文)说明书19表 aDS18B20 分辨率的定义由表 a 可见,DS18B20 温度转换的时间比较长,而且设定的分辨率越高,所需要的温度数据转换时间越长。因此,在实际应用中要将分辨率和转换时间权衡考虑。高速暂存 RAM 的第

40、 6、7、8 字节保留未用,表现为全 1.第 9 字节是前面 8 字节的 CRC 码,可以用来检验数据的正确性。当 DS18B20 接收到温度转换命令后,开始启动转换。转换完成后的温度值就以 16 位带符号扩展的二进制补码形式存储在暂存 RAM 的第1、2 字节中。R1 R0 分辨率 转换时间/ms0 0 9 位 93.750 1 10 位 187.51 0 11 位 3751 1 12 位 750EEPROM9 字节8 字节7 字节6 字节5 字节4 字节3 字节2 字节1 字节温度 LSB温度 LSB温度 LSB温度 MSBTH 用户字节 1TL 用户字节 2配置寄存器保留保留保留CRCR

41、1 R0 1 1 1 1 1TM图 2-12 高速暂存 RAM 寄存器 图 2-13 配置寄存器位定义河南理工大学毕业设计(论文)说明书20单片机可以通过单线接口读出该数据。的数据时低位在前,高位在后,数据格式以 0.0625/LSB 形式表示。表 b 温度值格式表 b 中,S 表示符号位。当 S=0时,表示测得的温度值为正值,可以直接将二进制位转换为十进制;当S=1 时,表示测得的温度值为负值,要先将补码变成原码,在计算十进制值。表 c 是部分温度值对应的二进制温度表示数据。表 c DS18B20 温度与表示值对应表温度/ 二进制 十六进制+125 0000011111010000 07D0

42、H+85 0000010101010000 0550H+25.0625 0000000110010001 0191H+10.125 0000000010100010 00A2H+0.5 0000000000001000 0008H0 0000000000000000 0000H-0.5 1111111111111000 FFF8H-10.125 1111111101011110 FF5EH-25.0625 1111111001101111 FF6FH-55 1111110010010000 FC90HDS18B20 完成温度转换后,就把测得的温度值与 RAM 中的 TH、TL 字节内容对照,若

43、 TTH 或 TTL,则将该器件内的报警标志位置位,并对主机发出的报警搜索命令做出响应。 6因此,可以用多个 DS18B20 同时测得温度并进行报警搜索。23 22 21 20 2-1 2-2 2-3 2-4S S S S S 26 25 24低字节高字节河南理工大学毕业设计(论文)说明书21在 64 位 ROM 的最高有效字节中存储有循环冗余检验码(CRC)。主机根据 ROM 的前 56 位来计算 CRC 值,并与存入 DS18B20 的 CRC 值作比较,以判断主机收到的 ROM 数据是否正确。关于 DS18B20 的工作原理这里就不再多说,有感兴趣的可以查阅相关手册。DS18B20 的编

44、程指令DS18B20 的指令有:读 ROM(33H),匹配 ROM(55H),跳过ROM(CCH),搜索 ROM(F0H),报警搜索(ECH),稳定转换(44H),度暂存器(BEH),写暂存器(4EH),复制暂存器(48H),重调E2PROM(B8H),读供电方式(B4H)。关于这些指令,这里也不再一一介绍,只把本设计用到的用法说一下。CCH-跳过 ROM 指令。忽略 64 位 ROM 地址,直接向 DS18B20 发温度变换命令,适用于一个从机工作。44H-温度转换指令。启动 DS18B20 进行温度转换,12 位转换时最长为 750ms(9 位 93.75ms)。结果存入内部 9 字节的

45、RAM 中。BEH-读暂存器指令。读内部 RAM 中 9 字节的温度数据。如图 2-14 所示,是 DS18B20 在电路中的接发,本设计采用的是单独电源供电方式,下面将介绍其工作时序,有工作时序图可以很清楚的知道该这样控制 DS18B20。 123DS8B0R4.7kVCP图 2-14 DS18B20 的工作电路河南理工大学毕业设计(论文)说明书22工作时序初始化时序,当主机将单总线 P30 从逻辑高拉到逻辑低时,即启动一个写时隙,所有的写时隙必须在 60120us 完成,且在每个循环之间至少需要 1us 的恢复时间。写 0 和写 1 时隙如图所示。在写 0 时隙期间,微控制器在整个时隙中将

46、总线拉低;而写 1 时隙期间,微控制器将总线拉低,然后在时隙起始后 15us 之释放总线。时序图如图 2-15 所示。复位脉冲480ust960us延时等待 18B20 响应大于等于 480us图 2-15 初始化时序图具体步骤如下:先将数据线置高电平 1。延时(时间应尽量短些)。数据线拉到低电平 0。延时 750 s(该范围可以在 480960s)。数据线拉置高电平 1.延时等待。如果初始化成功则在 1560ms 内产生一个由 DS18B20返回的低电平 0,据该状态可以确定它的存在。但是应注意,不能无限地等待,不然会使程序进入死循环,所以要进行超时判断。若 CPU 读到数据线上的低电平 0

47、 后,还要进行延时,其延时的时间从发出高电平算起(第 5)步的时间算起)最少要 480s。将数据线再次拉置高电平 1 后结束。写数据时序河南理工大学毕业设计(论文)说明书23当主机将单总线 P30 从逻辑高拉到逻辑低时,即启动一个写时隙,所有的写时隙必须在 60120us 完成,且在每个循环之间至少需要 1us 的恢复时间。写 0 和写 1 时隙如图所示。在写 0 时隙期间,微控制器在整个时隙中将总线拉低;而写 1 时隙期间,微控制器将总线拉低,然后在时隙起始后 15us 之释放总线。时序图见图 2-16 所示。图 2-16 写数据时序图具体步骤如下:数据线先置低电平 0。延时确定时间为 15

48、s。按从低位到高位的顺序发送数据(一次只发送一位)。延时时间为 45s。将数据线拉到高电平 1。重复步骤,直到发送完整个字节。最后将数据线拉高到 1。读数据时序DS18B20 器件仅在主机发出读时隙时,才向主机传输数据。所以在主机发出读数据命令后,必须马上产生读时隙,以便 DS18B20 能够传输数据。所有的读时隙至少需要 60us,且在两次独立的读时隙之间,至少需控制器写 0 时间隙60ust120us控制器写 1时间隙DS18B20 采样 DS18B20 采样河南理工大学毕业设计(论文)说明书24要 1us 的恢复时间。每个读时隙都由主机发起,至少拉低总线 1us。在主机发起读时隙之后,D

49、S18B20 器件才开始在总线上发送 0 或 1,若DS18B20 发送 1,则保持总线为高电平。若发送为 0,则拉低总线当发送0 时,DS18B20 在该时隙结束后,释放总线,由上拉电阻将总线拉回至高电平状态。DS18B20 发出的数据,在起始时隙之后保持有效时间为 15us。因而主机在读时隙期间,必须释放总线。并且在时隙起始后的 15us 之内采样总线的状态。时序图见图 2-17 所示。图 2-17 读数据时序图具体步骤如下:将数据线拉高到 1。延时 2s。将数据线拉低到 0。延时 6s。将数据线拉高到 1。延时 4s。读数据线的状态得到一个状态位,并进行数据处理。延时 6s。重复步骤,直到读取完一个数据。 7控制器读 0 时间隙 控制器读 1 时间隙控制器采样 控制器采样河南理工大学毕业设计(论文)说明书252.2.5 按键与显示指示电路1.豆浆机的按键电路豆浆机本身没有太多功能键,在此对按键的设计采用独立式按键,为节省元件,并提高集成度,对按键的消抖设计采用编程的方法。一下是按键部分电路图。如图 2-18 所示。 S1五23R0kVC图 2-18 豆

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

当前位置:首页 > 企业管理 > 管理学资料

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报