This shows you the differences between two versions of the page.
Both sides previous revision Previous revision | Next revision Both sides next revision | ||
soc:2017:portrpi [2017/08/28 03:01] nekorobov [The SPI driver] |
soc:2017:portrpi [2017/08/28 03:07] nekorobov [The SPI driver] |
||
---|---|---|---|
Line 62: | Line 62: | ||
====The SPI driver==== | ====The SPI driver==== | ||
- | The MINIX hasn't had the SPI stack yet, so we decided to develop the SPI driver as the chardriver. Driver is designed in the poll mode. Communications with it carried out by open/close, read/write for sending data and ioctls for the setting SPI mode and speed. There are 4 modes of SPI, the difference between them is: pass data with the rising or down edge of sync signal, the sync signal starts with up or down level. Variation of this parameters determine modes. The current SPI driver can work only as a master.\\ | + | The MINIX hasn't had the SPI stack yet, so we decided to develop the SPI driver as the chardriver. Driver is designed in the poll mode. It is the bidirectional driver now, it means that we need only three wires to connect the RPI with device:\\ **SCLK->SCL\\ SDA->MOSI\\ CE{n}->CS**\\ Communications with it carried out by open/close, read/write for sending data and ioctls for the setting SPI mode and speed. There are 4 modes of SPI, the difference between them is: pass data with the rising or down edge of sync signal, the sync signal starts with up or down level. Variation of this parameters determine modes. The current SPI driver can work only as a master.\\ |
It has three GPIO out as I2C, so we have to use three devices: spi-1, spi-2 and spi-3. | It has three GPIO out as I2C, so we have to use three devices: spi-1, spi-2 and spi-3. | ||