📄 uart0.c
字号:
writenum++;
}
tbuf[writenum]=0x20; //0
writenum++;
EEPROM_ByteRead(0x50,0x00,coefficient);
for(i=0;i<7;i++)
{
tbuf[writenum]=coefficient[i];
writenum++;
}
tbuf[writenum]=0x20; //0
writenum++;
tbuf[writenum]='H'; //H
writenum++;
tbuf[writenum]='U'; //U
writenum++;
tbuf[writenum]='M'; //M
writenum++;
tbuf[writenum]='I'; //I
writenum++;
tbuf[writenum]=0x20; //0
writenum++;
EEPROM_ByteRead(0x20,0x00,coefficient);
for(i=0;i<7;i++)
{
tbuf[writenum]=coefficient[i];
writenum++;
}
tbuf[writenum]=0x20; //0
writenum++;
tbuf[writenum]='P'; //P
writenum++;
tbuf[writenum]='R'; //R
writenum++;
tbuf[writenum]='E'; //E
writenum++;
tbuf[writenum]='S'; //S
writenum++;
tbuf[writenum]=0x20; //0
writenum++;
EEPROM_ByteRead(0x30,0x00,coefficient);
for(i=0;i<7;i++)
{
tbuf[writenum]=coefficient[i];
writenum++;
}
tbuf[writenum]=0x20; //0
writenum++;
tbuf[writenum]='W'; //P
writenum++;
tbuf[writenum]='I'; //R
writenum++;
tbuf[writenum]='N'; //E
writenum++;
tbuf[writenum]='D'; //S
writenum++;
tbuf[writenum]=0x20; //0
writenum++;
EEPROM_ByteRead(0x40,0x00,coefficient);
for(i=0;i<3;i++)
{
tbuf[writenum]=coefficient[i];
writenum++;
}
tbuf[writenum]=0x20; //0
writenum++;
tbuf[writenum]='O';
writenum++;
tbuf[writenum]='K';
writenum++;
tbuf[writenum]=0x20; //0
writenum++;
ordertimepro() ;
tbuf[writenum]=0x0D; //回车
writenum++;
tbuf[writenum]=0x0A; //换行
writenum++;
writenum=0;
send();
break;
default:
readnum=rnum;
lostre();
break;
}
}
void coetra()
{
int i;
// readnum+=5;
for(i=0;i<7;i++)
{
coefficient[i]=rbuf[readnum];
readnum++;
}
COEFFMID=(0x2c-coefficient[0])*((coefficient[1]-0x30)+(coefficient[3]-0x30)*0.1+(coefficient[4]-0x30)*0.01+(coefficient[5]-0x30)*0.001+(coefficient[6]-0x30)*0.0001);
}
/******************************************************************************
*能见度子程序*
*******************************************************************************/
void visibility(){}
/******************************************************************************
*成功返回子程序*
*******************************************************************************/
void succeedre()
{
for(;readnum1<readnum-2;readnum1++)
{
tbuf[writenum]=rbuf[readnum1];
writenum++;
}
tbuf[writenum]=0x20; //0
writenum++;
tbuf[writenum]='O';
writenum++;
tbuf[writenum]='K';
writenum++;
tbuf[writenum]=0x20; //0
writenum++;
ordertimepro();
tbuf[writenum]=0x0D; //回车
writenum++;
tbuf[writenum]=0x0A; //换行
writenum++;
writenum=0;
send();
}
/******************************************************************************
*失败返回子程序*
*******************************************************************************/
void lostre()
{
for(;readnum1<readnum-2;readnum1++)
{
tbuf[writenum]=rbuf[readnum1];
writenum++;
}
tbuf[writenum]=0x20; //0
writenum++;
tbuf[writenum]='E'; //E
writenum++;
tbuf[writenum]='R'; //R
writenum++;
tbuf[writenum]='R'; //R
writenum++;
tbuf[writenum]='O'; //O
writenum++;
tbuf[writenum]='R'; //R
writenum++;
tbuf[writenum]=0x20; //0
writenum++;
ordertimepro();
tbuf[writenum]=0x0D; //回车
writenum++;
tbuf[writenum]=0x0A; //换行
writenum++;
writenum=0;
send();
}
/******************************************************************************
*命令时间转换子程序*
*******************************************************************************/
void ordertimepro()
{
tbuf[writenum]='2'; //2
writenum++;
tbuf[writenum]='0'; //0
writenum++;
tbuf[writenum]=(TIMEDEC[0])/10+0x30;
writenum++;
tbuf[writenum]=(TIMEDEC[0])%10+0x30;
writenum++;
tbuf[writenum]='-'; //-
writenum++;
tbuf[writenum]=(TIMEDEC[1])/10+0x30;
writenum++;
tbuf[writenum]=(TIMEDEC[1])%10+0x30;
writenum++;
tbuf[writenum]='-'; //-
writenum++;
tbuf[writenum]=(TIMEDEC[2])/10+0x30;
writenum++;
tbuf[writenum]=(TIMEDEC[2])%10+0x30;
writenum++;
tbuf[writenum]=0x20; //0
writenum++;
tbuf[writenum]=(TIMEDEC[3])/10+0x30;
writenum++;
tbuf[writenum]=(TIMEDEC[3])%10+0x30;
writenum++;
tbuf[writenum]=':'; //:
writenum++;
tbuf[writenum]=(TIMEDEC[4])/10+0x30;
writenum++;
tbuf[writenum]=(TIMEDEC[4])%10+0x30;
writenum++;
tbuf[writenum]=':'; //:
writenum++;
tbuf[writenum]=(TIMEDEC[5])/10+0x30;
writenum++;
tbuf[writenum]=(TIMEDEC[5])%10+0x30;
writenum++;
}
/******************************************************************************
*风速计出错子程序*
*******************************************************************************/
void flowerror()
{
int j;
for(j=0;j<7;j++)
{
tbuf[writenum]=id[j];
writenum++;
}
tbuf[writenum]=0x20; //0
writenum++;
tbuf[writenum]='F'; //U
writenum++;
tbuf[writenum]='L'; //P
writenum++;
tbuf[writenum]='O'; //D
writenum++;
tbuf[writenum]='W'; //A
writenum++;
tbuf[writenum]='E'; //T
writenum++;
tbuf[writenum]='R'; //A
writenum++;
tbuf[writenum]='R'; //A
writenum++;
tbuf[writenum]='O'; //L
writenum++;
tbuf[writenum]='R'; //L
writenum++;
tbuf[writenum]=0x20; //
writenum++;
ordertimepro();
tbuf[writenum]=0x0D; //回车
writenum++;
tbuf[writenum]=0x0A; //换行
writenum++;
writenum=0;
send(); //数据发送
}
/******************************************************************************
*EEPROM出错子程序*
*******************************************************************************/
void eepromerror()
{
int j;
for(j=0;j<7;j++)
{
tbuf[writenum]=id[j];
writenum++;
}
tbuf[writenum]=0x20; //0
writenum++;
tbuf[writenum]='E'; //U
writenum++;
tbuf[writenum]='E'; //P
writenum++;
tbuf[writenum]='P'; //D
writenum++;
tbuf[writenum]='R'; //A
writenum++;
tbuf[writenum]='O'; //T
writenum++;
tbuf[writenum]='M'; //A
writenum++;
tbuf[writenum]='E'; //T
writenum++;
tbuf[writenum]='R'; //A
writenum++;
tbuf[writenum]='R'; //A
writenum++;
tbuf[writenum]='O'; //L
writenum++;
tbuf[writenum]='R'; //L
writenum++;
tbuf[writenum]=0x20; //
writenum++;
ordertimepro();
tbuf[writenum]=0x0D; //回车
writenum++;
tbuf[writenum]=0x0A; //换行
writenum++;
writenum=0;
send(); //数据发送
}
/******************************************************************************
*时钟出错子程序*
*******************************************************************************/
void clockerror()
{
int j;
for(j=0;j<7;j++)
{
tbuf[writenum]=id[j];
writenum++;
}
tbuf[writenum]=0x20; //0
writenum++;
tbuf[writenum]='C'; //U
writenum++;
tbuf[writenum]='L'; //P
writenum++;
tbuf[writenum]='O'; //D
writenum++;
tbuf[writenum]='R'; //A
writenum++;
tbuf[writenum]='C'; //T
writenum++;
tbuf[writenum]='K'; //A
writenum++;
tbuf[writenum]='E'; //T
writenum++;
tbuf[writenum]='R'; //A
writenum++;
tbuf[writenum]='R'; //A
writenum++;
tbuf[writenum]='O'; //L
writenum++;
tbuf[writenum]='R'; //L
writenum++;
tbuf[writenum]=0x20; //
writenum++;
ordertimepro();
tbuf[writenum]=0x0D; //回车
writenum++;
tbuf[writenum]=0x0A; //换行
writenum++;
writenum=0;
send(); //数据发送
}
/******************************************************************************
*温湿度出错子程序*
*******************************************************************************/
void temphumierror()
{
int j;
for(j=0;j<7;j++)
{
tbuf[writenum]=id[j];
writenum++;
}
tbuf[writenum]=0x20; //0
writenum++;
tbuf[writenum]='T'; //U
writenum++;
tbuf[writenum]='E'; //P
writenum++;
tbuf[writenum]='M'; //D
writenum++;
tbuf[writenum]='P'; //A
writenum++;
tbuf[writenum]='H'; //T
writenum++;
tbuf[writenum]='U'; //D
writenum++;
tbuf[writenum]='M'; //A
writenum++;
tbuf[writenum]='I'; //T
writenum++;
tbuf[writenum]='E'; //T
writenum++;
tbuf[writenum]='R'; //A
writenum++;
tbuf[writenum]='R'; //A
writenum++;
tbuf[writenum]='O'; //L
writenum++;
tbuf[writenum]='R'; //L
writenum++;
tbuf[writenum]=0x20; //
writenum++;
ordertimepro();
tbuf[writenum]=0x0D; //回车
writenum++;
tbuf[writenum]=0x0A; //换行
writenum++;
writenum=0;
send(); //数据发送
}
/******************************************************************************
*气压出错子程序*
*******************************************************************************/
void preserror()
{
int j;
for(j=0;j<7;j++)
{
tbuf[writenum]=id[j];
writenum++;
}
tbuf[writenum]=0x20; //0
writenum++;
tbuf[writenum]='P'; //U
writenum++;
tbuf[writenum]='R'; //P
writenum++;
tbuf[writenum]='E'; //D
writenum++;
tbuf[writenum]='S'; //A
writenum++;
tbuf[writenum]='E'; //T
writenum++;
tbuf[writenum]='R'; //A
writenum++;
tbuf[writenum]='R'; //A
writenum++;
tbuf[writenum]='O'; //L
writenum++;
tbuf[writenum]='R'; //L
writenum++;
tbuf[writenum]=0x20; //
writenum++;
ordertimepro();
tbuf[writenum]=0x0D; //回车
writenum++;
tbuf[writenum]=0x0A; //换行
writenum++;
writenum=0;
send(); //数据发送
}
/******************************************************************************
*气压出错子程序*
*******************************************************************************/
void flasherror()
{
int j;
for(j=0;j<7;j++)
{
tbuf[writenum]=id[j];
writenum++;
}
tbuf[writenum]=0x20; //0
writenum++;
tbuf[writenum]='F'; //U
writenum++;
tbuf[writenum]='L'; //P
writenum++;
tbuf[writenum]='A'; //D
writenum++;
tbuf[writenum]='S'; //A
writenum++;
tbuf[writenum]='H'; //A
writenum++;
tbuf[writenum]='E'; //T
writenum++;
tbuf[writenum]='R'; //A
writenum++;
tbuf[writenum]='R'; //A
writenum++;
tbuf[writenum]='O'; //L
writenum++;
tbuf[writenum]='R'; //L
writenum++;
tbuf[writenum]=0x20; //
writenum++;
ordertimepro();
tbuf[writenum]=0x0D; //回车
writenum++;
tbuf[writenum]=0x0A; //换行
writenum++;
writenum=0;
send(); //数据发送
}
/******************************************************************************
*取历史数据子程序*
*******************************************************************************/
void get_history_dataa()
{
xdata unsigned char historytimedec[6];
xdata unsigned char historytimebin[4];
xdata unsigned char N_historydata=0;
xdata unsigned char N_historydata1=0;
xdata unsigned long historydataaddr=0xf4f800;
xdata unsigned long historydataaddr1=0xf4f800;
xdata unsigned long historydataaddr2=0xf4f800;
xdata unsigned long dateaddrsta=0;
xdata unsigned long houraddrsta=0;
xdata unsigned long minuteaddrsta=0;
xdata unsigned char i,iii,jjj,kkk;
xdata unsigned char n,m;
// xdata unsigned char datatra2[69];
// xdata unsigned char ddatatra1,ddatatra2;
bit historydatasearch=0;
bit sendend=0;
historydatadisplay=1;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -