forked from SZV10X_Software/SZV103_FM33A0xxEV_SiZhu

jinlicong
2024-05-23 e5ec6ffc2fa0c07785c9d797c3fd74fd3031059f
CORE/main.c
@@ -22,7 +22,9 @@
#include "sizhu_ctrl_word.h"
#include "sizhu_history_record.h"
#include "power_manage.h"
#include "pulse_and_alarm_line.h"
#include "billing.h"
#include "linked_list.h"
FlagStatus key_awaken_flag_g = RESET;
@@ -41,13 +43,9 @@
   //ÔËÐй¦ÄܲÎÊý³õʼ»¯£¬°üÀ¨³õʼ״̬¼ì²â
   sysRunFunParaInit();
   
   //ϵͳ³õʼ״̬¼ì²â£¬ÈçÓбØÒª
   //´ò¿ªÐèÒªÒ»Ö±¹¤×÷µÄÍⲿÒý½ÅÖжÏ
   allExtiIRQ();
   IWDT_Clr();
   while(1)
   {
@@ -59,7 +57,8 @@
         if(Get_Extern_Rtc_Time(&sys_clockBCD_g) ==FAIL) //»ñȡʱ¼ä
         {
            //?RTCʱ¼äÒì³£±¨¾¯
            __SYS_STATUS_ALARM_BYTES_SET(rtc_err);
            if(__SYS_ALARM_CTL_BYTES_GET(rtc_err) == SET)
               __SYS_STATUS_ALARM_BYTES_SET(rtc_err,ALARM_ID_RTC_BAT_LOW);
         }
         
         /*°´¼üʶ±ð*/
@@ -69,8 +68,11 @@
         /*LCDÏÔʾ*/
         lcdDisplayPro();
         
         /*ÉÏλ»ú½»»¥*/
         /*ÉÏλ»ú½»»¥,º¬¼æÈÝmodbus±»²É¼¯´¦Àí*/
         upperComPro();
         /*¶Ô½ÓÉ豸½ÓÏß״̬¼ì²â*/
         PulseAndAlarmLineCheck();
         
               
         /*²É¼¯¡¢Éϱ¨¡¢·§¿ØÈÎÎñ¿ØÖÆ*/
@@ -78,16 +80,18 @@
         //±¨¾¯´¥·¢Éϱ¨ÅжÏÂß¼­·ÅÔڲɼ¯Ç°Ã棬ÏÈ´¥·¢²É¼¯£¬ÔÙ´¥·¢Éϱ¨
         sysRunFunCtrlPro(&sys_fun_run_ctrl_g,sys_clockBCD_g);
         
         /*µçԴ״̬»ñÈ¡*/ //·ÅÔÚRS485²É¼¯¡¢·§¿Ø¡¢Ô¶´«Ö®Ç°£¬ÔÚÕâЩ¸ß¹¦ºÄ²Ù×÷֮ǰ¿ÉÄÜÐèÒªÏȲɼ¯Ò»´Îµç³Øµçѹ
         GetPwrStatusPro(&pwr_vol_g);
         /*485²É¼¯*/
         rs485ReadDataPro(&sys_fun_run_ctrl_g);
         /*½áË㣬°üº¬Âö³å¼ÆÈë*/
         SettlementPro();
         
         /*Êý¾ÝÀúÊ·¼Ç¼´æ´¢*/
         //Êý¾ÝÀúÊ·¼Ç¼´æ´¢Èç¹ûÓöµ½²É¼¯ÖУ¬ÔòÑÓºóµÈ´ý²É¼¯Íê³ÉÔÙ´æ´¢
         sizhuHistoryRecord(sys_clockBCD_g);
         
         /*µçԴ״̬»ñÈ¡*/ //·ÅÔÚ·§¿ØÖ®Ç°£¬ÒòΪ·§¿ØÓнèµçÉè¼Æ£¬·§¿ØÇ°Èç¹û¼îµç²»×㣬ÔòÐèÒª½èµç
         GetPwrStatusPro(&pwr_vol_g);
         
         /*·§¿Ø*/
         valveCtrlPro(&sys_fun_run_ctrl_g);
@@ -118,6 +122,15 @@
         //²¿·ÖÇé¿öϲ»ÄÜÐÝÃߣ¬Òª×öÅжϣ¬±ÈÈçÓÐÍ⹩µç¡¢RS485²É¼¯¹ý³ÌÖС¢Ô¶´«¹ý³ÌÖÐ
         if(SysKeepRunningStatusGet(sys_fun_run_ctrl_g)==RESET){
            //ÐÝÃß´¦Àí
            if(pulse_exti_flag==SET){ //µÈ´ýÂö³å¼ì²âÍê±Ï
               for(uint8_t count_i=0;count_i<(PULSE_CHECK_DELAY_MS &0xff);count_i++){
                  delay_ms(1);
                  if(pulse_exti_flag == RESET)
                     break;
               }
            }
            //ÐÝÃß
            
         }