|
|
|
@ -261,11 +261,17 @@ void Sensor_Communication_task(void *pvParameters)
|
|
|
|
|
|
|
|
|
|
|
|
else
|
|
|
|
else
|
|
|
|
{
|
|
|
|
{
|
|
|
|
//printf("previous array cut\r\n");
|
|
|
|
int index=0;
|
|
|
|
while(RS485_RX_BUF_COPY[0]==0x00)//前面数据为0,删掉
|
|
|
|
while(RS485_RX_BUF_COPY[index]==0x00)
|
|
|
|
{
|
|
|
|
{
|
|
|
|
RX_BUF_Transfer(0,1);
|
|
|
|
index++;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
RX_BUF_Transfer(0,index);
|
|
|
|
|
|
|
|
//printf("previous array cut\r\n");
|
|
|
|
|
|
|
|
// while(RS485_RX_BUF_COPY[0]==0x00)//前面数据为0,删掉
|
|
|
|
|
|
|
|
// {
|
|
|
|
|
|
|
|
// RX_BUF_Transfer(0,1);
|
|
|
|
|
|
|
|
// }
|
|
|
|
if((RS485_RX_BUF_COPY[0]!=0x00))//不为0,处理掉
|
|
|
|
if((RS485_RX_BUF_COPY[0]!=0x00))//不为0,处理掉
|
|
|
|
{
|
|
|
|
{
|
|
|
|
RX_BUF_Transfer(0,1);
|
|
|
|
RX_BUF_Transfer(0,1);
|
|
|
|
@ -304,7 +310,6 @@ void Host_Computer_Communication(void)
|
|
|
|
//printf("B6 03 cmd: batch sync\r\n");
|
|
|
|
//printf("B6 03 cmd: batch sync\r\n");
|
|
|
|
Array(&now_stage,&hour,&min,&tem,&hum,&red,&blue,&white);//更新对应阶段号的参数
|
|
|
|
Array(&now_stage,&hour,&min,&tem,&hum,&red,&blue,&white);//更新对应阶段号的参数
|
|
|
|
Write_Init();
|
|
|
|
Write_Init();
|
|
|
|
RX_BUF_ZERO(11);
|
|
|
|
|
|
|
|
RX_BUF_Transfer(0,11);
|
|
|
|
RX_BUF_Transfer(0,11);
|
|
|
|
//RX_BUF_Printf(128);
|
|
|
|
//RX_BUF_Printf(128);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
@ -316,17 +321,15 @@ void Host_Computer_Communication(void)
|
|
|
|
now_stage=change_stage_rev1;
|
|
|
|
now_stage=change_stage_rev1;
|
|
|
|
store_stage=change_stage_rev1;
|
|
|
|
store_stage=change_stage_rev1;
|
|
|
|
Write_Init();
|
|
|
|
Write_Init();
|
|
|
|
RX_BUF_ZERO(8);
|
|
|
|
|
|
|
|
RX_BUF_Transfer(0,8);
|
|
|
|
RX_BUF_Transfer(0,8);
|
|
|
|
//RX_BUF_Printf(128);
|
|
|
|
//RX_BUF_Printf(128);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
if(RS485_RX_BUF_COPY[2]==0x03)//批量同步
|
|
|
|
if(RS485_RX_BUF_COPY[2]==0x01)//批量同步
|
|
|
|
{
|
|
|
|
{
|
|
|
|
Batch_synchronization(&n,RS485_RX_BUF_COPY);
|
|
|
|
Batch_synchronization(&n,RS485_RX_BUF_COPY);
|
|
|
|
//printf("B6 01 cmd: get one %d\r\n", n);
|
|
|
|
//printf("B6 01 cmd: get one %d\r\n", n);
|
|
|
|
Array(&now_stage,&hour,&min,&tem,&hum,&red,&blue,&white);//更新对应阶段号的参数
|
|
|
|
Array(&now_stage,&hour,&min,&tem,&hum,&red,&blue,&white);//更新对应阶段号的参数
|
|
|
|
//Write_Init();减少擦写的次数
|
|
|
|
//Write_Init();减少擦写的次数
|
|
|
|
RX_BUF_ZERO(20);
|
|
|
|
|
|
|
|
RX_BUF_Transfer(0,20);
|
|
|
|
RX_BUF_Transfer(0,20);
|
|
|
|
//RX_BUF_Printf(128);
|
|
|
|
//RX_BUF_Printf(128);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
@ -335,13 +338,11 @@ void Host_Computer_Communication(void)
|
|
|
|
{
|
|
|
|
{
|
|
|
|
if(RS485_RX_BUF_COPY[2]==0x11&&RS485_RX_BUF_COPY[15]==0xFF&&RS485_RX_BUF[16]==0xFF)//单个同步默认带的数据
|
|
|
|
if(RS485_RX_BUF_COPY[2]==0x11&&RS485_RX_BUF_COPY[15]==0xFF&&RS485_RX_BUF[16]==0xFF)//单个同步默认带的数据
|
|
|
|
{
|
|
|
|
{
|
|
|
|
RX_BUF_ZERO(17);
|
|
|
|
|
|
|
|
//printf("cut overdata of B6 03 \r\n");
|
|
|
|
//printf("cut overdata of B6 03 \r\n");
|
|
|
|
RX_BUF_Transfer(0,17);
|
|
|
|
RX_BUF_Transfer(0,17);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
if(RS485_RX_BUF_COPY[2]==0x11&&RS485_RX_BUF_COPY[14]==0xFF&&RS485_RX_BUF[15]==0xFF)//单个同步默认带的数据
|
|
|
|
if(RS485_RX_BUF_COPY[2]==0x11&&RS485_RX_BUF_COPY[14]==0xFF&&RS485_RX_BUF[15]==0xFF)//单个同步默认带的数据
|
|
|
|
{
|
|
|
|
{
|
|
|
|
RX_BUF_ZERO(16);
|
|
|
|
|
|
|
|
//printf("cut overdata of B6 03 \r\n");
|
|
|
|
//printf("cut overdata of B6 03 \r\n");
|
|
|
|
//RX_BUF_Printf(128);
|
|
|
|
//RX_BUF_Printf(128);
|
|
|
|
RX_BUF_Transfer(0,16);
|
|
|
|
RX_BUF_Transfer(0,16);
|
|
|
|
@ -349,14 +350,12 @@ void Host_Computer_Communication(void)
|
|
|
|
}
|
|
|
|
}
|
|
|
|
if(RS485_RX_BUF_COPY[2]==0x11&&RS485_RX_BUF_COPY[12]==0xFF&&RS485_RX_BUF_COPY[13]==0xFF)//阶段切换默认带的数据
|
|
|
|
if(RS485_RX_BUF_COPY[2]==0x11&&RS485_RX_BUF_COPY[12]==0xFF&&RS485_RX_BUF_COPY[13]==0xFF)//阶段切换默认带的数据
|
|
|
|
{
|
|
|
|
{
|
|
|
|
RX_BUF_ZERO(14);
|
|
|
|
|
|
|
|
//printf("cut overdata of B6 04 \r\n");
|
|
|
|
//printf("cut overdata of B6 04 \r\n");
|
|
|
|
//RX_BUF_Printf(128);
|
|
|
|
//RX_BUF_Printf(128);
|
|
|
|
RX_BUF_Transfer(0,14);
|
|
|
|
RX_BUF_Transfer(0,14);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
if(RS485_RX_BUF_COPY[2]==0x01&&RS485_RX_BUF_COPY[7]==0xFF&&RS485_RX_BUF_COPY[8]==0xFF)//上位机默认带的数据
|
|
|
|
if(RS485_RX_BUF_COPY[2]==0x01&&RS485_RX_BUF_COPY[7]==0xFF&&RS485_RX_BUF_COPY[8]==0xFF)//上位机默认带的数据
|
|
|
|
{
|
|
|
|
{
|
|
|
|
RX_BUF_ZERO(9);
|
|
|
|
|
|
|
|
//printf("cut overdata of Upper computer \r\n");
|
|
|
|
//printf("cut overdata of Upper computer \r\n");
|
|
|
|
//RX_BUF_Printf(128);
|
|
|
|
//RX_BUF_Printf(128);
|
|
|
|
RX_BUF_Transfer(0,9);
|
|
|
|
RX_BUF_Transfer(0,9);
|
|
|
|
|