凝露温度监控装置C语言源程序清单Word文档格式.doc

上传人:b****3 文档编号:15406486 上传时间:2022-10-30 格式:DOC 页数:20 大小:110KB
下载 相关 举报
凝露温度监控装置C语言源程序清单Word文档格式.doc_第1页
第1页 / 共20页
凝露温度监控装置C语言源程序清单Word文档格式.doc_第2页
第2页 / 共20页
凝露温度监控装置C语言源程序清单Word文档格式.doc_第3页
第3页 / 共20页
凝露温度监控装置C语言源程序清单Word文档格式.doc_第4页
第4页 / 共20页
凝露温度监控装置C语言源程序清单Word文档格式.doc_第5页
第5页 / 共20页
点击查看更多>>
下载资源
资源描述

凝露温度监控装置C语言源程序清单Word文档格式.doc

《凝露温度监控装置C语言源程序清单Word文档格式.doc》由会员分享,可在线阅读,更多相关《凝露温度监控装置C语言源程序清单Word文档格式.doc(20页珍藏版)》请在冰豆网上搜索。

凝露温度监控装置C语言源程序清单Word文档格式.doc

**************************/

#defineLOAD0x00 //加载数据

#definePROG0x48//编程

#defineERS_PROG0x68//擦除编程

#defineERS_S0x71//擦除扇区

#defineERS_P0x70//擦除页

;

----变量定义区------

sbitKey1=P1^5;

sbitKey2=P1^3;

sbitKey3=P1^2;

sbitRead_P=P1^4;

sbitC_out=P0^0;

bitbdataKey_sign;

//按键处理标志位

bitbdataKey_enter;

//按键进入标志位

bitbdataFun_key;

//功能键处理辅助位

bitbdataRH_T_sign=0;

//温湿度标志位

bitbdataR_control=0;

//读温湿度控制辅助位

bitbdatadithering_sign;

//消抖动标志位

bitbdatasave_sign;

//保存处理标志位

bitbdataadjust_sign;

//调节标志位

bitbdataglitter_sign;

//闪烁标志位

bitbdatawork;

//工作与否标志位

bitbdatahe_cosign;

//加热冷却调节标志位

//bitbdataF0;

//加热/冷却切换辅助位

bitbdataF0_sign;

//应答检查辅助位

bitbdataassistant;

bitbdatagu=1;

//个位调整标志位

bitbdatashi;

//十位调整标志位

bitbdatabai;

//百位调整标志位

uintaddr,RH_T_data;

uchartime=2,time2,L_dat,H_dat,RhL_dat,RhH_dat,d,g,j,Wdat,Rdat,wedat;

uchark=3;

//键进入预置量

ucharnum,count=0x5F;

//连续计数辅助寄存器

ucharfun_sign;

//功能切换标志量

ucharshow_dat;

//显示缓冲寄存器

ucharT_offhand;

//采集温度即时量

//ucharRH_offhand;

//采集湿度即时量

uchardat_H,dat_L,dat=0;

uintdat_HL;

ucharU8RH_data_H,U8RH_data_L;

------段码代码表-------

ucharcodeTable[]={

0xFC,0x60,0xDA,0xF2,0x66,0xB6,0xBE,

0xE0,0xFE,0xF6,0x1C,0x6E,0x00,0x00,

0x00,0x1A,0xBC,0x3A,0x7A,0x2E,0x9E};

/***************************

----温度小数部分代码表-----

****************************/

ucharcodedecimal[]={

0x00,0x01,0x01,0x02,0x03,0x03,0x04,0x04,

0x05,0x06,0x06,0x07,0x08,0x08,0x09,0x09};

ucharshow[4];

voidinit_wdt();

voidwdt_R();

bitwflash();

//voidwflash();

//bitwflash();

voidrflash();

voiddelay(uint);

//voidT_RH();

//voidCOM();

voidHex_BcdBLOCK();

//voiddelay(uint);

voiddithering();

//键消抖动处理子函数

voidKey1_js();

//Key1解释子函数

voidKey2_js();

//Key2解释子函数

voidKey3_js();

//Key3解释子函数

voidsave_data();

//保存数据子函数

voidHex_Bcdshow();

//显示数据处理子函数

voidRead_DS18B20();

//读DS18B20函数

voidInit_DS18B20();

//初始化DS18B20子函数

ReadOneChar(uchar);

//读一个字节子函数

WriteOneChar(uchar);

//写一个字节子函数

voidresponsion();

//应答检查子函数

/*************************************/

/*************************************

-------------主程序main--------------

**************************************/

voidmain()

{

//U8j;

//uchardata*show;

ucharm,n;

C_out=0;

//控制输出端口信号

d=0;

//读DS18B20启始"

随机数"

控制辅助变量

init_wdt();

P0M1=0x00;

P0M2=0x3D;

P1M1=0x20;

P1M2=0x03;

P1=0xFF;

TCON=0x05;

TMOD=0x11;

SCON=0x00;

//10H

TL0=0x1B;

TH0=0x50;

TL1=0x88;

TH1=0x98;

RTCL=0x7F;

RTCH=0x70;

RTCCON=0x63;

IEN0=0xDA;

addr=0x7F1;

rflash();

L_dat=Rdat;

addr=0x7F2;

H_dat=Rdat;

addr=0x7F6;

PSW=Rdat;

while

(1)

{

wdt_R();

n=0;

wedat=0x04;

for(n=0;

n<

4;

n++)

{

m=0;

if(wedat==0x04) //加小数点处理(位值比较)

{

if(!

Key_enter) //按键进入标志位

{

m=0x01;

}

}

SBUF=Table[show[n]]+m;

//送段码数据

P0=(P0&

0x03|wedat);

//送位码数据

if(Key_enter) //按键进入标志位//调节标志位

if(glitter_sign)//闪烁标志位

if(gu) //闪烁处理程序区()

{

P0=P0&

0xDF;

}

if(shi)

0xEF;

}

if(bai)

0xF7;

if(he_cosign)//加热冷却调节标志位

0xCF;

}

}

if(!

Key_enter) //按键进入标志位

if(work) //输出工作与否标志位

if(glitter_sign)//闪烁标志位

0xC3;

}

}

wedat=wedat<

<

1;

//位变量

R_control) //读温湿度部分

Read_DS18B20();

//T_RH();

Hex_BcdBLOCK();

R_control=1;

//读温湿度控制辅助位

Key1)

{dithering();

}

Key2)

Key3)

if(Key1&

Key2&

Key_sign=0;

//按键处理标志位

dithering_sign=0;

//消抖动标志位

count=0x5F;

//连续计数辅助寄存器赋初始值

delay(300);

}

count--;

//连续计数辅助寄存器

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 自然科学 > 化学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1