当前位置:文档之家› 温度传感器实训报告

温度传感器实训报告

static unsigned char bdata StateREG;//可位寻址的状态寄存器
sbit DS1820ON = StateREG^0;//DS1820是否存在
sbit SetTF = StateREG^1; //是否是在温度设置状态
sbit KeySETDown = StateREG^2; //是否已按过SET键标识
static signed char LED_One,LED_Two,LED_Three; //LED的显示位LED_One为十位,LED_Two为个位
static unsigned char Sign; //负号标识
void main(void)
{
void InitDS1820(void); //定义函数
2.电路的构成
该电路有电源、按键控制模块、信号处理、驱动模块、显示模块、检测。
3.电路原理图
4.电路仿真图
五、元件清单及功能介绍
名称
规格
编号
主要功能或作用
按钮
6X6X5
AN1、AN2、AN3
调节报警温度的值
电容
30P
C1、C2
单片机时钟振荡
电容
10UF
C3
单片机复位
电容
470UF
C4
电源滤波
电容
104
三极管基极和温度传感器偏置
电阻
2K
R5
三极管Q1基极偏置
二极管
1N4148
V1
续流,保护Q1
跳线
X1、X2
用元件引脚连
继电器
5V2A
JDQ
温度达到报警值时触点动作
PCB板
73MMX85MM
USB电源线
连接电脑USB口
6、程序:
/*-------------------------------
温度控制器V1.5
static unsigned char bdata THV _at_ 0x0028;
static signed char TMV; //转换后的温度值
static unsigned char KeyV,TempKeyV; //键值
static signed char TMRomV _at_ 0x0027; //高温限制
显示为三个共阳极LED
温度传感器用单总线DS18B20
CPU为2051,四个按键,分别为UP,DOWN,SET
温度调节上限为125度,下限为-55度
只能用于单只18B20
-------------------------------*/
#include <AT89X051.H>
#include <intrins.h>
《温度传感器实训报告》




课程:信号检测与技术
专业:应用电子技术
班级:应电1131班
小组成员:欧阳主、王雅志、朱知荣、周玙旋、周合昱
指导老师:宋晓虹老师
2013年4月23日
一、实训目的
了解18b20温度传感器的基本原理与应用
2、实训过程
1、电路实现功能:
由电脑USB接口供电,也可外接6V—16V的直流电源。通过温度传感器18B20作为温度传感器件,测出改实际温度,再由芯片为DIP封装AT89C2051单片机进行数据处理,通过数码管显示温度值。
#define Key_UP P3_0 //上调温度
#define Key_DOWN P3_1 //下调温度
#define Key_SET P1_7 //设定键(温度设定,长按开电源)
#define RelayOutPort P3_5 //继电器输出
#define LEDPort P1 //LED控制口
温度显示(和控制)的范围为:-55ºC到125ºC之间,精度为1ºC,也就是显示整数。如果你设定报警的温度为20ºC,则当环境温度达到21ºC时,报警发光二极管发光,同时继电器动作。如果你不需要对温度控制(报警),可以将报警温度值设置高些。如果控制的是某局部的温度,可将18B20用引线引出,但距离不宜过大,注意其引脚绝缘。
static signed char TMSetV _at_ 0x0026; //温度设定值
static unsigned char KSDNum; //SET键连按时的采集次数
static unsigned char IntNum,IntNum2,IntNum3; //中断发生次数,IntNum用于SET长按检测,IntNum2用于设定状态时LED闪烁
C5
电源滤波
单片机(20P座)
AT89C2051
IC1
CPU
温度传感器
DS18B20
IC2
温度传感器
稳压块
L7805
IC3
电路工作于+5V
接线座
3P5.0
J1
外电路控制接线座
接线座
2P5.0
J2
外接电源接线USB电源插座 NhomakorabeaUSB
J3
电脑供电插座
晶体
12M
JZ
单片机时钟振荡
一位共阳数码管
0.56
LED1
void ROMDS1820(void);
void TMVDS1820(void);
void TMRDS1820(void);
void TMWDS1820(void);
void TMREDS1820(void);
摄氏温度符号显示
三位共阳数码管
0.56
LED2
温度值显示
发光二极管
3MM
LED3
报警发光指示兼Q1偏置
三极管
8550
Q1、Q2、Q3、Q4
Q1:报警时驱动继电器;Q2Q3Q4:数码管驱动
电阻
10K
R1
单片机复位
电阻
220和470
R7—R13和R14
数码管限流,其中R14=470
电阻
4.7K
R2、R3、R4、R6
sbit PowTF = StateREG^3; //电源电源标识
sbit KeyTF = StateREG^4;//键盘是否允许
//sbit KeySETDowning = StateREG^5;//SET是否正在按下
static unsigned char bdata TLV _at_ 0x0029; //温度变量高低位
#define LEDOneC P3_2 //LED DS1控制(百位)
#define LEDTwoC P3_3 //LED DS2控制(十位)
#define LEDThreeC P3_4 //LED DS3控制(个位)
#define TMPortP3_7//DS1820 DataPort
unsigned char code LEDDis[]={0xC0,0xF9,0xA4,0xB0,0x99,0x92,0x82,0xF8,0x80,0x90,0xFF,0xBF}; //0-9的LED笔划,0xFF为空,0xF7为负号
相关主题