44 lines
805 B
C
44 lines
805 B
C
#ifndef __PANIC_H_INC
|
|
#define __PANIC_H_INC
|
|
|
|
#pragma GCC push_options
|
|
#pragma GCC optimize("-Os")
|
|
|
|
#ifdef _ACF_PANIC_BLINK
|
|
void sos() {
|
|
pinMode(LED_BUILTIN, OUTPUT);
|
|
while(true) {
|
|
digitalWrite(LED_BUILTIN, HIGH);
|
|
delay(500);
|
|
digitalWrite(LED_BUILTIN, LOW);
|
|
delay(200);
|
|
digitalWrite(LED_BUILTIN, HIGH);
|
|
delay(150);
|
|
digitalWrite(LED_BUILTIN, LOW);
|
|
delay(150);
|
|
digitalWrite(LED_BUILTIN, HIGH);
|
|
delay(150);
|
|
digitalWrite(LED_BUILTIN, LOW);
|
|
delay(150);
|
|
digitalWrite(LED_BUILTIN, HIGH);
|
|
delay(150);
|
|
digitalWrite(LED_BUILTIN, LOW);
|
|
delay(150);
|
|
delay(2000);
|
|
}
|
|
}
|
|
#endif
|
|
|
|
void panic(const __FlashStringHelper* message) {
|
|
Serial.println(F("PANIC!"));
|
|
Serial.println(message);
|
|
|
|
#ifdef _ACF_PANIC_BLINK
|
|
sos();
|
|
#endif
|
|
while(true);
|
|
}
|
|
|
|
#pragma GCC pop_options
|
|
#endif
|