- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
DS18B20温度检测C语言程序
/*DS108B20数码管显示程序*/
#includereg52.h
#includeintrins.h
#define uchar unsigned char
#define uint unsigned int
#define nop _nop_()
sbit dq=P3^6; //温度的DQ脚与P3^6相连
sbit wx1=P2^4;
sbit wx2=P2^5;
sbit wx3=P2^6;
sbit wx4=P2^7;
uchar T,xs;
//*******************************************************************
uchar code table[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,
0xf8,0x80,0x90,0x88,0x83,0xc6};
//*******************************************************************
//**********************************************************
void delay10us()
{
uchar i;
for(i=1;i0;i--)
{
}
}
//$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
void delay_us(uchar dus)
{
uchar mm;
for(mm=0;mmdus;mm++) _nop_;
}
//*****************************************************************************************
void delay_ms(uint dms)
{
int mmm;
for(mmm=0;mmmdms;mmm++)
{
delay_us(230);
}
}
//*************************************************
//*************************************************
//*************************************************
//*************************************************
//***************DS18B20初始化复位****************/
void ds_rst()
{
dq=0;
delay_us(110); //480 us
dq=1;
delay_us(110);
}
//************单线写一字节***************
void write_ICcmd(uchar dat)
{
uchar i;
for(i=0;i8;i++)
{
dq=0;
dq=dat0x01;
delay_us(3); //延时15us
dq=1;
dat=1;
delay_us(10); //延时45us
}
}
//************单线读一字节**********************
uchar read_ICdata()
{
uchar i=0;
uchar dat=0;
for(i=8;i0;i--)
{
dq=0;
dat=1;
dq=1;
if(dq) dat|=0x80;
delay_us(10); //延时45us
}
return (dat);
}
//************温度读取**********************
void read_TMP()
{
uchar a=0,b=0;
ds_rst();
write_ICcmd(0xcc); //跳过ROM
write_ICcmd(0x44); //温度转换为数据
ds_rst();
write_ICcmd(0xcc);
write_ICcmd(0xbe); //读取温度指令
a=read_ICdata(); //温度低八位,最小位为0.0625 °C
b=read_ICdata(); //温度高位,高四位为正负号,1111xxxx为负,0000xxxx为正,后四位为温度的高四位
T=a;
T=(T0xF0)4;
T=T+((b0x0F)4);
您可能关注的文档
最近下载
- 全国导游基础知识的重点.doc VIP
- 临建工程施工组织设计方案.pdf VIP
- 《民航求职面试技巧》第四章民航中文面试技巧.pptx VIP
- 自动控制原理(第七版)课后习题答案解析.pdf
- 2025年导游资格考试《导游基础知识》全套必考知识点归纳宝典(精品) .pdf VIP
- 主要施工机械设备、劳动力、设备材料投入计划及其保证措施.docx VIP
- 画家张大千简介.pptx VIP
- 2015-2024年十年高考数学真题分类汇编专题07 事件与概率(古典概率、条件概率、全概率公式、贝叶斯公式)小题综合(原卷版).docx VIP
- 事件与概率(古典概率、条件概率、全概率公式、贝叶斯公式)小题综合解析- 十年(2015-2024)高考真题数学分项汇编(全国).pdf VIP
- (2025)小学生诗词大会竞赛试题及标准答案.docx VIP
文档评论(0)