|
- #include "rc2014_spi.h"
-
- void spi_init(SPI *spi, EXCH spixfn)
- {
- spi->selected = false;
- spi->resp = 0xff;
- spi->spixfn = spixfn;
- }
-
- // TODO: for now, any nonzero value enables the SPI. To allow
- // emulation of systems with multi-devices SPI relay, change
- // this.
- void spi_ctl_wr(SPI *spi, byte val)
- {
- spi->selected = val;
- }
-
- void spi_wr(SPI *spi, byte val)
- {
- if (spi->selected) {
- spi->resp = spi->spixfn(val);
- }
- }
-
- byte spi_rd(SPI *spi)
- {
- return spi->selected ? spi->resp : 0xff;
- }
|