版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、原理图:程序:#include / 包括一个52标准内核的头文件#include /_nop_(; 延时函数用sbit DQ=P33; /温度输入口sbit P07=P07; /LED小数点控制/ sbit P20=P20;sbit SPEA=P37;sbit P17=P17;unsigned int h,n=0; unsigned int temp;void delay(unsigned int t;void delay882us(void;ow_reset(void;void write_byte(unsigned char val;unsigned char read_byte(void
2、;unsigned int read_temp(;void delayms(unsigned int ms;void runled(void;void light(void;void x8led(unsigned long ddd;/*温度小数部分用查表法*/unsigned char data temp_data2=0x00,0x00; /读出温度暂放unsigned char data display5=0x00,0x00,0x00,0x00,0x00; /显示单元数据,共4个数据和一个运算暂用/*11us延时函数*/void delay(unsigned int tfor (;t>
3、0;t-;/*延时882us*/void delay882us(voidunsigned char i;for(i=0;i<255;i+;_nop_(;/*DS18B20复位函数*/ow_reset(voidchar presence=1;while(presencewhile(presenceDQ=1;_nop_(;_nop_(;/从高拉倒低DQ=0; delay(50; /550 usDQ=1; delay(6; /66 uspresence=DQ; /presence=0 复位成功,继续下一步 delay(45; /延时500 uspresence=DQ; DQ=1; /拉高电平/
4、*DS18B20写命令函数*/向1-WIRE 总线上写1个字节void write_byte(unsigned char val unsigned char i;for(i=8;i>0;i-DQ=1;_nop_(;_nop_(; /从高拉倒低DQ=0;_nop_(;_nop_(;_nop_(;_nop_(; /5 usDQ=val&0x01; /最低位移出delay(6; /66 usval=val/2; /右移1位DQ=1;delay(1;/*DS18B20读1字节函数*/从总线上取1个字节unsigned char read_byte(voidunsigned char i;
5、unsigned char value=0;for(i=8;i>0;i-DQ=1;_nop_(;_nop_(;value>>=1;DQ=0;_nop_(;_nop_(;_nop_(;_nop_(; /4 usDQ=1;_nop_(;_nop_(;_nop_(;_nop_(; /4 usif(DQvalue|=0x80;delay(6; /66 usDQ=1;return(value;/*读出温度函数*/unsigned int read_temp(ow_reset(; /总线复位delay(200;write_byte(0xcc; /发命令write_byte(0x44; /
6、发转换命令ow_reset(; delay(1;write_byte(0xcc; /发命令write_byte(0xbe;temp_data0=read_byte(; /读温度值的第字节temp_data1=read_byte(; /读温度值的高字节temp=temp_data1;temp<<=8; temp=temp|temp_data0; / 两字节合成一个整型变量。if(temp>6348temp=65536-temp;n=1;display4=temp&0x0f; / 取小数部分的值temp=temp>>4; / 取中间八位,即整数部分的值temp
7、=temp*10+display4;return temp; /返回温度值void delayms(unsigned int msunsigned int i,j;for(i=20;i>0;i- x8led(temp; for(j=ms;j>0;j- _nop_(;void runled(voidunsigned int i,a=0x01;for(i=0;i<8;i+P1=a;a<<=1;delayms(50;void light(voidP1=0;delayms(10;P1=0XFF;delayms(10;/*数码管扫描*/void x8led(unsigned
8、 long dddunsigned char q,r=0;unsigned char l13=0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0x7f,0xbf,0xff;/0-9的字段码unsigned char xx4=0,0,0,0;unsigned char y4=0x8,0x4,0x2,0x1;xx3=ddd%10;xx2=ddd/10%10;xx1=ddd/100%10;if(n=1/ n=0;xx0=11; /显示“-”号else xx0=12; /无任何显示for(q=0;q<4; /循环扫描q+;r+;if(r=4r=0;P2=yr; P0=lxxr;if(r=2P07=0;delay(100;P0=0xff; /*主函数*/void main(P0=0xff; /初始化端口P2=0xff;for(h=0;h<4;h+ /开机显示"000"displayh=0; ow_reset(; /开机先转换一次write_byte(0xcc; /Skip ROMwrite_byte(0x44; /发转换命令for(h=0;h<200;h
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 共享经济生态里服务承诺书(6篇)
- 健身房器材维护与安全使用指南
- 我爱书的情感历程记叙文12篇
- 旅行社办公室负责人岗位职责及面试指南
- 施工项目准点竣工进度确保承诺函5篇
- 高效能履行义务担保承诺书9篇
- 教育质量优化承诺书(4篇)
- 社区服务与公益责任履行承诺书范文7篇
- 企业员工绩效考核评估标准流程指南
- 物流仓储流程优化布局设计模板
- 2026年内蒙古化工职业学院单招职业适应性测试题库附参考答案详解(考试直接用)
- 无人驾驶汽车关键技术要点剖析
- 女性职场健康 保健知识课件
- 2024年四川省成都市高新区中考物理二诊试卷+答案解析
- 2026江西省国有资本运营控股集团有限公司第一批招聘备考题库及答案详解(易错题)
- 医疗健康数据安全风险评估报告
- 2024年安徽机电职业技术学院单招职业适应性测试模拟测试卷附答案解析
- 新《金融机构客户受益所有人识别管理办法》全文解读课件
- 2026年湖南生物机电职业技术学院单招职业技能测试题库完美版
- 2026年铁岭卫生职业学院单招职业技能考试题库及参考答案详解
- 2026年高端民宿运营公司员工行为规范管理制度
评论
0/150
提交评论