电热杯温控系统设计

上传人:kms****20 文档编号:39710103 上传时间:2018-05-18 格式:DOC 页数:12 大小:100.85KB
返回 下载 相关 举报
电热杯温控系统设计_第1页
第1页 / 共12页
电热杯温控系统设计_第2页
第2页 / 共12页
电热杯温控系统设计_第3页
第3页 / 共12页
电热杯温控系统设计_第4页
第4页 / 共12页
电热杯温控系统设计_第5页
第5页 / 共12页
点击查看更多>>
资源描述

《电热杯温控系统设计》由会员分享,可在线阅读,更多相关《电热杯温控系统设计(12页珍藏版)》请在金锄头文库上搜索。

1、电热杯控温系统设计电热杯控温系统设计一、系统功能一、系统功能1、能够显示温度整数部分;2、能够实现温度上下限报警,并且实现上下限可调,可显示;3、当温度大于等于上限值时,启动报警,并且切断电热杯加热回路;当温度小于等于下限值时,启动报警,并且闭合电热杯加热回路。二、传感器二、传感器DS18B20简介简介1 DS18B20 的概述的概述1.1, DSl8B20 的外部管脚及特点的外部管脚及特点 DS18B20 可编程温度传感器有 3 个管脚。GND 为接地线,DQ 为数据输入输出接口,通过一个较弱的上拉电阻与单片机相连。VDD 为电源接口,既可由数据线提供电源,又可由外部提供电源,范围 3.05

2、.5 V。本设计使用外部电源供电。 主要特点有: 1. 用户可自设定报警上下限温度值。 2. 不需要外部组件,能测量55+125 范围内的温度。 3. 通过编程可实现 9l2 位的数字读数方式,可在至多 750 ms 内将温度转换成12 位的数字,测温分辨率可达 0.0625 。 5. 独特的单总线接口方式,与微处理器连接时仅需要一条线即可实现与微处理器双向通讯。 1.2 DS18B20 的内部结构的内部结构 DS18B20 内部功能模块如图 2 所示,主要由 4 部分组成:64 位光刻R0M、温度传感器、非易失性的温度报警触发器 TH 和 TL、配置寄存器。R0M 中的 64 位序列号是出厂

3、前被光刻好的,他可以看作是该 DSISB20 的地址序列码,每个 DSI8B20 的 64 位序列号均不相同。高低温报警触发器 TH 和 TL,配置寄存器均由一个字节的 E2PROM 组成,使用一个存储器功能命令可对 TH,TL 或配置寄存器写入。配置寄存器中 R1,R0 决定温度转换的精度位数:R1R0“00”时 9 位精度,最大转换时间为 93.75 ms;R1R0 = “01”时 10 位精度,最大转换时间为 187.5 ms;R1R0 =“10”时 11 位精度,最大转换时间为375 ms;R1R0 =“11,12 位精度,最大转换时间为 750 ms;未编程时默认为12 位精度。本系

4、统采用的也是 12 位的精度。 1.3,DS18B20 的内存结构的内存结构 DSI8B20 温度传感器的内部存储器包括一个高速暂存 RAM (便笺式的内部存储器)和一个非易失性的可电擦除的 EEPROM,后者存放高温和低温触发器 TH,TL 和结构寄存器。便笺存储器包含了 9 个连续字节(08) ,前两个字节是测得的温度信息,字节 0 的内容是温度的低 8 位,字节 1 是温度的高 8 位,字节 2 是 TH(温度上限报警) ,字节 3 是 TL(温度下限报警) ,字节 4 是配置寄存器,用于确定输出分辨率 9 到 12 位。第 5、6、7 个字节是预留寄存器,用于内部计算。字节 8 是冗余

5、检验字节,校验前面所有 8 个字节的 CRC 码,可用来保证通信正确。 2. DS18B20 的测温功能的测温功能 当 DSI8B20 接收到温度转换命令后,开始启动转换。转换完成后的温度值就以 16 位带符号扩展的二进制补码形式存储在高速暂存存储器的 0,1 字节。单片机可通过单线接口读到该数据,读取时低位在前,高位在后,数据格式以0062 5LSB 形式表示。 DSl820 工作过程中的协议 初始化 - RoM 操作命令 - 存储器操作命令- 处理数据 1.初始化 单总线上的所有处理均从初始化开始 2 . ROM 操作指令令 总线主机检测到 DSl8B20 的存在便可以发出 ROM 操作命

6、令之一这些命令如 指令 代码 Read ROM(读 ROM) 33H Match ROM(匹配 ROM) 55H Skip ROM(跳过 ROM CCH Search ROM(搜索 ROM) F0H Alarm search(告警搜索) ECH 3.存储器操作命令 指令 代码 Write Scratchpad(写暂存存储器) 4EH Read Scratchpad(读暂存存储器) BEH Copy Scratchpad(复制暂存存储器) 48H Convert Temperature(温度变换) 44H Recall EPROM(重新调出) B8H Read Power supply(读电源

7、B4H 4.时 序 主机使用时间隙(time slots)来读写 DSl820 的数据位和写命令字的位 (1)初始化 时序见图 2.25-2 主机总线 to 时刻发送一复位脉冲(最短为 480us 的低电平信号)接着在 tl 时刻释放总线并进入接收状态 DSl820 在检测到总线的上升沿之后等待 15-60us 接着 DS18B20 在 t2 时刻发出存在脉冲(低电平持续 60-240 us)如图中虚线所示 (2)写时间隙 当主机总线 t0 时刻从高拉至低电平时就产生写时间隙。见图 2.25-3 图 2. 25-4 从 to 时刻开始 15us 之内应将所需写的位送到总线上 DSl8B20 在

8、 t 后 15-60us间对总线采样若低电平写入的位是 0 见图 2253 若高电平写入的位是 1 见图 2.-254 连续写 2 位间的间隙应大于 1us (3)读时间隙 见图 2.25-5 主机总线 to 时刻从高拉至低电平时总线只须保持低电平 l 5us 之后在 t1 时刻将总线拉高产生读时间隙读时间隙在 t1 时刻后到 t 2 时刻前约 15us产生读时间隙,t3 时刻前主机必须完成读位然后将总线释放总线 3.驱动驱动 DS18B20 的测温的流程的测温的流程当单总线上只有一个 DS18B20。三、硬件电路设计三、硬件电路设计1 时钟与复位电路时钟与复位电路P1.01 P1.12 P1

9、.23 P1.34 P1.45 P1.56 P1.67 P1.78 R S T/V PD9 P3.0/R xD10 P3.1/TxD11 P3.2/IN T012 P3.3/IN T113 P3.4/T014 P3.5/T115 P3.6/W R16 P3.7/R D17 X TA L218 X TA L119 G N D20P2.021P2.122P2.223P2.324P2.425P2.526P2.627P2.728PS EN29A LE/PR O G30EA /V pp31P0.732P0.633P0.534P0.435P0.336P0.237P0.138P0.039V C C40S T

10、C 89C 5212Y 1 11.0592M30pFC 130pFC 2G N DV C C V C C10uFC 310KR 1G N D12 43S S2. 7805 稳压电路稳压电路VinVout GND7805T150Hz 220V 100uFC 1100uFC 3D14001D? LED1 330R 10.1uFC 20.1uFC 4VC CGND3显示电路显示电路A1 B2Q A3 Q B4 Q C5 Q D6C L K8C L R9Q E10 Q F11 Q G12 Q H1374H C 164V C CC L KD A TabfcgdeV CC1234567a b c d e

11、f g8dpdp9L E D 1V C CA1 B2Q A3 Q B4 Q C5 Q D6C L K8C L R9Q E10 Q F11 Q G12 Q H1374H C 164V C CC L KabfcgdeV CC1234567a b c d e f g8dpdp9L E D 2V C C100R 2100R 34.键盘扫描电路键盘扫描电路VC C5KR 1T11 24 3S 11 24 3S 21 24 3S 31 24 3S 4P11P10P12P135.测温与报警电路测温与报警电路V C C123D S 18B 205KR 1G N DV C CP00V C C器器器G N DP0

12、7Q 190126.电热杯加热控制电路电热杯加热控制电路M O C 3020V C C330R 1P02G N D200R 1Q ? TriacR L50H Z 220VQ 1 9013四、软件程序设计四、软件程序设计/*默认温度上限是 35 度,下限是 25 度 *,S0 上限增加,S1 上限减小,S2 下限限 增加,S3 下限减小*/ #include #include #define uchar unsigned char #define uint unsigned int char code seg16=0xc0,0xfc,0x92,0x98,0xac,0x89,0x8 1,0xdc,

13、0x80,0x88; void Delayxus_DS18B20(uint t) ; void WR_Byte(unsigned char dat); void WR_Bit(bit i); void Start_DS18B20(); unsigned char Read_Byte(); unsigned char Read_Bit(); void keyscan(); int Read_Tem(); bit RST_DS18B20(); void delay(uint z) ; void display(uchar num); void scan_alarm(); void sendchar

14、(ch); sbit DQ=P00;/*DQ 数据端接 P00 口*/ sbit p=P01;/*光耦端接 P01 口*/ sbit DAT=P27;/*A,B 端接一块后接入 DAT,DAT 接 P27 口*/ sbit CLK=P26;/*CLK 接 P26 口*/ sbit deep=P07;/*蜂鸣器接 P07 口*/ sbit a=P10; sbit b=P11; sbit c=P12; sbit d=P13; sbit gnd=P35; uchar max=35,min=25;uint tr=0; void main() gnd=0; while(1) RST_DS18B20();

15、Start_DS18B20();delay(500) ;tr=Read_Tem();display(tr) ;delay(200) ;scan_alarm();keyscan(); bit RST_DS18B20() bit ret=1; DQ=0;/* 拉低总线 */ Delayxus_DS18B20(32);/* 为保险起见, 延时 495us */ DQ=1;/* 释放总线 ,DS18B20 检测 到上升沿后会发送存在脉冲*/ Delayxus_DS18B20(4); ret=DQ; Delayxus_DS18B20(14);/* 延时 495us,让 ds18b20 释放总线,避免影响 到下一步的操作 */ DQ=1;/* 释放总线 */ return(ret); void Delayxus_DS18B20(uint t) for(t;t0;t-)_n

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 生活休闲 > 科普知识

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号