標題: STM32開機上位機通訊,2分鐘后停止通訊 [打印本頁]

作者: 少少少邵    時間: 2020-2-28 10:33
標題: STM32開機上位機通訊,2分鐘后停止通訊
        HAL_TIM_Base_Start_IT(&htim2);   //打開定時器
  AlarmASet();
  HAL_RTCEx_SetWakeUpTimer_IT(&hrtc, 59, RTC_WAKEUPCLOCK_CK_SPRE_16BITS);

  if( (RCC->CSR & 0x20000000) == 0 ) //軟件(Bit28)或上電(Bit27)復位    RCC_FLAG_IWDGRST(Bit29)
  {
          HAL_UART_Receive_IT(&huart1,RxHost,7);      //允許上位機通訊
          while(TimSec < 120)       //2分鐘定時
          {
                  if(TimTmp != TimSec)
                  {
                          TimTmp = TimSec;
                          GetValue();
              FlotoBCD(Value);
              LcdComm(0x58);
              Display();
                  }

            if(Rx1Flag == 2)      //收到上位機數據
            {
                    Rx1Flag = 0;
                    TimSec = 0;
                    HostReve();
            }
            else if( (Rx1Flag == 1) && (TimSec > 1) )
            {
                    HAL_UART_AbortReceive_IT(&huart1);
                    __HAL_UART_ENABLE_IT(&huart1,UART_IT_RXNE);
                    HAL_UART_Receive_IT(&huart1,RxHost,7);
                    Rx1Flag = 0;
            }
          }

          NumId = 0;
          AdNum = 0;
          Bake = 0;
          SendData();
          if(ComErr)
                  HAL_Delay(6000);
          else
          {
                  TimTmp = SamNum;
                  SamNum = 1;
                  for(i=0; i<3; i++)
                  {
                          AdNum = 0;
                           while(Timing == 0);
                           Timing = 0;
                           RtcTime(0,0);
                           GetValue();
                           FlotoBCD(Value);
                           WrData();
                           AdNum = 1;
                           SendData();
                           if(ComErr)
                           {
                                   HAL_Delay(6000);
                                   break;
                           }
                  }
                  SamNum = TimTmp;
                  AdNum = 0;
          }
  }


作者: IdeaMing    時間: 2020-2-28 15:25
不知道你要干啥啊





歡迎光臨 (http://www.torrancerestoration.com/bbs/) Powered by Discuz! X3.1