首页 开发技术 C     /    51单片机温度传感器程序

51单片机温度传感器程序

上传者: congciqibu | 上传时间:2025/12/13 3:17:02 | 文件大小:2KB | 文件类型:C
51单片机温度传感器程序
#include#defineucharunsignedchar#defineuintunsignedintsbitled=P2^5;sbitwei=P2^7;sbitduan=P2^6;sbitDQ=P2^2;ucharmazhi_duan[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71,0x00};ucharmazhi_wei[]={0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xff};voiddelayl(uintn){uinti,j;for(i=n;i>0;i--)for(j=114;j>0;j--);}voiddelays(uchari){while(i--);}bitinit_DS18B20()//DS8B20初始化{bitx;DQ=1;//DQ复位delays(8);DQ=0;//单片机将DQ拉低delays(75);DQ=1;//拉高总线delays(15);x=DQ;//延时过后若x=0则初始化成功若x=1则初始化失败delays(5);returnx;}voidwrite_data(uchardat){uchari,temp;temp=dat;DQ=1;for(i=0;i>=1;}}ucharread_data(){uchari,dat;DQ=1;for(i=0;i>=1;DQ=1;//配置为输入if(DQ)dat|=0x80;delays(4);}returndat;}uintreadtemp(){uchartemph,templ;uinttemp;floatwendu;init_DS18B20();write_data(0xcc);//跳过ROMwrite_data(0x44);//启动温度转换//delayl(100);init_DS18B20();write_data(0xcc);//跳过ROMwrite_data(0xBE);//读温度//以下读温度,低八位在前//高8位在后templ=read_data();temph=read_data();temp=(temph<<8)|templ;wendu=temp*0.625+0.5;//温度扩大10倍,四舍五入temp=wendu;//10倍温度returntemp;}voidSTC_init(){P1=0x00;//关闭ledled=0;//锁存wei=0;duan=0;}voiddisplay(ucharweil,ucharduanl,bitdp){wei=1;P0=mazhi_wei[weil-1];wei=0;duan=1;if(dp==1)P0=(mazhi_duan[duanl]|0x80);elseP0=mazhi_duan[duanl];duan=0;}voidmain(){uchari;uintwendu;STC_init();wendu=readtemp();delayl(500);wendu=readtemp();delayl(500);while(1){wendu=readtemp();for(i=0;i<80;i++){display(1,wendu/100,0);delayl(3);display(2,wendu0/10,1);delayl(3);display(3,wendu,0);delayl(3);}}} 本软件ID:4663783

文件下载

资源详情

-C

评论信息

  • qq_24410389:
    资源非常的有用2015-03-13

免责申明

【好快吧下载】的资源来自网友分享,仅供学习研究,请务必在下载后24小时内给予删除,不得用于其他任何用途,否则后果自负。基于互联网的特殊性,【好快吧下载】 无法对用户传输的作品、信息、内容的权属或合法性、合规性、真实性、科学性、完整权、有效性等进行实质审查;无论 【好快吧下载】 经营者是否已进行审查,用户均应自行承担因其传输的作品、信息、内容而可能或已经产生的侵权或权属纠纷等法律责任。
本站所有资源不代表本站的观点或立场,基于网友分享,根据中国法律《信息网络传播权保护条例》第二十二条之规定,若资源存在侵权或相关问题请联系本站客服人员,8686821#qq.com,请把#换成@,本站将给予最大的支持与配合,做到及时反馈和处理。关于更多版权及免责申明参见 版权及免责申明