summaryrefslogtreecommitdiff
path: root/lib
diff options
context:
space:
mode:
authorChristian Pointner <equinox@spreadspace.org>2018-11-22 02:42:45 +0100
committerChristian Pointner <equinox@spreadspace.org>2018-11-22 02:42:45 +0100
commitf8eee14729012f620fb7448334eaef46f1964198 (patch)
tree6105e9130462581e45ba1dae9e7a98bc15d7a3f5 /lib
parentadded basic environment for RadioHead lib - not working yet (diff)
some more tests - still does not compile
Diffstat (limited to 'lib')
-rw-r--r--lib/SPI.h17
-rw-r--r--lib/arduino-minimal.h54
2 files changed, 63 insertions, 8 deletions
diff --git a/lib/SPI.h b/lib/SPI.h
index 6b3264e..a770999 100644
--- a/lib/SPI.h
+++ b/lib/SPI.h
@@ -23,15 +23,16 @@
#ifndef SPREADAVR_SPI_h_INCLUDED
#define SPREADAVR_SPI_h_INCLUDED
-#ifdef __cplusplus
-extern "C" {
-#endif
-
- // TODO: for now this is just a placeholder to make so we
+ // TODO: for now this is just a placeholder to make it so we
// can compile RadioHead
-#ifdef __cplusplus
-}
-#endif
+class SPIClass { // AVR
+public:
+ static void begin();
+ static void end();
+ static uint8_t transfer(uint8_t data);
+};
+
+extern SPIClass SPI;
#endif
diff --git a/lib/arduino-minimal.h b/lib/arduino-minimal.h
new file mode 100644
index 0000000..64eb867
--- /dev/null
+++ b/lib/arduino-minimal.h
@@ -0,0 +1,54 @@
+/*
+ * spreadspace avr utils
+ *
+ *
+ * Copyright (C) 2013-2018 Christian Pointner <equinox@spreadspace.org>
+ *
+ * This file is part of spreadspace avr utils.
+ *
+ * spreadspace avr utils is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 3 of the License, or
+ * any later version.
+ *
+ * spreadspace avr utils is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with spreadspace avr utils. If not, see <http://www.gnu.org/licenses/>.
+ */
+
+#ifndef SPREADAVR_arduino_minimal_h_INCLUDED
+#define SPREADAVR_arduino_minimal_h_INCLUDED
+
+#define HIGH 0x1
+#define LOW 0x0
+
+#define INPUT 0x0
+#define OUTPUT 0x1
+#define INPUT_PULLUP 0x2
+
+#define CHANGE 1
+#define FALLING 2
+#define RISING 3
+
+unsigned long millis(void);
+void delay(unsigned long);
+
+void pinMode(uint8_t, uint8_t);
+void digitalWrite(uint8_t, uint8_t);
+// int digitalRead(uint8_t);
+// int analogRead(uint8_t);
+// void analogReference(uint8_t mode);
+// void analogWrite(uint8_t, int);
+
+void attachInterrupt(uint8_t, void (*)(void), int mode);
+//void detachInterrupt(uint8_t);
+
+// WMath prototypes
+long random(long);
+long random(long, long);
+
+#endif