Fork of Smoothie to port to mbed non-LPC targets.
Fork of Smoothie by
libs/spi.h@2:1df0b61d3b5a, 2014-02-28 (annotated)
- Committer:
- Michael J. Spencer
- Date:
- Fri Feb 28 18:52:52 2014 -0800
- Revision:
- 2:1df0b61d3b5a
Update to latest Smoothie.
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
Michael J. Spencer |
2:1df0b61d3b5a | 1 | #ifndef _SPI_H |
Michael J. Spencer |
2:1df0b61d3b5a | 2 | #define _SPI_H |
Michael J. Spencer |
2:1df0b61d3b5a | 3 | |
Michael J. Spencer |
2:1df0b61d3b5a | 4 | #include <stdint.h> |
Michael J. Spencer |
2:1df0b61d3b5a | 5 | |
Michael J. Spencer |
2:1df0b61d3b5a | 6 | #include "spi_hal.h" |
Michael J. Spencer |
2:1df0b61d3b5a | 7 | |
Michael J. Spencer |
2:1df0b61d3b5a | 8 | class SPI { |
Michael J. Spencer |
2:1df0b61d3b5a | 9 | public: |
Michael J. Spencer |
2:1df0b61d3b5a | 10 | SPI(PinName mosi, PinName miso, PinName sclk); |
Michael J. Spencer |
2:1df0b61d3b5a | 11 | ~SPI(); |
Michael J. Spencer |
2:1df0b61d3b5a | 12 | |
Michael J. Spencer |
2:1df0b61d3b5a | 13 | void frequency(uint32_t); |
Michael J. Spencer |
2:1df0b61d3b5a | 14 | uint8_t write(uint8_t); |
Michael J. Spencer |
2:1df0b61d3b5a | 15 | |
Michael J. Spencer |
2:1df0b61d3b5a | 16 | // int writeblock(uint8_t *, int); |
Michael J. Spencer |
2:1df0b61d3b5a | 17 | |
Michael J. Spencer |
2:1df0b61d3b5a | 18 | bool can_DMA(); |
Michael J. Spencer |
2:1df0b61d3b5a | 19 | int setup_DMA_rx(DMA_REG *); |
Michael J. Spencer |
2:1df0b61d3b5a | 20 | int setup_DMA_tx(DMA_REG *); |
Michael J. Spencer |
2:1df0b61d3b5a | 21 | |
Michael J. Spencer |
2:1df0b61d3b5a | 22 | void irq(void); |
Michael J. Spencer |
2:1df0b61d3b5a | 23 | |
Michael J. Spencer |
2:1df0b61d3b5a | 24 | static SPI* isr_dispatch[N_SPI_INTERRUPT_ROUTINES]; |
Michael J. Spencer |
2:1df0b61d3b5a | 25 | |
Michael J. Spencer |
2:1df0b61d3b5a | 26 | protected: |
Michael J. Spencer |
2:1df0b61d3b5a | 27 | uint32_t delay; |
Michael J. Spencer |
2:1df0b61d3b5a | 28 | Pin_t miso; |
Michael J. Spencer |
2:1df0b61d3b5a | 29 | Pin_t mosi; |
Michael J. Spencer |
2:1df0b61d3b5a | 30 | Pin_t sclk; |
Michael J. Spencer |
2:1df0b61d3b5a | 31 | SPI_REG *sspr; |
Michael J. Spencer |
2:1df0b61d3b5a | 32 | }; |
Michael J. Spencer |
2:1df0b61d3b5a | 33 | |
Michael J. Spencer |
2:1df0b61d3b5a | 34 | #endif /* _SPI_H */ |