85#if !defined(_SPANDSP_FSK_H_)
86#define _SPANDSP_FSK_H_
126 FSK_FRAME_MODE_ASYNC = 0,
127 FSK_FRAME_MODE_SYNC = 1,
128 FSK_FRAME_MODE_FRAMED = 2
131SPAN_DECLARE_DATA
extern const fsk_spec_t preset_fsk_specs[];
140#define FSK_MAX_WINDOW_LEN 128
148#if defined(__cplusplus)
218SPAN_DECLARE(
int) fsk_rx_get_parity_errors(
fsk_rx_state_t *s,
bool reset);
220SPAN_DECLARE(
int) fsk_rx_get_framing_errors(
fsk_rx_state_t *s,
bool reset);
271#if defined(__cplusplus)
int(* span_get_bit_func_t)(void *user_data)
Definition async.h:127
void(* span_modem_status_func_t)(void *user_data, int status)
Definition async.h:131
void(* span_put_bit_func_t)(void *user_data, int bit)
Definition async.h:123
void fsk_rx_set_signal_cutoff(fsk_rx_state_t *s, float cutoff)
Adjust an FSK modem receive context's carrier detect power threshold.
Definition fsk.c:271
void fsk_rx_set_frame_parameters(fsk_rx_state_t *s, int data_bits, int parity, int stop_bits)
Set the framing parameters.
Definition fsk.c:300
int fsk_tx(fsk_tx_state_t *s, int16_t amp[], int len)
Generate a block of FSK modem audio samples.
Definition fsk.c:162
struct fsk_rx_state_s fsk_rx_state_t
Definition fsk.h:146
int fsk_rx_fillin(fsk_rx_state_t *s, int len)
Fake processing of a missing block of received FSK modem audio samples.
Definition fsk.c:637
fsk_tx_state_t * fsk_tx_init(fsk_tx_state_t *s, const fsk_spec_t *spec, span_get_bit_func_t get_bit, void *user_data)
Initialise an FSK modem transmit context.
Definition fsk.c:237
void fsk_tx_set_modem_status_handler(fsk_tx_state_t *s, span_modem_status_func_t handler, void *user_data)
Change the modem status report function associated with an FSK modem transmit context.
Definition fsk.c:214
float fsk_rx_signal_power(fsk_rx_state_t *s)
Definition fsk.c:280
int fsk_rx(fsk_rx_state_t *s, const int16_t *amp, int len)
Process a block of received FSK modem audio samples.
Definition fsk.c:396
void fsk_rx_set_modem_status_handler(fsk_rx_state_t *s, span_modem_status_func_t handler, void *user_data)
Change the modem status report function associated with an FSK modem receive context.
Definition fsk.c:293
struct fsk_tx_state_s fsk_tx_state_t
Definition fsk.h:137
void fsk_tx_power(fsk_tx_state_t *s, float power)
Adjust an FSK modem transmit context's power output.
Definition fsk.c:201
fsk_rx_state_t * fsk_rx_init(fsk_rx_state_t *s, const fsk_spec_t *spec, int framing_mode, span_put_bit_func_t put_bit, void *user_data)
Initialise an FSK modem receive context.
Definition fsk.c:725
Definition private/fsk.h:59
int framing_mode
Synchronous/asynchronous/framed control.
Definition private/fsk.h:62
int freq_one
Definition fsk.h:99
const char * name
Definition fsk.h:95
int tx_level
Definition fsk.h:101
int min_level
Definition fsk.h:103
int baud_rate
Definition fsk.h:105
int freq_zero
Definition fsk.h:97
Definition private/fsk.h:34