52 switch (config_option){
62 if (data > 4 || data <=0) {
160 if (
mode != SPI_MODE0 ||
mode != SPI_MODE1 ||
mode != SPI_MODE2 ||
mode != SPI_MODE3 ) {
177 #if (SPI_NUMBER_OF_INTERFACES > 1)
188 #if (SPI_NUMBER_OF_INTERFACES > 2)
221 uint8_t interface_in, interface_out;
240 _spi->endTransaction();
static volatile bool byte_order[SPI_NUMBER_OF_INTERFACES]
Interface_spi(uint8_t id, uint32_t frequency=100000U, uint8_t width=1, uint8_t mode=0, bool byte_order=false)
static void send_packet(uint8_t id, uint32_t data)
static void configure(uint8_t id, uint8_t config_option, uint8_t data)
static volatile uint8_t mode[SPI_NUMBER_OF_INTERFACES]
void write(uint32_t data) volatile
static volatile Interface_spi * inst[SPI_NUMBER_OF_INTERFACES]
static volatile uint32_t frequency[SPI_NUMBER_OF_INTERFACES]
static volatile bool active[SPI_NUMBER_OF_INTERFACES]
static volatile uint8_t width[SPI_NUMBER_OF_INTERFACES]
void error_message(uint8_t error_header, uint8_t source_header, uint32_t value, uint8_t sub_source_header)
void send_data32(uint8_t header, uint32_t value, bool is_confirmation)
void send_config(uint8_t header, uint8_t config_header, uint8_t value)
@ OUT_ERROR_INTERFACE_NOT_ACTIVE
@ OUT_ERROR_UNKNOWN_CONFIGURATION
@ OUT_ERROR_INTERFACE_ALREADY_ACTIVE
@ OUT_ERROR_DATA_OUT_OF_BOUNDS
@ OUT_ERROR_CONFIGURATION_OUT_OF_BOUNDS
bool reserve_output_pin(uint8_t id, uint8_t from_instruction)
bool reserve_input_pin(uint8_t id, uint8_t from_instruction)
#define SPI_NUMBER_OF_INTERFACES