30319_labs
Sistemas Electrónicos con Microprocesadores
Cargando...
Buscando...
Nada coincide
circ_buf.h
1
10
11#ifndef _CIRC_BUF_H_
12#define _CIRC_BUF_H_
13
14#include <stdint.h>
15
20
51
57
58#define CIRC_BUF_SIZE 8
59 /* end of circbuf_config */
61
67
72typedef struct {
74 uint16_t head;
75 uint16_t tail;
77 /* end of circbuf_types */
79
85
91
97 /* end of circbuf_globals */
99
105
118void circ_buf_init(circ_buf_t * const cb, uint16_t head, uint16_t tail);
119
126uint8_t circ_buf_is_empty(circ_buf_t * const cb);
127
134uint8_t circ_buf_is_full(circ_buf_t * const cb);
135
142int8_t circ_buf_push(circ_buf_t * const cb, int16_t item);
143
150int8_t circ_buf_pop(circ_buf_t * const cb, int16_t * const item);
151 /* end of circbuf_functions */
153 /* end of CircBuf */
155 /* end of Shared */
157
158#endif /* _CIRC_BUF_H_ */
#define CIRC_BUF_SIZE
Definition circ_buf.h:58
uint8_t circ_buf_is_empty(circ_buf_t *const cb)
Comprueba si el buffer circular está vacío.
int8_t circ_buf_pop(circ_buf_t *const cb, int16_t *const item)
Extrae una muestra del buffer circular.
void circ_buf_init(circ_buf_t *const cb, uint16_t head, uint16_t tail)
Inicializa el buffer circular.
uint8_t circ_buf_is_full(circ_buf_t *const cb)
Comprueba si el buffer circular está lleno.
int8_t circ_buf_push(circ_buf_t *const cb, int16_t item)
Inserta una muestra en el buffer circular.
circ_buf_t g_tx_buffer
Buffer circular global para transmisión de muestras de audio. El bucle principal lo escribe y La ISR ...
circ_buf_t g_rx_buffer
Buffer circular global para recepción de muestras de audio. La ISR de recepción lo escribe y el bucle...
Estructura que representa un buffer circular de muestras de audio.
Definition circ_buf.h:72
uint16_t tail
Definition circ_buf.h:75
int16_t buffer[CIRC_BUF_SIZE]
Definition circ_buf.h:73
uint16_t head
Definition circ_buf.h:74