forked from Michel2/timex-datalink-arduino
Add enable_fast_mode to LedBlaster.
This commit is contained in:
2 files changed
+23
-5
No files matched your search
+22
-5
@@ -1,25 +1,42 @@
|
|||||||
#define LED_PIN 13
|
#define LED_PIN 13
|
||||||
|
|
||||||
#define LED_ON_MS 15
|
#define LED_ON_MS_NORMAL 15
|
||||||
#define LED_OFF_MS 450
|
#define LED_OFF_MS_NORMAL 450
|
||||||
|
|
||||||
|
#define LED_ON_MS_FAST 6
|
||||||
|
#define LED_OFF_MS_FAST 408
|
||||||
|
|
||||||
#include <Arduino.h>
|
#include <Arduino.h>
|
||||||
|
|
||||||
namespace LedBlaster {
|
namespace LedBlaster {
|
||||||
|
uint16_t led_on_ms;
|
||||||
|
uint16_t led_off_ms;
|
||||||
|
|
||||||
|
void enable_fast_mode(bool fast_mode_enabled) {
|
||||||
|
if (fast_mode_enabled) {
|
||||||
|
led_on_ms = LED_ON_MS_FAST;
|
||||||
|
led_off_ms = LED_OFF_MS_FAST;
|
||||||
|
} else {
|
||||||
|
led_on_ms = LED_ON_MS_NORMAL;
|
||||||
|
led_off_ms = LED_OFF_MS_NORMAL;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
void setup() {
|
void setup() {
|
||||||
pinMode(LED_PIN, OUTPUT);
|
pinMode(LED_PIN, OUTPUT);
|
||||||
|
enable_fast_mode(false);
|
||||||
}
|
}
|
||||||
|
|
||||||
void emit_0() {
|
void emit_0() {
|
||||||
digitalWrite(LED_PIN, HIGH);
|
digitalWrite(LED_PIN, HIGH);
|
||||||
delayMicroseconds(LED_ON_MS);
|
delayMicroseconds(led_on_ms);
|
||||||
|
|
||||||
digitalWrite(LED_PIN, LOW);
|
digitalWrite(LED_PIN, LOW);
|
||||||
delayMicroseconds(LED_OFF_MS);
|
delayMicroseconds(led_off_ms);
|
||||||
}
|
}
|
||||||
|
|
||||||
void emit_1() {
|
void emit_1() {
|
||||||
delayMicroseconds(LED_ON_MS + LED_OFF_MS);
|
delayMicroseconds(led_on_ms + led_off_ms);
|
||||||
}
|
}
|
||||||
|
|
||||||
void emit_byte(uint8_t serial_byte) {
|
void emit_byte(uint8_t serial_byte) {
|
||||||
|
|||||||
@@ -5,6 +5,7 @@
|
|||||||
|
|
||||||
namespace LedBlaster {
|
namespace LedBlaster {
|
||||||
void setup();
|
void setup();
|
||||||
|
void enable_fast_mode(bool fast_mode_enabled);
|
||||||
void emit_0();
|
void emit_0();
|
||||||
void emit_1();
|
void emit_1();
|
||||||
void emit_byte(uint8_t serial_byte);
|
void emit_byte(uint8_t serial_byte);
|
||||||
|
|||||||
Reference in new issue
Block a user