#include <dev/usart.h>
Data Fields | |
| u_char *volatile | rbf_head |
| Buffer head pointer. | |
| u_char *volatile | rbf_tail |
| Buffer tail pointer. | |
| u_char * | rbf_start |
| First buffer address. | |
| u_char * | rbf_last |
| Last buffer address. | |
| size_t | rbf_siz |
| Total buffer size. | |
| volatile size_t | rbf_cnt |
| Number of bytes in the buffer. | |
| size_t | rbf_lwm |
| Buffer low watermark. | |
| size_t | rbf_hwm |
| Buffer high watermark. | |
| HANDLE | rbf_que |
| Queue of waiting threads. | |
|
|
Buffer head pointer. Changed by the receiver interrupt. |
|
|
Buffer tail pointer. Changed by the transmitter interrupt. |
|
|
Total buffer size. Zero, if no buffer available. |
|
|
Number of bytes in the buffer. Changed by receiver and transmitter interrupts. |
|
|
Buffer low watermark. If the number of bytes in the buffer reaches this value, then the previously disabled buffer input is enabled again. |
|
|
Buffer high watermark. If the number of bytes in the buffer reaches this value, then buffer input is disabled. |
|
|
Queue of waiting threads. Consuming threads are added to this queue when the buffer is empty. Producing threads are added to this queue when the buffer is full. |