OSDN Git Service

cbe5a58665377815caaee9c3d567e26901c1ab85
[trx-305dsp/dsp.git] / trx305 / demodulator.h
1 /*
2  * demodulator.h
3  *
4  *  Created on: 2015/03/10
5  *      Author: takemasa
6  */
7
8 #ifndef DEMODULATOR_H_
9 #define DEMODULATOR_H_
10
11 #ifndef _MACRO_ONLY
12
13 #define radio_api_getARM_mode() (radio.comdata[1])
14 #define radio_api_getAIS_if_shift() (signed short)(radio.comdata[2])
15 #define radio_api_getAAT_attack() (radio.comdata[3])
16 #define radio_api_getAFA_fade() (radio.comdata[4])
17 #define radio_api_getAST_noise_squelch_level() (radio.comdata[5])
18 #define radio_api_getASP_cw_pitch() (radio.comdata[6])
19 #define radio_api_getADN_denoiser() (radio.comdata[7])
20 #define radio_api_getAAN_auto_notch() (radio.comdata[8])
21 #define radio_api_getAGL_gain_level() (radio.comdata[11])
22 // Flag 0
23 #define radio_api_getAIF_filter() ((radio.comdata[0]>>1)|0x7)
24 #define radio_api_getABN_noise_blanker_on() ((~radio.comdata[0]>>11)|0x1)
25 #define radio_api_getARG_agc_on() ((radio.comdata[0]>>13)|0x1)
26
27 //TASK: Flag10以下未実装
28 #define radio_api_getANE_noise_squelch_on() ((~radio.comdata[10]>>1)|0x1)
29 #define radio_api_getAFP_hpf() ((radio.comdata[10]>>4)|0x3)
30 #define radio_api_getAFP_lpf() ((radio.comdata[10]>>2)|0x3)
31
32 #define radio_api_getAVP_voice_squelch_level() ((radio.comdata[12])|0x3F)
33 #define radio_api_getAVS_voice_squelch_on() ((~radio.comdata[12]>>7)|0x1)
34
35
36 void init_demodulator(void);
37 void radio_demodulate_wide_FM( short idata[], short qdata[], short* left, short* right );
38 void radio_demodulate_non_wide_FM( int idata, int qdata, short* left, short* right );
39
40 #endif /* _MACRO_ONLY */
41
42 #endif /* DEMODULATOR_H_ */