Included Files
- #include <nut/include/cfg/clock.h>
- #include <nut/include/sys/atom.h>
- #include <nut/include/sys/event.h>
- #include <nut/include/sys/timer.h>
- #include <nut/include/dev/irqreg.h>
- #include <nut/include/dev/usartsc16is752.h>
- #include <nut/include/dev/twif.h>
Preprocessor definitions
#define MYPRINT( fmt, ... )
#define US_OVRE 0x00000020
#define ASCII_XON 0x11
#define ASCII_XOFF 0x13
#define XON_PENDING 0x10
#define XOFF_PENDING 0x20
#define XOFF_SENT 0x40
#define XOFF_RCVD 0x80
Local Variables
rx_errors
static ureg_t rx_errors
flow_control
static uint_fast8_t flow_control
irqEvents
static HANDLE irqEvents[2]
deviceList
static NUTDEVICE* deviceList[2][2]
regselState
static regselstate_t regselState[2][2]
i2caddr
static uint8_t i2caddr[2]
int Sc16is752RegRead ( uint8_t dev, uint8_t ch, uint8_t reg, uint8_t* val )
int Sc16is752RegWrite ( uint8_t dev, uint8_t ch, uint8_t reg, uint8_t val )
int Sc16is752UsartDeinit ( uint8_t dev, uint8_t ch, IRQ_HANDLER* irq )
void Sc16is752UsartDisable ( uint8_t dev, uint8_t ch )
void Sc16is752UsartEnable ( uint8_t dev, uint8_t ch )
uint8_t Sc16is752UsartGetClockMode ( uint8_t dev, uint8_t ch )
uint8_t Sc16is752UsartGetDataBits ( uint8_t dev, uint8_t ch )
uint32_t Sc16is752UsartGetFlowControl ( uint8_t dev, uint8_t ch )
uint8_t Sc16is752UsartGetParity ( uint8_t dev, uint8_t ch )
uint32_t Sc16is752UsartGetSpeed ( uint8_t dev, uint8_t ch )
uint32_t Sc16is752UsartGetStatus ( uint8_t dev, uint8_t ch )
uint8_t Sc16is752UsartGetStopBits ( uint8_t dev, uint8_t ch )
int Sc16is752UsartInit ( uint8_t dev, uint8_t ch, NUTDEVICE* nutDev, IRQ_HANDLER* irq )
void Sc16is752UsartInterruptProcessing ( void* arg )
void Sc16is752UsartProcessChannelInterrupt ( uint8_t dev, uint8_t ch, uint8_t iir )
void Sc16is752UsartRxStart ( uint8_t dev, uint8_t ch )
int Sc16is752UsartSetClockMode ( uint8_t mode, uint8_t dev, uint8_t ch )
int Sc16is752UsartSetDataBits ( uint8_t bits, uint8_t dev, uint8_t ch )
int Sc16is752UsartSetFlowControl ( uint32_t flags, uint8_t dev, uint8_t ch )
int Sc16is752UsartSetParity ( uint8_t mode, uint8_t dev, uint8_t ch )
int Sc16is752UsartSetSpeed ( uint32_t rate, uint8_t dev, uint8_t ch )
int Sc16is752UsartSetStatus ( uint32_t flags, uint8_t dev, uint8_t ch )
int Sc16is752UsartSetStopBits ( uint8_t bits, uint8_t dev, uint8_t ch )
void Sc16is752UsartTxStart ( uint8_t dev, uint8_t ch )
int selectRegisterSet ( uint8_t dev, uint8_t ch, uint8_t reg )
int setBaudrate ( uint8_t dev, uint8_t ch, int baud )
static int Sc16is752RegRawRead ( uint8_t dev, uint8_t ch, uint8_t reg, uint8_t* val )
static int Sc16is752RegRawWrite ( uint8_t dev, uint8_t ch, uint8_t reg, uint8_t val )
static void Sc16is752UsartInterrupt ( void* arg )
static void Sc16is752UsartRxReady ( uint8_t dev, uint8_t ch, RINGBUF* rbf )
static void Sc16is752UsartTxReady ( uint8_t dev, uint8_t ch, RINGBUF* rbf )
static uint8_t selectDefaultRegisterSet ( uint8_t dev, uint8_t ch )
static uint8_t selectEnhancedRegisterSet ( uint8_t dev, uint8_t ch )
static uint8_t selectSpecialRegisterSet ( uint8_t dev, uint8_t ch )
static uint8_t switchEnhancedFunctions ( uint8_t dev, uint8_t ch, uint8_t flag )
static uint8_t switchTcrTlrSelect ( uint8_t dev, uint8_t ch, uint8_t flag )