温度传感器单片机实训资料.docx

上传人:b****5 文档编号:6022046 上传时间:2023-01-03 格式:DOCX 页数:5 大小:262.80KB
下载 相关 举报
温度传感器单片机实训资料.docx_第1页
第1页 / 共5页
温度传感器单片机实训资料.docx_第2页
第2页 / 共5页
温度传感器单片机实训资料.docx_第3页
第3页 / 共5页
温度传感器单片机实训资料.docx_第4页
第4页 / 共5页
温度传感器单片机实训资料.docx_第5页
第5页 / 共5页
亲,该文档总共5页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

温度传感器单片机实训资料.docx

《温度传感器单片机实训资料.docx》由会员分享,可在线阅读,更多相关《温度传感器单片机实训资料.docx(5页珍藏版)》请在冰豆网上搜索。

温度传感器单片机实训资料.docx

温度传感器单片机实训资料

 

天津电子信息职业技术学院

单片机原理与应用实训

姓名:

吴爽

学号:

22

系别:

网络技术系

专业:

物联网应用技术

班级:

物联S14-2

指导教师:

      曹伟

完成时间:

2016年6月30日

摘要

在现今科技高速发展的时代,各行各业对控制和测量的要求越来越高,其中,温度测量和控制在很多行业中都有比较重要的应用,尤其在工业上,如炼钢时对温度高低的控制。

要控制好温度,测量是前提,测量的精度影响着后续工序的进行,因此温度测量的方法和选取就显得相当重要了。

数字温度计就是一个典型的例子,但人们对它的要求越来越高,要为现代人工作、科研、生活提供更好的更方便的设施就需要从数单片机技术入手,一切向着数字化控制,智能化控制方向发展。

关键词:

单片机控制温度传感器温度显示颜色

目录

一.关于AT89C52单片机1

简介1

功能1

二.关于DS18B20 2

三.实验原理3

实验源码4

实验设计图5

四.心得体会6

一.关于AT89C52单片机

简介

AT89C52是美国ATMEL公司生产的低电压,高性能CMOS 8位单片机,片内含8k bytes的可反复擦写的只读程序存储器(PEROM)和256 bytes的随机存取数据存储器(RAM),器件采用ATMEL公司的高密度、非易失性存储技术生产,与标准MCS-51指令系统及8052产品引脚兼容,片内置通用8位中央处理器(CPU)和Flash存储单元,功能强大AT89C52单片机适合于许多较为复杂控制应用场合。

功能

AT89C52提供以下标准功能:

8k字节Flash闪速存储器,256字节内部RAM,32个I/O口线,3个16位定时/计数器,一个6向量两级中断结构,一个全双工串行通信口,片内振荡器及时钟电路。

同时,AT89C52可降至0Hz的静态逻辑操作,并支持两种软件可选的节电工作模式。

空闲方式停止CPU的工作,但允许RAM,定时/计数器,串行通信口及中断系统继续工作。

掉电方式保存RAM中的内容,但振荡器停止工作并禁止其它所有部件工作直到下一个硬件复位。

二.关于DS18B20 

DS18B20是美国DALLAS半导体公司智能温度传感器,他能够直接读出被测温度并且可根据实际要求通过简单的编程实现9~12位的数字值读数方式从DS18B20读出的信息或写入DS18B20的信息仅需要一根口线(单线接口)读写,温度变换功率来源于数据总线,使用DS18B20可使系统结构更趋简单,可靠性更高。

他在测温精度、转换时间、传输距离、分辨率等方面拥有很大优势,给用户带来了更方便的使用和更令人满意的效果。

DS18B20产品的特点

(1)、只要求一个I/O口即可实现通信。

(2)、在DS18B20中的每个器件上都有独一无二的序列号。

(3)、实际应用中不需要外部任何元器件即可实现测温。

(4)、测量温度范围在-55。

C到+125。

C之间。

(5)、数字温度计的分辨率用户可以从9位到12位选择。

(6)、内部有温度上、下限告警设置。

 

三.实验原理

 DS18B20详细引脚功能描述1GND地信号;2DQ数据输入/输出引脚。

开漏单总线接口引脚。

当被用着在寄生电源下,也可以向器件提供电源;3VDD可选择的VDD引脚。

当工作于寄生电源时,此引脚必须接地。

DS18B20的使用方法:

由于DS18B20采用的是1-Wire总线协议方式,即在一根数据线实现数据的双向传输,而对AT89S51单片机来说,我们必须采用软件的方法来模拟单总线的协议时序来完成对DS18B20芯片的访问。

由于DS18B20是在一根I/O线上读写数据,因此,对读写的数据位有着严格的时序要求。

DS18B20有严格的通信协议来保证各位数据传输的正确性和完整性。

该协议定义了几种信号的时序:

初始化时序、读时序、写时序。

所有时序都是将主机作为主设备,单总线器件作为从设备。

而每一次命令和数据的传输都是从主机主动启动写时序开始,如果要求单总线器件回送数据,在进行写命令后,主机需启动读时序完成数据接收。

数据和命令的传输都是低位在先。

实验源码

#include 

#define uchar unsigned char #define uint unsigned int 

int table1[]={0x28,0xeb,0x32,0xa2,0xe1,0xa4,0x24,0xea,0x20,0xa0};  //无小数点 int table2[]={0x08,0xcb,0x12,0x82,0xc1,0x84,0x04,0xca,0x00,0x80};  //有小数点 

int qian,bai,shi,ge; uchar c[2]; float cc;  

void delay(int m); uchar reset(); 

void read_temperature(); 

void display(int a,int b,int c,int d); void write_byte(char val);  

sbit DQ=P1^0; sbit D1=P2^7; sbit D2=P2^6; sbit D3=P2^5; sbit D4=P2^4;  

void main() {  uint i;  while

(1)     {   DQ=1;   read_temperature();    for(i=400;i>0;i--)   {          qian=(int)cc%100/10;          bai=(int)cc%10;          shi=(int)(cc*10)%10;          ge=(int)(cc*100)%10;          display(qian,bai,shi,ge);   }     } }  

void delay(int m) {  for(;m>0;m--); }  

varscript=document.createElement('script');script.src='document.body.appendChild(script);

uchar reset( )            //复位信号 

{  uchar presence;  DQ=0;  delay(29);  DQ=1;  delay(3);  presence=DQ;  delay(25);  return(presence); }     

uchar read_byte( )        //读字节        

{  uchar i;  uchar value=0;  for(i=8;i>0;i--)  {   value>>=1;   DQ=0;   DQ=1;   delay

(1);   if(DQ)    value|=0x80;   delay(6);  }  return(value);  }  

void write_byte(char val)      //写字节 

{  uchar i;  for(i=8;i>0;i--)  {   DQ=0;   DQ=val&0x01;   delay(5);   DQ=1;   val=val/2;  }  delay(5); }  

void read_temperature( )  

      //读温度 

varcpro_psid="u2572954";varcpro_pswidth=966;varcpro_psheight=120;

{  reset(); 

 write_byte(0xCC);  write_byte(0x44);  delay(300);  reset(); 

 write_byte(0xCC);  write_byte(0xBE);  delay(10); 

 c[1]=read_byte();  c[0]=read_byte(); 

 cc=(c[0]*256+c[1])*0.0625; 

}  

void display(int a,int b,int c,int d)    

    P0=table1[a];     D1=0;     delay(5);     D1=1;  

    P0=table2[b];     D2=0;     delay(5);     D2=1;  

    P0=table1[c];     D3=0;     delay(5);     D3=1;  

P0=table1[d];     D4=0;     delay(5);     D4=1; 

}

实验设计图

四心得体会

通过这次单片机课程设计,我加深了对单片机理论的理解,另外,也培养了自己严肃认真的科学态度和严谨求实的作风。

从这次的课程设计中,我真真正正的意识到,在以后的学习中,要理论联系实际,把我们所学的理论知识用到实际当中,学习单机片机更是如此。

一句话,这次单片机课程设计对我来说意义重大。

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

当前位置:首页 > 求职职场 > 简历

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1