77范文网 - 专业文章范例文档资料分享平台

多点式单总线数字温度监测系统(完整程序)(6)

来源:网络收集 时间:2018-11-22 下载这篇文档 手机版
说明:文章内容仅供预览,部分内容可能不全,需要完整文档或者需要复制内容,请下载word后使用。下载word有问题请添加微信号:或QQ: 处理(尽可能给您提供完整文档),感谢您的支持与谅解。点击这里给我发消息

extern void serial_set(void); extern uchar * read_rom(void); extern bit match_rom(uchar *rom); #endif

4.4.3主函数程序:

#include \#include \#include #include #include #include unsigned char temp[5];

extern char xiaoshu_temp[5],zhen_temp[4]; extern bit flag; extern bit dot_dis;

uchar ds18b20_num1[8]={0xfd,0x00,0x00,0x00,0xb8,0xc5,0x45,0x28}; uchar ds18b20_num2[8]={0x8e,0x00,0x00,0x00,0xb8,0xc5,0x30,0x28}; uchar ds18b20_num3[8]={0xb9,0x00,0x00,0x00,0xb8,0xc5,0x31,0x28}; uchar ds18b20_num4[8]={0xe0,0x00,0x00,0x00,0xb8,0xc5,0x32,0x28}; #define uchar unsigned char #define uint unsigned int void serial_set(void);

void process(unsigned char,unsigned char); char volatile xiaoshu_temp[5],zhen_temp[4]; bit flag; bit dot_dis=1; sbit DQ=P1^0; //sbit DQ=P2^3;

extern unsigned char temp[5];

void delay(unsigned int time) {

unsigned int i,j;

6

//

}

for(i=0;i

for(j=0;j<200;j++);

void main(void) {

uchar i;

uchar *ds18b20_rom; char *str2=\char *str3=\char *str4=\serial_set(); char *str1=\

Lcd_Init(); ClrScreen();

GotoXY(0,0); dot_dis=1;

/*ds18b20_rom=read_rom(); for(i=0;i<8;i++) { }

GotoXY(0,1); for(i=0;i<8;i++) { }

while(1);*/

print_char(ds18b20_num2[i]/16); print_char(ds18b20_num2[i]);

//显示序列号

ds18b20_num2[i]=*ds18b20_rom; ds18b20_rom++;

//读序列号

while(1) {

ds18b20_init();

ds18b20_writecommand(0xcc);

ds18b20_writecommand(0x44); //转换

7

delay(500);

match_rom(ds18b20_num1); //匹配第一路 ds18b20_writecommand(0xbe); //读 for(i=0;i<2;i++) { }

temperature_process(temp[0],temp[1]); Screen_home(); Print(str1); if(!flag) //正 { }

else //负 {

Print(\Print(zhen_temp); if(dot_dis) Print(\

Print(xiaoshu_temp);

Print(zhen_temp); if(dot_dis) Print(\

Print(xiaoshu_temp);

temp[i]=ds18b20_readdata();

}

Print(\ds18b20_init();

ds18b20_writecommand(0xcc);

ds18b20_writecommand(0x44); //转换 delay(500);

match_rom(ds18b20_num2); //匹配第二路 ds18b20_writecommand(0xbe); //读 {

for(i=0;i<2;i++)

8

}

temp[i]=ds18b20_readdata();

temperature_process(temp[0],temp[1]); GotoXY(9,0); Print(str2); { }

else //负 {

Print(\Print(zhen_temp); if(dot_dis) Print(\

Print(xiaoshu_temp);

Print(zhen_temp); if(dot_dis) Print(\

Print(xiaoshu_temp);

if(!flag) //正

}

Print(\ds18b20_init();

ds18b20_writecommand(0xcc);

ds18b20_writecommand(0x44); //转换 delay(500);

match_rom(ds18b20_num3); //匹配第三路 ds18b20_writecommand(0xbe); //读 {

temp[i]=ds18b20_readdata(); }

temperature_process(temp[0],temp[1]); GotoXY(0,1); Print(str3);

for(i=0;i<2;i++)

9

if(!flag) //正

{ }

else //负 {

Print(\Print(zhen_temp); if(dot_dis) Print(\

Print(xiaoshu_temp);

Print(zhen_temp); if(dot_dis) Print(\

Print(xiaoshu_temp);

}

Print(\ds18b20_init();

ds18b20_writecommand(0xcc);

ds18b20_writecommand(0x44); //转换 delay(500);

match_rom(ds18b20_num4); //匹配第四路 ds18b20_writecommand(0xbe); //读 for(i=0;i<2;i++) {

temp[i]=ds18b20_readdata(); }

temperature_process(temp[0],temp[1]); GotoXY(9,1); Print(str4); {

Print(zhen_temp); if(dot_dis) Print(\

if(!flag) //正

10

百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说综合文库多点式单总线数字温度监测系统(完整程序)(6)在线全文阅读。

多点式单总线数字温度监测系统(完整程序)(6).doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印 下载失败或者文档不完整,请联系客服人员解决!
本文链接:https://www.77cn.com.cn/wenku/zonghe/297224.html(转载请注明文章来源)
Copyright © 2008-2022 免费范文网 版权所有
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ: 邮箱:tiandhx2@hotmail.com
苏ICP备16052595号-18
× 注册会员免费下载(下载后可以自由复制和排版)
注册会员下载
全站内容免费自由复制
注册会员下载
全站内容免费自由复制
注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: