diff options
author | Damien George <damien.p.george@gmail.com> | 2016-10-03 16:43:44 +1100 |
---|---|---|
committer | Damien George <damien.p.george@gmail.com> | 2016-10-03 16:43:44 +1100 |
commit | d434ce3fca088959c4a4bf525b9d730ec9bdb7b4 (patch) | |
tree | 12e8b38116036759da7ce741c5be904bec58778d /extmod/machine_spi.h | |
parent | a22a67661aa4f6309efa1e81b279629050fd1966 (diff) | |
download | micropython-d434ce3fca088959c4a4bf525b9d730ec9bdb7b4.tar.gz micropython-d434ce3fca088959c4a4bf525b9d730ec9bdb7b4.zip |
extmod/machine_spi: Factor out software SPI code from esp8266 to extmod.
Diffstat (limited to 'extmod/machine_spi.h')
-rw-r--r-- | extmod/machine_spi.h | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/extmod/machine_spi.h b/extmod/machine_spi.h index 35a911d919..e1922c6e8b 100644 --- a/extmod/machine_spi.h +++ b/extmod/machine_spi.h @@ -28,12 +28,25 @@ #define MICROPY_INCLUDED_EXTMOD_MACHINE_SPI_H #include "py/obj.h" +#include "py/mphal.h" // SPI protocol typedef struct _mp_machine_spi_p_t { void (*transfer)(mp_obj_base_t *obj, size_t len, const uint8_t *src, uint8_t *dest); } mp_machine_spi_p_t; +typedef struct _mp_machine_soft_spi_obj_t { + mp_obj_base_t base; + uint32_t baudrate; + uint8_t polarity; + uint8_t phase; + mp_hal_pin_obj_t sck; + mp_hal_pin_obj_t mosi; + mp_hal_pin_obj_t miso; +} mp_machine_soft_spi_obj_t; + +void mp_machine_soft_spi_transfer(mp_obj_base_t *self, size_t len, const uint8_t *src, uint8_t *dest); + MP_DECLARE_CONST_FUN_OBJ(mp_machine_spi_read_obj); MP_DECLARE_CONST_FUN_OBJ(mp_machine_spi_readinto_obj); MP_DECLARE_CONST_FUN_OBJ(mp_machine_spi_write_obj); |