Prusa MINI Firmware overview
utility.h File Reference

Go to the source code of this file.

Classes

class  restorer< T >
 

Macros

#define log_machine_info()   NOOP
 
#define REMEMBER(N, X, V...)   const restorer<typeof(X)> restorer_##N(X, ##V)
 
#define RESTORE(N)   restorer_##N.restore()
 

Functions

void safe_delay (millis_t ms)
 
void serial_delay (const millis_t ms)
 
constexpr uint8_t ui8_to_percent (const uint8_t i)
 

Macro Definition Documentation

◆ log_machine_info

#define log_machine_info ( )    NOOP

◆ REMEMBER

#define REMEMBER (   N,
  X,
  V... 
)    const restorer<typeof(X)> restorer_##N(X, ##V)

◆ RESTORE

#define RESTORE (   N)    restorer_##N.restore()

Function Documentation

◆ safe_delay()

void safe_delay ( millis_t  ms)

Marlin 3D Printer Firmware Copyright (c) 2019 MarlinFirmware [https://github.com/MarlinFirmware/Marlin]

Based on Sprinter and grbl. Copyright (c) 2011 Camiel Gubbels / Erik van der Zalm

This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with this program. If not, see http://www.gnu.org/licenses/.

28  {
29  while (ms > 50) {
30  ms -= 50;
31  delay(50);
33  }
34  delay(ms);
35  thermalManager.manage_heater(); // This keeps us safe if too many small safe_delay() calls are made
36 }
Here is the call graph for this function:
Here is the caller graph for this function:

◆ serial_delay()

void serial_delay ( const millis_t  ms)
31  {
32  #if ENABLED(SERIAL_OVERRUN_PROTECTION)
33  safe_delay(ms);
34  #else
35  UNUSED(ms);
36  #endif
37 }
Here is the call graph for this function:

◆ ui8_to_percent()

constexpr uint8_t ui8_to_percent ( const uint8_t  i)
constexpr
81 { return (int(i) * 100 + 127) / 255; }
Here is the caller graph for this function:
safe_delay
void safe_delay(millis_t ms)
Definition: utility.cpp:28
i
uint8_t i
Definition: screen_test_graph.c:72
Temperature::manage_heater
static void manage_heater() _O2
Definition: temperature.cpp:975
delay
void delay(uint32_t ms)
Definition: wiring_time.c:42
thermalManager
Temperature thermalManager
Definition: temperature.cpp:89
UNUSED
#define UNUSED(X)
Definition: stm32f4xx_hal_def.h:74