123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051 |
- #include <Arduino.h>
-
- #include "config.h"
- #include "config_pins.h"
-
- //#define DISABLE_BEEPING
-
- unsigned long last_led_blink_time = 0;
-
- #ifndef DISABLE_BEEPING
- unsigned long beep_stop_time = 0;
- #endif // DISABLE_BEEPING
-
- void async_beep(int time, int freq) {
- #ifndef DISABLE_BEEPING
- beep_stop_time = millis() + time;
- tone(BEEPER, freq);
- #endif // DISABLE_BEEPING
- }
-
- void blocking_beep(int time, int freq, int repeat = 0) {
- #ifndef DISABLE_BEEPING
- for (int i = 0; i <= repeat; i++) {
- tone(BEEPER, freq);
- delay(time);
- noTone(BEEPER);
-
- if ((repeat > 0) && (i < repeat)) {
- delay(time);
- }
- }
- #endif // DISABLE_BEEPING
- }
-
- void common_run(void) {
- unsigned long t = millis();
-
- #ifndef DISABLE_BEEPING
- // stop async beep
- if ((beep_stop_time > 0) && (t > beep_stop_time)) {
- noTone(BEEPER);
- beep_stop_time = 0;
- }
- #endif // DISABLE_BEEPING
-
- // blink heartbeat LED
- if ((t - last_led_blink_time) >= LED_BLINK_INTERVAL) {
- last_led_blink_time = t;
- digitalWrite(LED_PIN, !digitalRead(LED_PIN));
- }
- }
|