|
@@ -16,6 +16,11 @@ uint8_t Lcd_sleep_flag =2;//1
|
|
|
uint8_t DateDwin[8];
|
|
|
uint8_t time_Set_Dwin[14]={0x5A, 0xA5, 0x0B ,0x82 ,0x00 ,0x9C ,0x5A ,0xA5 ,0x13 ,0x05 ,0x1B ,0x0b ,0x1b ,0x19};
|
|
|
|
|
|
+#define UI_VERSION_00 (0X00)
|
|
|
+#define UI_VERSION_2B (0X2B)
|
|
|
+
|
|
|
+static uint8_t ui_version = UI_VERSION_00;
|
|
|
+
|
|
|
SemaphoreHandle_t xSemaphore = NULL;
|
|
|
int Init_Dwin_Signal(void)
|
|
|
{
|
|
@@ -535,20 +540,21 @@ void Go_homepage(void)
|
|
|
void Lcd_Init(void)
|
|
|
{
|
|
|
//初始化界面
|
|
|
- uint8_t i=0;
|
|
|
-
|
|
|
WrDwinCmd16(ADDR_DWIN_CoverSmall,0x00);//人孔小盖关
|
|
|
// HAL_Delay(15);
|
|
|
WrDwinCmd16(ADDR_DWIN_CoverBig,0x00);//人孔大盖关
|
|
|
// HAL_Delay(15);
|
|
|
- //WrDwinCmd16(ADDR_DWIN_HaiDiFa,0x00);//底阀关
|
|
|
-// HAL_Delay(15);
|
|
|
- for(i=0;i<StoreNumber;i++){
|
|
|
- WrDwinCmd16(ADDR_DWIN_UnloadVlave_Status+2*i, VALVESTATUS_CLOSE);
|
|
|
- WrDwinCmd16(ADDR_DWIN_SeaVlave_Status+2*i, VALVESTATUS_CLOSE);
|
|
|
+
|
|
|
+ if(UI_VERSION_2B > ui_version){
|
|
|
+ WrDwinCmd16(ADDR_DWIN_HaiDiFa,0x00);//底阀关
|
|
|
+ WrDwinCmd16(ADDR_DWIN_XieYouFa,0x00);//卸油阀关
|
|
|
+ }else{
|
|
|
+ for(int i=0;i<StoreNumber;i++){
|
|
|
+ WrDwinCmd16(ADDR_DWIN_UnloadVlave_Status+2*i, VALVESTATUS_CLOSE);
|
|
|
+ WrDwinCmd16(ADDR_DWIN_SeaVlave_Status+2*i, VALVESTATUS_CLOSE);
|
|
|
+ }
|
|
|
}
|
|
|
|
|
|
- //WrDwinCmd16(ADDR_DWIN_XieYouFa,0x00);//卸油阀关
|
|
|
// HAL_Delay(15);
|
|
|
|
|
|
WrDwinCmd16(ADDR_DWIN_Seal_Lock,0xff);//锁不显示--
|
|
@@ -684,8 +690,8 @@ void Lcd_Init(void)
|
|
|
输入:无
|
|
|
输出返回:无
|
|
|
******************************************************************************/
|
|
|
-//uint8_t a=0,b=0,c=0,d=0;
|
|
|
-uint8_t e1=0,f1=0;
|
|
|
+uint8_t a=0,b=0,c=0,d=0;
|
|
|
+uint8_t e1=0,f1=0,g1=0,h1=0;
|
|
|
void Dispaly_CarAndValveState(void)
|
|
|
{
|
|
|
uint8_t e=0,f=0,g=0,h=0;
|
|
@@ -725,6 +731,17 @@ void Dispaly_CarAndValveState(void)
|
|
|
|
|
|
PreProcess_GetValveStatus(&ManHole_CoverBig001, &ManHole_CoverSmall001, &SeaValue001, &UnloadingValve001);
|
|
|
|
|
|
+ if(a!=ManHole_CoverBig001)
|
|
|
+ {
|
|
|
+ WrDwinCmd16(ADDR_DWIN_CoverBig,ManHole_CoverBig001);//人孔大盖开关
|
|
|
+ a=ManHole_CoverBig001;
|
|
|
+ }
|
|
|
+ if(b!=ManHole_CoverSmall001)
|
|
|
+ {
|
|
|
+ WrDwinCmd16(ADDR_DWIN_CoverSmall,ManHole_CoverSmall001);//人孔小盖开关
|
|
|
+ b=ManHole_CoverSmall001;
|
|
|
+ }
|
|
|
+
|
|
|
if(e1!=e)
|
|
|
{
|
|
|
WrDwinCmd16(ADDR_DWIN_StateYiChang_CoverSmall,e);//人孔小盖异常
|
|
@@ -736,55 +753,69 @@ void Dispaly_CarAndValveState(void)
|
|
|
f1=f;
|
|
|
}
|
|
|
|
|
|
-#if 0
|
|
|
- if(h1!=h)
|
|
|
- {
|
|
|
- WrDwinCmd16(ADDR_DWIN_StateYiChang_HaiDiFa,h);//底阀异常
|
|
|
- h1 = h;
|
|
|
- }
|
|
|
- if(g1!=g)
|
|
|
- {
|
|
|
- WrDwinCmd16(ADDR_DWIN_StateYiChang_XieYouFa,g);//卸油阀异常
|
|
|
- g1 = g;
|
|
|
+ if(UI_VERSION_2B > ui_version){
|
|
|
+
|
|
|
+ if(c!=SeaValue001)
|
|
|
+ {
|
|
|
+ WrDwinCmd16(ADDR_DWIN_HaiDiFa,SeaValue001);//海底阀开关
|
|
|
+ c=SeaValue001;
|
|
|
+ }
|
|
|
+ if(d!=UnloadingValve001)
|
|
|
+ {
|
|
|
+ WrDwinCmd16(ADDR_DWIN_XieYouFa,UnloadingValve001);//卸油阀开关
|
|
|
+ d=UnloadingValve001;
|
|
|
+ }
|
|
|
+
|
|
|
+ if(h1!=h)
|
|
|
+ {
|
|
|
+ WrDwinCmd16(ADDR_DWIN_StateYiChang_HaiDiFa,h);//底阀异常
|
|
|
+ h1 = h;
|
|
|
+ }
|
|
|
+ if(g1!=g)
|
|
|
+ {
|
|
|
+ WrDwinCmd16(ADDR_DWIN_StateYiChang_XieYouFa,g);//卸油阀异常
|
|
|
+ g1 = g;
|
|
|
+ }
|
|
|
+
|
|
|
+ }else{
|
|
|
+
|
|
|
+ for(i=0;i<StoreNumber;i++)
|
|
|
+ {
|
|
|
+ uint8_t status = VALVESTATUS_CLOSE;
|
|
|
+ if((g&(0x01<<i)) > 0){ //异常了
|
|
|
+ status = VALVESTATUS_EXCEPTION;
|
|
|
+ }else{
|
|
|
+ if((UnloadingValve001&(0x01<<i)) == 0){ //关
|
|
|
+ status = VALVESTATUS_CLOSE;
|
|
|
+ }else{ //开
|
|
|
+ status = VALVESTATUS_OPEN;
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ if(static_unloadvalve_state[i] != status){
|
|
|
+ WrDwinCmd16(ADDR_DWIN_UnloadVlave_Status+2*i, status);
|
|
|
+ static_unloadvalve_state[i] = status;
|
|
|
+ }
|
|
|
+
|
|
|
+ //SealVlave
|
|
|
+ if((h&(0x01<<i)) > 0){ //异常了
|
|
|
+ status = VALVESTATUS_EXCEPTION;
|
|
|
+ }else{
|
|
|
+ if((SeaValue001&(0x01<<i)) == 0){ //关
|
|
|
+ status = VALVESTATUS_CLOSE;
|
|
|
+ }else{ //开
|
|
|
+ status = VALVESTATUS_OPEN;
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ if(static_seavalve_state[i] != status){
|
|
|
+ WrDwinCmd16(ADDR_DWIN_SeaVlave_Status+2*i, status);
|
|
|
+ static_seavalve_state[i] = status;
|
|
|
+ }
|
|
|
+
|
|
|
+ }
|
|
|
}
|
|
|
-#else
|
|
|
- for(i=0;i<StoreNumber;i++)
|
|
|
- {
|
|
|
- uint8_t status = VALVESTATUS_CLOSE;
|
|
|
- if((g&(0x01<<i)) > 0){ //异常了
|
|
|
- status = VALVESTATUS_EXCEPTION;
|
|
|
- }else{
|
|
|
- if((UnloadingValve001&(0x01<<i)) == 0){ //关
|
|
|
- status = VALVESTATUS_CLOSE;
|
|
|
- }else{ //开
|
|
|
- status = VALVESTATUS_OPEN;
|
|
|
- }
|
|
|
- }
|
|
|
-
|
|
|
- if(static_unloadvalve_state[i] != status){
|
|
|
- WrDwinCmd16(ADDR_DWIN_UnloadVlave_Status+2*i, status);
|
|
|
- static_unloadvalve_state[i] = status;
|
|
|
- }
|
|
|
-
|
|
|
- //SealVlave
|
|
|
- if((h&(0x01<<i)) > 0){ //异常了
|
|
|
- status = VALVESTATUS_EXCEPTION;
|
|
|
- }else{
|
|
|
- if((SeaValue001&(0x01<<i)) == 0){ //关
|
|
|
- status = VALVESTATUS_CLOSE;
|
|
|
- }else{ //开
|
|
|
- status = VALVESTATUS_OPEN;
|
|
|
- }
|
|
|
- }
|
|
|
-
|
|
|
- if(static_seavalve_state[i] != status){
|
|
|
- WrDwinCmd16(ADDR_DWIN_SeaVlave_Status+2*i, status);
|
|
|
- static_seavalve_state[i] = status;
|
|
|
- }
|
|
|
-
|
|
|
- }
|
|
|
-
|
|
|
-#endif
|
|
|
+
|
|
|
#if 0
|
|
|
if(Full_Oil_allinfo.Null_ID!=Full_Oil_allinfo.Null_ID_disp)
|
|
|
{
|