TWI/I2C bus structure. More...
#include <twif.h>
Data Fields | |
uptr_t | bus_base |
Bus base address. | |
IRQ_HANDLER * | bus_sig_ev |
Bus data and event interrupt handler. | |
IRQ_HANDLER * | bus_sig_er |
Bus error interrupt handler. If not supported by your device, leave it empty. | |
HANDLE | bus_mutex |
Bus lock queue. | |
NUTTWIICB * | bus_icb |
Interface Control Block. | |
uint_fast8_t | bus_dma_tx |
DMA channel for TX direction. | |
uint_fast8_t | bus_dma_rx |
DMA channel for RX direction. | |
int(* | bus_initbus )(void) |
Initialize bus controller. | |
int(* | bus_recover )(void) |
Recover bus controller. |
TWI/I2C bus structure.
Bus base address.
Referenced by NutRegisterTwiBus(), NutTwiGetSpeed(), NutTwiSetSpeed(), NutTwiSoftReset(), NutTwiStartRolling(), TwErrorIrq(), and TwEventIrq().
Bus data and event interrupt handler.
Referenced by NutDestroyTwiBus(), and NutRegisterTwiBus().
Bus error interrupt handler. If not supported by your device, leave it empty.
Referenced by NutRegisterTwiBus().
Bus lock queue.
Referenced by NutRegisterTwiBus(), NutTwiMasterRegRead(), NutTwiMasterRegWrite(), and NutTwiMasterTranceive().
Interface Control Block.
Referenced by NutDestroyTwiBus(), NutRegisterTwiBus(), NutTwiIndexes(), NutTwiIOCtl(), NutTwiMasterError(), NutTwiMasterRegRead(), NutTwiMasterRegWrite(), NutTwiMasterTranceive(), NutTwiSlaveError(), NutTwiSlaveListen(), NutTwiSlaveRespond(), TwErrorIrq(), and TwEventIrq().
DMA channel for TX direction.
DMA channel for RX direction.
int(* _NUTTWIBUS::bus_initbus)(void) |
Initialize bus controller.
This routine is called during device registration.
Referenced by NutRegisterTwiBus().
int(* _NUTTWIBUS::bus_recover)(void) |
Recover bus controller.
This routine is called for recovering where a slave hangs with SCL low.