1 / 6
文档名称:

单片机温度计代码(WORD档).pdf

格式:pdf   大小:187KB   页数:6页
下载后只包含 1 个 PDF 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

单片机温度计代码(WORD档).pdf

上传人:wawa 2024/9/12 文件大小:187 KB

下载得到文件列表

单片机温度计代码(WORD档).pdf

相关文档

文档介绍

文档介绍:该【单片机温度计代码(WORD档) 】是由【wawa】上传分享,文档一共【6】页,该文档可以免费在线阅读,需要了解更多关于【单片机温度计代码(WORD档) 】的内容,可以使用淘豆网的站内搜索功能,选择自己适合的文档,以下文字是截取该文章内的部分文字,如需要获得完整电子版,请下载此文档到您的设备,方便您编辑和打印。:..文档供参考,可复制、编制,期待您的好评与关注!#include<>//51系类单片机头文件#include""//包含对1602读写操作的头文件#include""//延时操作头文件#include""//包含对18B20操作的头文件#include<>sbitbeep=P3^0;//定义蜂鸣器信号线sbitled0=P1^0;//定义发光二极管端口sbitled1=P1^1;sbitled2=P1^2;sbitled3=P1^3;uintwarn_l1=270;//定义温度下限值温度*10uintwarn_l2=250;uintwarn_h1=320;uintwarn_h2=300;/******************************************************函数名称:deal(uintt)**函数功能:对18B20获取的温度进行相应的处理*入口参数:temp*出口参数:无********************************************************/voiddeal(uintt){if((t>warn_l2)&&(t<=warn_l1))//25~27度{led0=0;//第一个闪烁Delayms(20);led0=1;mdi();//蜂鸣器慢“滴”}//模拟开启制热elseif(t<=warn_l2)//<25度{led0=0;led1=0;//第一二灯闪烁Delayms(10);led0=1;led1=1;kdi();//蜂鸣器快“滴”}//模拟加大制热功率elseif((t>warn_h2)&&(t<=warn_h1))//30~32度{led2=0;//第三个灯闪烁Delayms(20);led2=1;mdi();//蜂鸣器慢“滴”1/6:..文档供参考,可复制、编制,期待您的好评与关注!}//模拟开启制冷elseif(t>=warn_h1)//>32度{led2=0;//第三四个灯闪烁led3=0;Delayms(10);led2=1;led3=1;kdi();//蜂鸣器快“滴”}//模拟加大制冷功率elsebeep=1;//温度正常}/******************************************************函数名称:display(uintt);*函数功能:显示温度*入口参数:t*出口参数:无********************************************************/voiddisplay(uintt){(0x80+12);//第一行第13列write_data(t/100+0x30);//十位+0X30转换为字符显示(0x80+14);write_data(t%100/10+0x30);(0x80+15);write_data(t%10+0x30);}/******************************************************函数名称:main(void);**函数功能:主函数*入口参数:无**出口参数:无********************************************************/voidmain(void){uchari=0;uinttemp=0;while(1){init();//LCD初始化tempchange();//温度转换_nop_();//稍作延时temp=get_temp();2/6:..文档供参考,可复制、编制,期待您的好评与关注!deal(temp);//温度处理_nop_();for(i=10;i>0;i--){display(temp());//温度处理}}#ifndef__18B20_h__//防止重复定义#define__18B20_h__#include<>#include<>#include""#include""externvoiddsreset(void);//函数声明外部可见externvoidtempwritebyte(uchardat);externbittempreadbit(void);externuchartempreadbyte(void);externvoidtempchange(void);externuintget_temp(void);##include""sbitbeep=P3^0;//定义蜂鸣器信号线sbitds=P2^7;//定义18B20信号线staticuinttemp=0;staticfloatf_temp=;/***************************************函数名称:dsreset(void)**函数功能:18B20初始化**入口参数:无**出口参数:无****************************************/voiddsreset(void){ds=1;//将数据线置高电平_nop_();//稍作延时,要尽可能短ds=0;//拉低数据线Delayus(40);//延时_nop_();ds=1;//将数据线拉高Delayus(14);//延时ds=1;//拉高数据线}3/6:..文档供参考,可复制、编制,期待您的好评与关注!/*********************************************函数名称:temwritebyte(uchardat)**函数功能:向18B20写一个字节**入口参数:dat**出口参数:无*********************************************/voidtempwritebyte(uchardat){uinti;for(i=0;i<8;i++)//一个字节有8位{ds=0;//将数据线拉低_nop_();//稍作延时,待数据稳定ds=dat&0x01;//低位在前,高位在后Delayus(3);//延时45us_nop_();_nop_();ds=1;//将数据线拉高dat>>=1;//左移一位,继续发送下一位}}/***************************************函数名称:tempreadbit(void)**函数功能:读一位数据**入口参数:无**出口参数:dat****************************************/bittempreadbit(void){uinti=0;//定义,做延时用bitdat;//义一位数据ds=0;i++;ds=1;i++;i++;dat=ds;i=8;while(i>0)i--;return(dat);//返回一位数据}/***************************************函数名称:tempreadbyte(void)**函数功能:读一个字节**入口参数:无**出口参数:dat****************************************/uchartempreadbyte(void)4/6:..文档供参考,可复制、编制,期待您的好评与关注!{uchari,j,dat;dat=0;for(i=1;i<=8;i++){j=tempreadbit();dat=(j<<7)|(dat>>1);//读出的数据低位在前,刚好在一个字节dat里}return(dat);}/***************************************函数名称:tempchange(void)**函数功能:获取18B20温度转换**入口参数:无**出口参数:无****************************************/voidtempchange(void){dsreset();//18B20复位Delayms(1);//稍作延时tempwritebyte();//跳过读ROM指令tempwritebyte(0x44);//写温度转换指令}/*******************************************函数名称:get_temp(void)**函数功能:获取18B20寄存器中的数据**入口参数:无**出口参数:temp*****************************************/uintget_temp(void){uchara,b;dsreset();Delayms(1);tempwritebyte();//跳过ROMtempwritebyte(0xbe);//读暂存器a=tempreadbyte();//读低8位b=tempreadbyte();//读高8位temp=b;temp<<=8;//将两个字节合为一个字f_temp=temp*;//温度在寄存器中为12为,}5/6:..文档供参考,可复制、编制,期待您的好评与关注!voiddmsec(unsignedintcount){unsignedinti;while(count){i=115;while(i>0)i--;count--;}}6/6

最近更新

2025年 高考历史解密之抗日战争 附答案 13页

房屋转让合同书标准范本 5页

高炉炉长岗位职责 3页

转业士官到单位申请书模板如何写范文(三篇) 10页

2024版办公耗材节能产品认证销售合同 14页

2024版北京信托资金借款合同范本及信托资金监.. 16页

2024版厂房消防设施管理与物业管理服务合同范.. 15页

2021年小学学年第一学期工作总结 5页

【锦囊妙计】小学语文看图写话分类指导课件-人.. 23页

一年级下册科学试题-第一单元-我们周围的物体.. 5页

二年级下册科学试题-第二单元-我们自己-测试题.. 8页

文化传播岗位职责(6篇) 8页

最新印刷公司毕业实习报告范文 5页

诚实守信的作文5篇 8页

2025春节活动策划方案(29篇) 90页

交通安全知识讲座心得体会 29页

关于工程师转正申请书常用(4篇) 9页

小学语文六年级作文基础篇课件-第8讲:巧串珍.. 17页

甘肃省金昌市永昌县语文三年级第一学期期末考.. 2页

西瓜产销合同样书 3页

用蛋清洗脸能不能美白-鸡蛋清洗脸 5页

职工文化建设调研报告 8页

丰富了我的生命作文 2页

学校开展纠治社会事务加重中小学教师负担问题.. 4页

《晋书·祖逖传》原文及翻译译文 23页

大连医院诊断书证明书 2页

2024年广州市初中生物会考(学业考试)试卷 5页

高中物理竞赛数学知识之一二阶微分方程求解课.. 37页

辅导机构防火检查记录表 2页

部编版六年级语文(下册)一单元试题及答案(下载.. 5页