#include "piccolo_config.h"
#include "piccolo_spi.h"
Függvények | |
void | spi_init (uint8 spi_mode, uint8 spi_busmode) |
uint8 | spi_io (uint8 data) |
Definíció a(z) piccolo_spi.c fájlban.
void spi_init | ( | uint8 | spi_mode, | |
uint8 | spi_busmode | |||
) |
Az SPI modul konfigurálása és engedélyezése az spi_mode paraméterrel megadott módban és adatsebességgel. A paraméterek összeállításához a piccolo_spi.h állományban definiált makrókat használhatjuk.
spi_mode | az SSPCON1 regiszterbe írandó adat | |
spi_busmode | az SSPSTAT regiszterbe írandó adat |
Definíció a(z) piccolo_spi.c fájl 18. sorában.
uint8 spi_io | ( | uint8 | data | ) |
Kiír egy bájtot a kimeneti bufferbe, kivárja, amíg az átvitel lezajlik és a bejövő adatbájttal tér vissza. A PIC18F4550 Errata szerint az átvitel végét jelző BF bitet nem szabad közvetlenül vizsgálni, ezért helyette a programmegszakítás jelzőbitet vizsgáljuk. Szintén az Errata ajánlja, hogy adatküldés előtt olvassuk ki az SSPBUF regisztert, ami egyúttal törli a BF bitet. Ha elmulasztjuk a BF bit törlését, akkor a következő beolvasott adat nem másolódik át az SSPBUF regiszterbe!
data | a kiküldeni kívánt adat |
Definíció a(z) piccolo_spi.c fájl 50. sorában.