下载此文档

基于51单片机及DS18B20温度传感器的数字温度计程序及详细注释.docx


文档分类:通信/电子 | 页数:约12页 举报非法文档有奖
1/12
下载提示
  • 1.该资料是网友上传的,本站提供全文预览,预览什么样,下载就什么样。
  • 2.下载该文档所得收入归上传者、原创者。
  • 3.下载的文档,不会出现我们的网址水印。
1/12 下载此文档
文档列表 文档介绍
基于 51 单片机及 DS18B20 温度传感器的数字温度计程序(详细注释)电路实物图如下图所示:C 语言程序如下所示:/********************************************************************zicreate----------------------------- Copyright (C)  --------------------------* 程序名; 基于 DS18B20 的测温系统* 功 能: 实时测量温度,超过上下限报警,报警温度可手动调整。K1 是用来* 进入上下限调节模式的,当按一下 K1 进入上限调节模式,再按一下进入下限* 调节模式。在正常模式下,按一下 K2 进入查看上限温度模式,显示 1s 左右自动* 退出;按一下 K3 进入查看下限温度模式,显示 1s 左右自动退出;按一下 K4 消除* 按键音,再按一下启动按键音。在调节上下限温度模式下,K2 是实现加 1 功能,* K1 是实现减 1 功能,K3 是用来设定上下限温度正负的。* 编程者:Jason* 编程时间:2009/10/2*********************************************************************/#include<> //将  头文件包含到主程序#include<> //将  头文件包含到主程序(调用其中的_nop_()空操作函数延时)#define uint unsigned int //变量类型宏定义,用 uint 表示无符号整形(16 位)#define uchar unsigned char //变量类型宏定义,用 uchar 表示无符号字符型(8 位)uchar max=0x00,min=0x00; //max 是上限报警温度,min 是下限报警温度bit s=0; //s 是调整上下限温度时温度闪烁的标志位,s=0 不显示 200ms,s=1 显示 1s 左右bit s1=0; //s1 标志位用于上下限查看时的显示void display1(uint z); //声明 display1()函数#include"" //将  头文件包含到主程序#include"" //将  头文件包含到主程序#include"" //将  头文件包含到主程序/***********************主函数************************/void main(){beer=1; //关闭蜂鸣器led=1; //关闭 LED 灯timer1_init(0); //初始化定时器 1(未启动定时器 1)get_temperature(1); //首次启动 DS18B20 获取温度(DS18B20 上点后自动将 EEPROM 中的上下限温度复制到 TH 和 TL 寄存器)while(1) //主循环{keyscan(); //按键扫面函数get_temperature(0); //获取温度函数keyscan(); //按键扫面函数display(temp,temp_d*);//显示函数alarm(); //报警函数keyscan(); //按键扫面函数}}/********************************************************************* 程序名; __ds18b20_h__* 功 能: DS18B20 的 c51 编程头文件* 编程者:ZPZ* 编程时间:2009/10/2* 说 明:用到的全局变量是:无符号字符型变量 temp(测得的温度整数部分),temp_d* (测得的温度小数部分),标志位 f(测量温度的标志位‘0’表示“正温度”‘1’表* 示“负温度”),标志位 f_max(上限温度的标志位‘0’表示“正温度”、‘1’表* 示“负温度”),标志位 f_min(下限温度的标志位‘0’表示“正温度”、‘1’表* 示“负温度”),标志位 w(报警标志位‘1’启动报警‘0’关闭报警)。*********************************************************************/#ifndef __ds18b20_h__ //定义头文件#define __ds18b20_h__#define uint unsigned int //变量类型宏定义,用 uint 表示无符号整形(16 位)#define uchar u

基于51单片机及DS18B20温度传感器的数字温度计程序及详细注释 来自淘豆网www.taodocs.com转载请标明出处.

相关文档 更多>>
非法内容举报中心
文档信息
  • 页数12
  • 收藏数0 收藏
  • 顶次数0
  • 上传人diqiuren3210
  • 文件大小1.37 MB
  • 时间2020-09-23