123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128 |
- #include "xyf.h"
- XYF_Inf xyf_inf[SENSOR_DEEP];
- uint16_t XYF_Max = 0;
- void XYF_Init(void)
- {
- Cang_Inf* pcang = &cang_inf;
- uint16_t Flash_buf[20] = {0};
- uint8_t i = 0;
-
- Flash_ReadBytes(Flash_buf,ADDR_XYFSENSOR_TYPE,1);
- if(Flash_buf[0] != 0xFFFF)
- pcang->XYF_Type = Flash_buf[0];
-
- Flash_ReadBytes(Flash_buf,ADDR_XYF_NUM,8);
- for(i = 0;i < pcang->Cang_Num;i++)
- {
- if(Flash_buf[i] != 0xFFFF)
- pcang->XYF_Num[i] = Flash_buf[i];
- }
-
- for(i = 0;i < pcang->Cang_Num;i++)
- XYF_Max +=pcang->XYF_Num[i];
- }
- void XYF_state(uint16_t CangNum)
- {
- XYF_Inf* pxyf = xyf_inf;
- uint8_t i = 0;//,j = 0;
- //for(i = 1;i <= 2;i++)//XYF_Max
- {
- // pxyf[i].XYF_State1 = 0;
- // pxyf[i].XYF_State2 = 0;
- // pxyf[i].XYF_Error = 0;
- // pxyf[i].XYF_StateCnt1 = 0;
- // pxyf[i].XYF_StateCnt2 = 0;
-
- i=CangNum;
-
- if(pxyf[i].XYF_Data1[0] == 0x01)
- {
- pxyf[i].XYF_StateCnt2 = 0;
- pxyf[i].XYF_StateCnt1++;
- if(pxyf[i].XYF_StateCnt1>=2)
- {
- pxyf[i].XYF_StateCnt1=0;
- pxyf[i].XYF_State1 = 0x01;
- }
- }
- if(pxyf[i].XYF_Data1[0] == 0x00)
- {
- pxyf[i].XYF_StateCnt1=0;
- pxyf[i].XYF_StateCnt2++;
- if(pxyf[i].XYF_StateCnt2>=2)
- {
- pxyf[i].XYF_StateCnt2=0;
- pxyf[i].XYF_State1 = 0x00;
- }
- }
- // else
- // {
- // pxyf[i].XYF_State1 = 0x00;
- // pxyf[i].XYF_StateCnt1=0;
- // pxyf[i].XYF_StateCnt2=0;
- // pxyf[i].XYF_ErrorCnt++;
- // }
- //
- if(pxyf[i].XYF_Data2[0] == 0x01)
- {
- pxyf[i].XYF_StateCnt4 = 0;
- pxyf[i].XYF_StateCnt3++;
- if(pxyf[i].XYF_StateCnt3>=2)
- {
- pxyf[i].XYF_StateCnt3 =0;
- pxyf[i].XYF_State2 = 0x01;
- }
- }
- if(pxyf[i].XYF_Data2[0] == 0x00)
- {
- pxyf[i].XYF_StateCnt3=0;
- pxyf[i].XYF_StateCnt4++;
- if(pxyf[i].XYF_StateCnt4>=2)
- {
- pxyf[i].XYF_StateCnt4=0;
- pxyf[i].XYF_State2 = 0x00;
- }
- }
- /* if(pxyf[i].XYF_Data2[0] == 0x01)
- pxyf[i].XYF_State2 = 0x01;
- else if(pxyf[i].XYF_Data2[0] == 0x00)
- pxyf[i].XYF_State2 = 0x00;
- else
- {
- pxyf[i].XYF_State2 = 0x00;
- pxyf[i].XYF_ErrorCnt++;
- }*/
- // if(pxyf[i].XYF_ErrorCnt > pxyf->XYF_StateKeepNum)//
- // pxyf[i].XYF_Error = 1;
- /*
- for(j = 0;j < XYF_BUF_DEP;j++)
- {
- if(pxyf[i].XYF_Data1[j] == 0x01)
- pxyf[i].XYF_StateCnt1++;
- else if(pxyf[i].XYF_Data1[j] == 0x00)
- pxyf[i].XYF_StateCnt1 = 0;
- else
- pxyf[i].XYF_ErrorCnt++;
-
- if(pxyf[i].XYF_Data2[j] == 0x01)
- pxyf[i].XYF_StateCnt2++;
- else if(pxyf[i].XYF_Data2[j] == 0x00)
- pxyf[i].XYF_StateCnt2 = 0;
- else
- pxyf[i].XYF_ErrorCnt++;
- }
- if(pxyf[i].XYF_StateCnt1 > pxyf->XYF_StateKeepNum)
- pxyf[i].XYF_State1 = 1;
- if(pxyf[i].XYF_StateCnt2 > pxyf->XYF_StateKeepNum)
- pxyf[i].XYF_State2 = 1;
- if(pxyf[i].XYF_ErrorCnt > pxyf->XYF_StateKeepNum)
- pxyf[i].XYF_Error = 1;
- */
- }
- }
|