Более полный код, по сути это функция main, за исключением
инициализации (до цикла for). for (;;) // Do forever
{
IWDG_KR = 0xAA; // Reset watchdog
c = GetButtons(); // Check the buttons
if (c & ENTER_BTN) // Do setups
Setup(); //
#ifdef CO2_C2 // 2 channels
if (c & PROG_BTN) // Change display mode
Mode ^= CH1_DSPLY; //
#endif
if (IntFlags & TIM2_BIT) //
{ //
IntFlags &= ~TIM2_BIT; //
CO2_ppm1 = GetCO2_ppm(1);
#ifdef CO2_C2 // 2 channels
CO2_ppm2 = GetCO2_ppm(2);
#endif
// DisplayCO2((Mode & CH1_DSPLY)? 1 : 2); // Display CO2 value
if (Mode & CH1_DSPLY)
DisplayCO2(1); // Display CO2 channel 1 value
else
DisplayCO2(2); // Display CO2 channel 2 value
if (Ch1_low <= Ch1_high)
Purge1();
else
Pump1();
#ifdef CO2_C2 // 2 channels
if (Ch2_low <= Ch2_high)
Purge2();
else
Pump2();
#endif
} //
} //