|
IQRF SPI library for Arduino
Version 1.2
|
#include <IQRFSPI.h>
Public Types | |
| enum | statuses { NO_MODULE = 0xFF, BUSY = 0xFE, DATA_TRANSFER = 0xFD, DISABLED = 0x00, CRCM_OK = 0x3F, CRCM_ERR = 0x3E, COMMUNICATION_MODE = 0x80, PROGRAMMING_MODE = 0x81, DEBUG_MODE = 0x82, SLOW_MODE = 0x83, USER_STOP = 0x07 } |
| enum | masterStatuses { FREE = 0, WRITE = 1, READ = 2 } |
| enum | commands { CHECK = 0x00, WR_RD = 0xF0, RAM_READ = 0xF1, EEPROM_READ = 0xF2, EEPROM_PGM = 0xF3, MODULE_INFO = 0xF5, FLASH_PGM = 0xF6, PLUGIN_PGM = 0xF9 } |
Public Member Functions | |
| uint8_t | getStatus () |
| void | setStatus (uint8_t status) |
| void | enableMaster () |
| void | disableMaster () |
| bool | isMasterEnabled () |
| uint8_t | getMasterStatus () |
| void | setMasterStatus (uint8_t status) |
| void | enableFastSpi () |
| void | disableFastSpi () |
| bool | isFastSpiEnabled () |
| unsigned long | getBytePause () |
| void | setBytePause (unsigned long time) |
IQRF SPI
| enum IQRFSPI::commands |
SPI commands for TR module (see IQRF SPI user manual)
IQRF SPI master statuses
| Enumerator | |
|---|---|
| FREE |
SPI master free. |
| WRITE |
SPI master wrtite. |
| READ |
SPI master read. |
| enum IQRFSPI::statuses |
SPI status of TR module (see IQRF SPI user manual)
| void IQRFSPI::disableFastSpi | ( | ) |
Disable Fast SPI
| void IQRFSPI::disableMaster | ( | ) |
Disable SPI master
| void IQRFSPI::enableFastSpi | ( | ) |
Enable Fast SPI
| void IQRFSPI::enableMaster | ( | ) |
Enable SPI master
| unsigned long IQRFSPI::getBytePause | ( | ) |
Get SPI byte to byte pause in us
| uint8_t IQRFSPI::getMasterStatus | ( | ) |
Get Master status
| uint8_t IQRFSPI::getStatus | ( | ) |
Get TR module SPI status
| Status code | Status message | Description |
|---|---|---|
| 0xFF | NO_MODULE | SPI not working (HW error) |
| 0xFE | BUSY | SPI busy in Master disabled mode |
| 0xFD | DATA_TRANSFER | SPI data transfer in progress |
| 0x00 | DISABLED | SPI not working (disabled) |
| 0x3F | CRCM_OK | SPI not ready (full buffer, last CRCM ok) |
| 0x3E | CRCM_ERR | SPI not ready (full buffer, last CRCM error) |
| 0xFF | COMMUNICATION_MODE | SPI ready (communication mode) |
| 0x81 | PROGRAMMING_MODE | SPI ready (programming mode) |
| 0x82 | DEBUG_MODE | SPI ready (debugging mode) |
| 0x83 | SLOW_MODE | SPI not working in background |
| 0x07 | USER_STOP | SPI state after stopSPI(); |
| bool IQRFSPI::isFastSpiEnabled | ( | ) |
Get Fast SPI status
| bool IQRFSPI::isMasterEnabled | ( | ) |
Get TR SPI master status
| void IQRFSPI::setBytePause | ( | unsigned long | time | ) |
Set SPI byte to byte pause in us
| time | Byte to byte time in us |
| void IQRFSPI::setMasterStatus | ( | uint8_t | status | ) |
Set master status
| status | Master status |
| void IQRFSPI::setStatus | ( | uint8_t | status | ) |
Set TR module SPI status
| status | SPI status |