aboutsummaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
Diffstat (limited to 'include')
-rw-r--r--include/README39
-rw-r--r--include/header.h11
-rw-r--r--include/user_settings.h18
3 files changed, 68 insertions, 0 deletions
diff --git a/include/README b/include/README
new file mode 100644
index 0000000..194dcd4
--- /dev/null
+++ b/include/README
@@ -0,0 +1,39 @@
+
+This directory is intended for project header files.
+
+A header file is a file containing C declarations and macro definitions
+to be shared between several project source files. You request the use of a
+header file in your project source file (C, C++, etc) located in `src` folder
+by including it, with the C preprocessing directive `#include'.
+
+```src/main.c
+
+#include "header.h"
+
+int main (void)
+{
+ ...
+}
+```
+
+Including a header file produces the same results as copying the header file
+into each source file that needs it. Such copying would be time-consuming
+and error-prone. With a header file, the related declarations appear
+in only one place. If they need to be changed, they can be changed in one
+place, and programs that include the header file will automatically use the
+new version when next recompiled. The header file eliminates the labor of
+finding and changing all the copies as well as the risk that a failure to
+find one copy will result in inconsistencies within a program.
+
+In C, the usual convention is to give header files names that end with `.h'.
+It is most portable to use only letters, digits, dashes, and underscores in
+header file names, and at most one dot.
+
+Read more about using header files in official GCC documentation:
+
+* Include Syntax
+* Include Operation
+* Once-Only Headers
+* Computed Includes
+
+https://gcc.gnu.org/onlinedocs/cpp/Header-Files.html
diff --git a/include/header.h b/include/header.h
new file mode 100644
index 0000000..18d92a4
--- /dev/null
+++ b/include/header.h
@@ -0,0 +1,11 @@
+#define LED_PIN 2 // Pin the LED strip is connected to
+#define PHOTORESISTOR_PIN 3 // Used for dimming the LEDs based on light level
+#define SEGMENT_COUNT 7 // 7 segment display
+#define DIGIT_COUNT 4 // Number of digits 4 for a clock
+#define START_OFFSET 1 // First segment flickers, voltage level shifter?
+#define LED_COUNT (DIGIT_COUNT * SEGMENT_COUNT) + START_OFFSET
+#define LED_TYPE WS2811
+#define COLOR_ORDER GRB
+#define SATURATION 255
+#define WIFI_CONN_ANI_TIMEOUT 1000 * 60 // Stop WiFi connection animation after one minute
+
diff --git a/include/user_settings.h b/include/user_settings.h
new file mode 100644
index 0000000..1538f7d
--- /dev/null
+++ b/include/user_settings.h
@@ -0,0 +1,18 @@
+// #define WIFI_SSID ""
+// #define WIFI_PASSWORD ""
+
+// #define NTP_SERVER "pool.ntp.org" // Don't do a D-Link
+#define NTP_UPDATE_INTERVAL 60000
+
+#ifndef WIFI_SSID
+#error You must specify a WiFi SSID above, remember to uncomment the line
+#endif
+
+#ifndef WIFI_PASSWORD
+#error You must specify a WiFi password above, remember to uncomment the line
+#endif
+
+#ifndef NTP_SERVER
+#error You must specify an NTP server above, remember to uncomment the line
+#endif
+