基于89C51单片机太阳能水温水位控制系统(7)

2019-03-28 11:13

_nop_(); _nop_(); _nop_(); SBUF=dd; while(!TI); TI=0; E=0; }

//**************************** //通信子程序

sp_connection() {

send(0xF0); }

sp_readtime() {

getalltime(); send(0xF1); send(sec); send(min); send(hr); send(date); send(mon); send(day); send(year); }

sp_settime() {

send(0xf2); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_();

sec=receive(); min=receive(); hr=receive(); date=receive(); mon=receive(); day=receive(); year=receive();

ds_settime(0x80,sec); ds_settime(0x82,min); ds_settime(0x84,hr); ds_settime(0x86,date); ds_settime(0x88,mon); ds_settime(0x8a,day); ds_settime(0x8c,year); }

sp_readrec() {

send(0xf3); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); send(prelq); }

sp_readdat() {

uchar xdata *pt; send(0xF4); send(num1); send(num2); yanshi(); yanshi();

xmark=0x0000; if(*xmark==0) {

for(pt=0x0001;pt

for(pt=0x0001;pt<=0x7530;pt++)

********************

{ send(*pt); } numtab=0x0001; num1=0; num2=0; *xmark=0; } }

sp_readlq() {

send(0xF5); send(uplq); send(downlq); }

sp_setlq() {

send(0xf6); uplq=receive(); downlq=receive(); }

sp_readlqakey() {

send(0xf7); send(prelq); send(key); }

//********************** //通信协议****************** check_mark() {

switch(hostmark) { case 0x00: sp_connection();break; case 0x01: sp_readtime();break; case 0x02: sp_settime();break; case 0x03: sp_readrec();break; case 0x04: sp_readdat();break; case 0x05:

sp_readlq();break;

case 0x06: sp_setlq();break; case 0x07: sp_readlqakey();break; default: break; } }

check_host() {

if(RI==1) { RI=0; hostmark=SBUF; _nop_(); check_mark(); } }

//记录数据

makemark(uchar mk) { getalltime(); *numtab=min; numtab++; *numtab=hr; numtab++; *numtab=date; numtab++; *numtab=mon; numtab++; *numtab=year; numtab++; *numtab=mk; xmark=0x0000; if(numtab==0x7530) { numtab=0x0001; *xmark=1; num1=50; num2=0; }

else if (*xmark!=1)

**************************

{ tab=numtab; num1=(tab/6)/100; num2=(tab/6)0; numtab++; } }

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

//液位检测

**************************

check_lq() {

ad_start(); _nop_(); _nop_(); _nop_(); ad_read();

if(prelq>=uplq && key==1) { RELAY=1; key=0; makemark(1); }

else if(prelq<=downlq && key==0)

{ RELAY=0; key=1; makemark(0); } }

//****************************//***************主程序main() {

main_init(); while(1) { check_lq(); display(); check_host(); } }

******

**********


基于89C51单片机太阳能水温水位控制系统(7).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:论文5

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: