egoShield
|
Function prototypes and definitions for the egoShield library. More...
#include "uStepper.h"
#include "U8g2lib.h"
#include "SPI.h"
#include "Arduino.h"
#include "SoftwareSerial.h"
Go to the source code of this file.
Classes | |
struct | buttons |
struct to hold information required to debounce button. More... | |
class | egoShield |
Macros | |
#define | FWBT A3 |
#define | PLBT A1 |
#define | RECBT A2 |
#define | BWBT A0 |
#define | CNT 50 |
#define | OPTO 3 |
#define | FULL 1 |
#define | HALF 2 |
#define | QUARTER 4 |
#define | EIGHT 8 |
#define | SIXTEEN 16 |
#define | en_width 11 |
#define | en_height 9 |
#define | tt_width 10 |
#define | tt_height 10 |
#define | play_width 6 |
#define | play_height 11 |
#define | loop_width 11 |
#define | loop_height 10 |
#define | logo_width 90 |
#define | logo_height 16 |
#define | DEPRESSED 0 /** Definition of DEPRESSED button state */ |
#define | PRESSED 1 /** Definition of PRESSED button state */ |
#define | HOLD 2 /** Definition of HOLD button state */ |
#define | HOLDTIME 75 /** Number of PRESSED samples before the button should be considered HOLD */ |
#define | HOLDTICK 5 /** Number of HOLD samples before a new button press should be issued */ |
#define | RESETWDT asm volatile("WDR \n\t") |
Functions | |
void | WDT_vect (void) __attribute__((signal |
Watchdog timer interrupt handler, for examining the buttons periodically. More... | |
Function prototypes and definitions for the egoShield library.
This file contains class and function prototypes for the library, as well as necessary constants and global variables.
Definition in file egoShieldTimeLapse.h.
#define BWBT A0 |
Backward button pin definition
Definition at line 126 of file egoShieldTimeLapse.h.
#define CNT 50 |
Max record count definition
Definition at line 128 of file egoShieldTimeLapse.h.
#define EIGHT 8 |
Eighth step definition
Definition at line 139 of file egoShieldTimeLapse.h.
#define FULL 1 |
Full step definition
Definition at line 133 of file egoShieldTimeLapse.h.
#define FWBT A3 |
Forward button pin definition
Definition at line 120 of file egoShieldTimeLapse.h.
#define HALF 2 |
Half step definition
Definition at line 135 of file egoShieldTimeLapse.h.
#define OPTO 3 |
Optocoupler pin definition
Definition at line 130 of file egoShieldTimeLapse.h.
#define PLBT A1 |
Play button pin definition
Definition at line 122 of file egoShieldTimeLapse.h.
#define QUARTER 4 |
Quarter step definition
Definition at line 137 of file egoShieldTimeLapse.h.
#define RECBT A2 |
Record button pin definition
Definition at line 124 of file egoShieldTimeLapse.h.
#define RESETWDT asm volatile("WDR \n\t") |
Macro for resetting watchdog timer
Definition at line 210 of file egoShieldTimeLapse.h.
#define SIXTEEN 16 |
Sixteenth step definition
Definition at line 141 of file egoShieldTimeLapse.h.
void WDT_vect | ( | void | ) |
Watchdog timer interrupt handler, for examining the buttons periodically.
The Watchdog is configured to interrupt once every 16ms, to examine the IO state of the buttons, and performing the debouncing. The debouncing algorithm looks at the last five measured IO states of each button individually, to determine whether a button has finished bouncing or not. In order to see if the button is held or just pressed, a counter (seperate for each button) is incremented every time all the last five measurements are identical and if this counter reaches the value "HOLDTIME", the button are considered held. If any IO measurement is different from the last one, the counter is reset.
Definition at line 69 of file egoShieldTimeLapse.cpp.
|
static |
Definition at line 148 of file egoShieldTimeLapse.h.
|
static |
Definition at line 145 of file egoShieldTimeLapse.h.
|
static |
Definition at line 173 of file egoShieldTimeLapse.h.
|
static |
Definition at line 168 of file egoShieldTimeLapse.h.
|
static |
Definition at line 164 of file egoShieldTimeLapse.h.
|
static |
Definition at line 159 of file egoShieldTimeLapse.h.
|
static |
Definition at line 153 of file egoShieldTimeLapse.h.
|
static |
Definition at line 156 of file egoShieldTimeLapse.h.