aboutsummaryrefslogtreecommitdiff
path: root/spi_usi.h
diff options
context:
space:
mode:
authorKarel Kočí <cynerd@email.cz>2015-03-14 11:36:26 +0100
committerKarel Kočí <cynerd@email.cz>2015-03-14 11:36:26 +0100
commit8a115123eee5b9e294ff86ec4e41e6112dc47774 (patch)
tree23e864f9fafb91a77ca6b57956dcfa69dc5209b1 /spi_usi.h
parentd7a7c97220ab9660722a3602cc74549b0c82d3d0 (diff)
downloadavr-ioe-8a115123eee5b9e294ff86ec4e41e6112dc47774.tar.gz
avr-ioe-8a115123eee5b9e294ff86ec4e41e6112dc47774.tar.bz2
avr-ioe-8a115123eee5b9e294ff86ec4e41e6112dc47774.zip
SPI USI implementation !NOT TESTED!
SPI on USI implemented. But not tested yet.
Diffstat (limited to 'spi_usi.h')
-rw-r--r--spi_usi.h25
1 files changed, 25 insertions, 0 deletions
diff --git a/spi_usi.h b/spi_usi.h
new file mode 100644
index 0000000..2e603ac
--- /dev/null
+++ b/spi_usi.h
@@ -0,0 +1,25 @@
+#include <stdio.h>
+#include <avr/io.h>
+#include <avr/interrupt.h>
+#include <inttypes.h>
+
+#include "mcu/mcu.h"
+
+#ifndef _IOE_SPI_USI_H_
+#define _IOE_SPI_USI_H_
+
+inline void ioe_spi_usi_init(void);
+#ifdef IOE_SPI_USI_MASTER
+inline int8_t ioe_spi_usi_transfer(int8_t data);
+#else
+inline void ioe_spi_usi_expose(int8_t data);
+inline void ioe_spi_usi_expect(void);
+inline int ioe_spi_usi_ready(void);
+inline void ioe_spi_usi_join(void);
+
+// Following function must be user defined
+inline void ioe_spi_usi_retrieve(int8_t data);
+#endif /* IOE_SPI_USI_MASTER */
+
+
+#endif /* _IOE_SPI_USI_H_ */