5#ifndef _NB_SER_INTERNAL
6#define _NB_SER_INTERNAL
12#define UART_INIT (0x0001)
14#define UART_TX_EMPTY (0x0002)
16#define UART_SENT_STOP (0x0004)
18#define UART_RX_STOP (0x0008)
28#define UART_FLOW_NEED_TOSTOP (0x0040)
30#define UART_FLOW_NEED_TOSTART (0x0080)
32#define UART_RS485_TX_MODE \
36#define UART_MULTI_MODE (0x0200)
38#define UART_FLOW_TXRTSCTS \
42#define UART_FLOW_TX485FD \
46#define UART_FLOW_TX485HD \
50#define UART_FLOW_RXRTSCTS \
54#define UART_RS422_MODE (0x4000)
56#define UART_TX_LAST_BIT \
71#define UART_XOFF_LIMIT (100)
72#define UART_XON_LIMIT (200)
74typedef int(GetNextCharFunc)(
int uartnum);
75typedef void(PutNextCharFunc)(
int uartnum, uint8_t c);
77int BaseGetChar(
int num);
78void BasePutChar(
int num, uint8_t c);
92constexpr inline uint8_t GetBitCount(dataBits_t bits)
98#ifdef SERIAL_USE_RING_BUFFER
108 int put(uint8_t d)
volatile;
109 int get(uint8_t *d)
volatile;
112 void Init(uint8_t max_buffers, uint8_t fromisr = 1);
113 void Reset(uint8_t max_buffers);
114 int WriteData(uint8_t *d,
int len)
volatile;
115 int ReadData(uint8_t *d,
int len)
volatile;
120 uint16_t SpaceAvail();
121 inline void SetMaxChunkLen(uint32_t maxStorage) {
return; }
122 inline void SetStartOffset(uint32_t offset) {
return; }
123 inline void SetMaxBuffers(uint8_t max_buffers) {
return; }
124 inline uint32_t GetMaxBuffers() {
return 1; }
125 inline uint32_t GetMaxChunkLen() {
return siz; }
126 inline uint32_t GetStartOffset() {
return 0; }
127 inline uint32_t GetMinimumFullSize(
int maxSegments = -1) {
return siz; }
139 GetNextCharFunc *m_pGetCharFunc;
140 PutNextCharFunc *m_pPutCharFunc;
143 dataBits_t m_dataBits : 3;
146extern UartDataRec UartData[];
void WriteData(int fd, const char *c, int siz)
Definition JSON/DemoNetBurner/src/gifCompress.cpp:142
FIFO buffer storage using linked pool buffers.
Definition buffers.h:443