解决读卡物理ID顺序问题
diff --git a/supwisdom/sp_card.c b/supwisdom/sp_card.c
index c88bfa9..81babcb 100644
--- a/supwisdom/sp_card.c
+++ b/supwisdom/sp_card.c
@@ -55,10 +55,10 @@
         if(sp_select_sfi("\x3f\x00") == 0)
         {
           sp_select_adf();
-          cardpcd->cardphyid[0] = snr[3];
-          cardpcd->cardphyid[1] = snr[2];
-          cardpcd->cardphyid[2] = snr[1];
-          cardpcd->cardphyid[3] = snr[0];
+          cardpcd->cardphyid[0] = snr[0];
+          cardpcd->cardphyid[1] = snr[1];
+          cardpcd->cardphyid[2] = snr[2];
+          cardpcd->cardphyid[3] = snr[3];
           cardpcd->cardtype = TAG_TYPE_CPU;
           return 0;
         }
diff --git a/supwisdom/sp_communicate.c b/supwisdom/sp_communicate.c
index eecd901..e52ec0f 100644
--- a/supwisdom/sp_communicate.c
+++ b/supwisdom/sp_communicate.c
@@ -558,9 +558,9 @@
   if(ticker - pos->last_comm_status.sendtime > COMM_WAIT_TIME)
   {
     if(pos->devlogin.last_login_ticker == 0 || pos->devlogin.login_flag == 0
-		|| ticker - pos->devlogin.last_login_ticker > DELAY_TIME15s*2)
+		|| ticker - pos->devlogin.last_login_ticker > DELAY_TIME60s*30)
     {
-      if(ticker - pos->devlogin.last_login_ticker > DELAY_TIME15s*2)
+      if(ticker - pos->devlogin.last_login_ticker > DELAY_TIME60s*60)
       {
         pos->devlogin.last_login_ticker = ticker;
         sp_async_equipment_login(pos);
@@ -568,9 +568,9 @@
     }
     else if(ticker < pos->heartbeat.last_heartbeat_ticker
             || pos->heartbeat.last_heartbeat_ticker == 0
-            || ticker - pos->heartbeat.last_heartbeat_ticker > DELAY_TIME15s)
+            || ticker - pos->heartbeat.last_heartbeat_ticker > DELAY_TIME15s*2)
     {
-      if(ticker - pos->heartbeat.last_heartbeat_ticker > DELAY_TIME15s)
+      if(ticker - pos->heartbeat.last_heartbeat_ticker > DELAY_TIME60s)
       {
         pos->heartbeat.last_heartbeat_ticker = ticker;
         sp_async_heartbeat(pos);