以51单片机为核心的DS18B20的数码管显示温度程序+Proteus仿真Word文档下载推荐.doc
- 文档编号:15499743
- 上传时间:2022-11-02
- 格式:DOC
- 页数:4
- 大小:55.50KB
以51单片机为核心的DS18B20的数码管显示温度程序+Proteus仿真Word文档下载推荐.doc
《以51单片机为核心的DS18B20的数码管显示温度程序+Proteus仿真Word文档下载推荐.doc》由会员分享,可在线阅读,更多相关《以51单片机为核心的DS18B20的数码管显示温度程序+Proteus仿真Word文档下载推荐.doc(4页珍藏版)》请在冰豆网上搜索。
intrins.h>
#defineucharunsignedchar
#defineuintunsignedint
#definejump_ROM0xCC
#definestart0x44
#defineread_EEROM0xBE
unsignedcharTMPH,TMPL;
ucharcodetable[10]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f};
sbitDQ=P2^3;
//DS18B20数据口
sbitP30=P3^0;
sbitP31=P3^1;
*/
#include<
#include<
#defineucharunsignedchar
#defineuintunsignedint
sbitDATA=P2^3;
//DS18B20接入口
ucharcodetable[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71};
charbai,shi,ge;
//定义变量
/*延时子函数*/
voiddelay(uintnum)
{
while(num--);
}
/*************DS18b20温度传感器函数*********************/
Init_DS18B20(void) //传感器初始化
ucharx=0;
DATA=1;
//DQ复位
delay(10);
//稍做延时
DATA=0;
//单片机将DQ拉低
delay(80);
//精确延时大于480us//450
//拉高总线
delay(20);
x=DATA;
//稍做延时后如果x=0则初始化成功x=1则初始化失败
delay(30);
//读一个字节
ReadOneChar(void)
uchari=0;
uchardat=0;
for(i=8;
i>
0;
i--)
{
DATA=0;
//给脉冲信号
dat>
>
=1;
DATA=1;
if(DATA)
dat|=0x80;
delay(8);
}
return(dat);
//写一个字节
WriteOneChar(unsignedchardat)
uchari=0;
for(i=8;
i>
i--)
DATA=dat&
0x01;
delay(10);
DATA=1;
dat>
delay(8);
//读取温度
intReadTemperature(void)
uchara=0;
ucharb=0;
intt=0;
floattt=0;
Init_DS18B20();
WriteOneChar(0xCC);
//跳过读序号列号的操作
WriteOneChar(0x44);
//启动温度转换
//跳过读序号列号的操作
WriteOneChar(0xBE);
//读取温度寄存器等(共可读9个寄存器)前两个就是温度
a=ReadOneChar();
//低位
b=ReadOneChar();
//高位
t=b;
t<
<
=8;
t=t|a;
tt=t*0.0625;
t=tt*10+0.5;
return(t);
/*显示子函数*/
voiddisplay(intbai,intshi,intge)
P0=table[bai];
//显示千位
delay(50);
//一小段延时动态显示
P3=table[shi];
//显示百位
voidmain()
inttemp;
while
(1)
{
temp=ReadTemperature();
//读温度
bai=temp%1000/100;
shi=temp%100/10;
//显示十位
ge=temp%10;
//显示个位
display(bai,shi,ge);
//显示函数
}
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 51 单片机 核心 DS18B20 数码管 显示 温度 程序 Proteus 仿真
链接地址:https://www.bdocx.com/doc/15499743.html