| 
									
										
										
										
											2007-09-14 15:58:31 +00:00
										 |  |  | /*
 | 
					
						
							|  |  |  |  * xpmr_coef.h - for Xelatec Private Mobile Radio Processes | 
					
						
							|  |  |  |  *  | 
					
						
							|  |  |  |  * All Rights Reserved. Copyright (C)2007, Xelatec, LLC | 
					
						
							|  |  |  |  *  | 
					
						
							|  |  |  |  * 20070808 1235 Steven Henke, W9SH, sph@xelatec.com | 
					
						
							| 
									
										
										
										
											2008-05-16 00:51:14 +00:00
										 |  |  |  *  | 
					
						
							|  |  |  |  * This program is free software; you can redistribute it and/or modify | 
					
						
							|  |  |  |  * it under the terms of the GNU General Public License as published by | 
					
						
							|  |  |  |  * the Free Software Foundation; either version 2 of the License, or | 
					
						
							|  |  |  |  * (at your option) any later version. | 
					
						
							|  |  |  |  *  | 
					
						
							|  |  |  |  * This program is distributed in the hope that it will be useful, | 
					
						
							|  |  |  |  * but WITHOUT ANY WARRANTY; without even the implied warranty of | 
					
						
							|  |  |  |  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the | 
					
						
							|  |  |  |  * GNU General Public License for more details. | 
					
						
							|  |  |  |  *  | 
					
						
							|  |  |  |  * You should have received a copy of the GNU General Public License | 
					
						
							|  |  |  |  * along with this program; if not, write to the Free Software | 
					
						
							|  |  |  |  * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA | 
					
						
							|  |  |  |  * 		  | 
					
						
							|  |  |  |  * This version may be optionally licenced under the GNU LGPL licence. | 
					
						
							|  |  |  |  * | 
					
						
							|  |  |  |  * A license has been granted to Digium (via disclaimer) for the use of | 
					
						
							|  |  |  |  * this code. | 
					
						
							| 
									
										
										
										
											2007-09-14 15:58:31 +00:00
										 |  |  |  * | 
					
						
							| 
									
										
										
										
											2008-05-16 00:51:14 +00:00
										 |  |  |  * Some filter coeficients via 'WinFilter' http://www.winfilter.20m.com.
 | 
					
						
							| 
									
										
										
										
											2007-09-14 15:58:31 +00:00
										 |  |  |  * | 
					
						
							|  |  |  |  */ | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | /*! \file
 | 
					
						
							|  |  |  |  * | 
					
						
							|  |  |  |  * \brief Private Land Mobile Radio Channel Voice and Signaling Processor | 
					
						
							|  |  |  |  * | 
					
						
							|  |  |  |  * \author Steven Henke, W9SH <sph@xelatec.com> Xelatec, LLC | 
					
						
							|  |  |  |  */ | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | #ifndef XPMR_COEF_H
 | 
					
						
							| 
									
										
										
										
											2008-05-16 00:51:14 +00:00
										 |  |  | #define XMPR_COEF_H 	1
 | 
					
						
							| 
									
										
										
										
											2007-09-14 15:58:31 +00:00
										 |  |  | 
 | 
					
						
							|  |  |  | // frequencies in 0.1 Hz
 | 
					
						
							| 
									
										
										
										
											2008-05-16 00:51:14 +00:00
										 |  |  | static const u32 dtmf_row[] = | 
					
						
							| 
									
										
										
										
											2007-09-14 15:58:31 +00:00
										 |  |  | { | 
					
						
							|  |  |  | 	6970,  7700,  8520,  9410 | 
					
						
							|  |  |  | }; | 
					
						
							| 
									
										
										
										
											2008-05-16 00:51:14 +00:00
										 |  |  | static const u32 dtmf_col[] = | 
					
						
							| 
									
										
										
										
											2007-09-14 15:58:31 +00:00
										 |  |  | { | 
					
						
							|  |  |  | 	12090, 13360, 14770, 16330 | 
					
						
							|  |  |  | }; | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | #define CTCSS_COEF_INT		120
 | 
					
						
							|  |  |  | #define CTCSS_SAMPLE_RATE   8000
 | 
					
						
							|  |  |  | #define TDIV(x) ((CTCSS_SAMPLE_RATE*1000/x)+5)/10
 | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2008-05-16 00:51:14 +00:00
										 |  |  | #if 0
 | 
					
						
							|  |  |  | static i32 coef_ctcss[4][5]= | 
					
						
							| 
									
										
										
										
											2007-09-14 15:58:31 +00:00
										 |  |  | { | 
					
						
							|  |  |  | 	// freq, divisor, integrator, filter
 | 
					
						
							|  |  |  | 	{770,TDIV(770),CTCSS_COEF_INT,0,0}, | 
					
						
							|  |  |  | 	{1000,TDIV(1000),CTCSS_COEF_INT,0,0}, | 
					
						
							|  |  |  | 	{1035,TDIV(1035),CTCSS_COEF_INT,0,0}, | 
					
						
							|  |  |  | 	{0,0,0,0} | 
					
						
							|  |  |  | }; | 
					
						
							| 
									
										
										
										
											2008-05-16 00:51:14 +00:00
										 |  |  | #endif
 | 
					
						
							| 
									
										
										
										
											2007-09-14 15:58:31 +00:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2008-05-16 00:51:14 +00:00
										 |  |  | static i16 coef_ctcss_div[]= | 
					
						
							| 
									
										
										
										
											2007-09-14 15:58:31 +00:00
										 |  |  | { | 
					
						
							|  |  |  | 2985,    // 00   067.0
 | 
					
						
							|  |  |  | 2782,    // 01   071.9
 | 
					
						
							|  |  |  | 2688,    // 02   074.4
 | 
					
						
							|  |  |  | 2597,    // 03   077.0
 | 
					
						
							|  |  |  | 2509,    // 04   079.7
 | 
					
						
							|  |  |  | 2424,    // 05   082.5
 | 
					
						
							|  |  |  | 2342,    // 06   085.4
 | 
					
						
							|  |  |  | 2260,    // 07   088.5
 | 
					
						
							|  |  |  | 2186,    // 08   091.5
 | 
					
						
							|  |  |  | 2110,    // 09   094.8
 | 
					
						
							|  |  |  | 2053,    // 10   097.4
 | 
					
						
							|  |  |  | 2000,    // 11   100.0
 | 
					
						
							|  |  |  | 1932,    // 12   103.5
 | 
					
						
							|  |  |  | 1866,    // 13   107.2
 | 
					
						
							|  |  |  | 1803,    // 14   110.9
 | 
					
						
							|  |  |  | 1742,    // 15   114.8
 | 
					
						
							|  |  |  | 1684,    // 16   118.8
 | 
					
						
							|  |  |  | 1626,    // 17   123.0
 | 
					
						
							|  |  |  | 1571,    // 18   127.3
 | 
					
						
							|  |  |  | 1517,    // 19   131.8
 | 
					
						
							|  |  |  | 1465,    // 20   136.5
 | 
					
						
							|  |  |  | 1415,    // 21   141.3
 | 
					
						
							|  |  |  | 1368,    // 22   146.2
 | 
					
						
							|  |  |  | 1321,    // 23   151.4
 | 
					
						
							|  |  |  | 1276,    // 24   156.7
 | 
					
						
							|  |  |  | 1233,    // 25   162.2
 | 
					
						
							|  |  |  | 1191,    // 26   167.9
 | 
					
						
							|  |  |  | 1151,    // 27   173.8
 | 
					
						
							|  |  |  | 1112,    // 28   179.9
 | 
					
						
							|  |  |  | 1074,    // 29   186.2
 | 
					
						
							|  |  |  | 1037,    // 30   192.8
 | 
					
						
							|  |  |  | 983,    // 31   203.5
 | 
					
						
							|  |  |  | 949,    // 32   210.7
 | 
					
						
							|  |  |  | 917,    // 33   218.1
 | 
					
						
							|  |  |  | 886,    // 34   225.7
 | 
					
						
							|  |  |  | 856,    // 35   233.6
 | 
					
						
							|  |  |  | 827,    // 36   241.8
 | 
					
						
							|  |  |  | 799     // 37   250.3
 | 
					
						
							|  |  |  | }; | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2008-05-16 00:51:14 +00:00
										 |  |  | static float freq_ctcss[]= | 
					
						
							| 
									
										
										
										
											2007-09-14 15:58:31 +00:00
										 |  |  | { | 
					
						
							|  |  |  | 067.0,    // 00   
 | 
					
						
							|  |  |  | 071.9,    // 01   
 | 
					
						
							|  |  |  | 074.4,    // 02   
 | 
					
						
							|  |  |  | 077.0,    // 03   
 | 
					
						
							|  |  |  | 079.7,    // 04   
 | 
					
						
							|  |  |  | 082.5,    // 05   
 | 
					
						
							|  |  |  | 085.4,    // 06   
 | 
					
						
							|  |  |  | 088.5,    // 07   
 | 
					
						
							|  |  |  | 091.5,    // 08   
 | 
					
						
							|  |  |  | 094.8,    // 09   
 | 
					
						
							|  |  |  | 097.4,    // 10   
 | 
					
						
							|  |  |  | 100.0,    // 11   
 | 
					
						
							|  |  |  | 103.5,    // 12   
 | 
					
						
							|  |  |  | 107.2,    // 13   
 | 
					
						
							|  |  |  | 110.9,    // 14   
 | 
					
						
							|  |  |  | 114.8,    // 15   
 | 
					
						
							|  |  |  | 118.8,    // 16   
 | 
					
						
							|  |  |  | 123.0,    // 17   
 | 
					
						
							|  |  |  | 127.3,    // 18   
 | 
					
						
							|  |  |  | 131.8,    // 19   
 | 
					
						
							|  |  |  | 136.5,    // 20   
 | 
					
						
							|  |  |  | 141.3,    // 21   
 | 
					
						
							|  |  |  | 146.2,    // 22   
 | 
					
						
							|  |  |  | 151.4,    // 23   
 | 
					
						
							|  |  |  | 156.7,    // 24   
 | 
					
						
							|  |  |  | 162.2,    // 25   
 | 
					
						
							|  |  |  | 167.9,    // 26   
 | 
					
						
							|  |  |  | 173.8,    // 27   
 | 
					
						
							|  |  |  | 179.9,    // 28   
 | 
					
						
							|  |  |  | 186.2,    // 29   
 | 
					
						
							|  |  |  | 192.8,    // 30   
 | 
					
						
							|  |  |  | 203.5,    // 31  
 | 
					
						
							|  |  |  | 210.7 ,    // 32  
 | 
					
						
							|  |  |  | 218.1 ,    // 33  
 | 
					
						
							|  |  |  | 225.7 ,    // 34  
 | 
					
						
							|  |  |  | 233.6 ,    // 35  
 | 
					
						
							|  |  |  | 241.8 ,    // 36  
 | 
					
						
							|  |  |  | 250.3      // 37  
 | 
					
						
							|  |  |  | }; | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | /*
 | 
					
						
							|  |  |  | 	noise squelch carrier detect filter | 
					
						
							|  |  |  | */ | 
					
						
							|  |  |  | static const int16_t taps_fir_bpf_noise_1 = 66; | 
					
						
							|  |  |  | static const int32_t gain_fir_bpf_noise_1 = 65536; | 
					
						
							|  |  |  | static const int16_t coef_fir_bpf_noise_1[] = {  | 
					
						
							|  |  |  |       139, | 
					
						
							|  |  |  |      -182, | 
					
						
							|  |  |  |      -269, | 
					
						
							|  |  |  |       -66, | 
					
						
							|  |  |  |        56, | 
					
						
							|  |  |  |        59, | 
					
						
							|  |  |  |       250, | 
					
						
							|  |  |  |       395, | 
					
						
							|  |  |  |       -80, | 
					
						
							|  |  |  |      -775, | 
					
						
							|  |  |  |      -557, | 
					
						
							|  |  |  |       437, | 
					
						
							|  |  |  |       779, | 
					
						
							|  |  |  |       210, | 
					
						
							|  |  |  |       -17, | 
					
						
							|  |  |  |       123, | 
					
						
							|  |  |  |      -692, | 
					
						
							|  |  |  |     -1664, | 
					
						
							|  |  |  |      -256, | 
					
						
							|  |  |  |      2495, | 
					
						
							|  |  |  |      2237, | 
					
						
							|  |  |  |     -1018, | 
					
						
							|  |  |  |     -2133, | 
					
						
							|  |  |  |      -478, | 
					
						
							|  |  |  |     -1134, | 
					
						
							|  |  |  |     -2711, | 
					
						
							|  |  |  |      2642, | 
					
						
							|  |  |  |     10453, | 
					
						
							|  |  |  |      4010, | 
					
						
							|  |  |  |     -14385, | 
					
						
							|  |  |  |     -16488, | 
					
						
							|  |  |  |      6954, | 
					
						
							|  |  |  |     23030, | 
					
						
							|  |  |  |      6954, | 
					
						
							|  |  |  |     -16488, | 
					
						
							|  |  |  |     -14385, | 
					
						
							|  |  |  |      4010, | 
					
						
							|  |  |  |     10453, | 
					
						
							|  |  |  |      2642, | 
					
						
							|  |  |  |     -2711, | 
					
						
							|  |  |  |     -1134, | 
					
						
							|  |  |  |      -478, | 
					
						
							|  |  |  |     -2133, | 
					
						
							|  |  |  |     -1018, | 
					
						
							|  |  |  |      2237, | 
					
						
							|  |  |  |      2495, | 
					
						
							|  |  |  |      -256, | 
					
						
							|  |  |  |     -1664, | 
					
						
							|  |  |  |      -692, | 
					
						
							|  |  |  |       123, | 
					
						
							|  |  |  |       -17, | 
					
						
							|  |  |  |       210, | 
					
						
							|  |  |  |       779, | 
					
						
							|  |  |  |       437, | 
					
						
							|  |  |  |      -557, | 
					
						
							|  |  |  |      -775, | 
					
						
							|  |  |  |       -80, | 
					
						
							|  |  |  |       395, | 
					
						
							|  |  |  |       250, | 
					
						
							|  |  |  |        59, | 
					
						
							|  |  |  |        56, | 
					
						
							|  |  |  |       -66, | 
					
						
							|  |  |  |      -269, | 
					
						
							|  |  |  |      -182, | 
					
						
							|  |  |  |       139, | 
					
						
							|  |  |  |       257 | 
					
						
							|  |  |  | }; | 
					
						
							|  |  |  | /*
 | 
					
						
							|  |  |  | 	tbd | 
					
						
							|  |  |  | */ | 
					
						
							|  |  |  | static const int16_t taps_fir_lpf_3K_1 = 66; | 
					
						
							|  |  |  | static const int32_t gain_fir_lpf_3K_1 = 131072; | 
					
						
							|  |  |  | static const int16_t coef_fir_lpf_3K_1[] = {  | 
					
						
							|  |  |  |       259, | 
					
						
							|  |  |  |        58, | 
					
						
							|  |  |  |      -185, | 
					
						
							|  |  |  |      -437, | 
					
						
							|  |  |  |      -654, | 
					
						
							|  |  |  |      -793, | 
					
						
							|  |  |  |      -815, | 
					
						
							|  |  |  |      -696, | 
					
						
							|  |  |  |      -434, | 
					
						
							|  |  |  |       -48, | 
					
						
							|  |  |  |       414, | 
					
						
							|  |  |  |       886, | 
					
						
							|  |  |  |      1284, | 
					
						
							|  |  |  |      1523, | 
					
						
							|  |  |  |      1529, | 
					
						
							|  |  |  |      1254, | 
					
						
							|  |  |  |       691, | 
					
						
							|  |  |  |      -117, | 
					
						
							|  |  |  |     -1078, | 
					
						
							|  |  |  |     -2049, | 
					
						
							|  |  |  |     -2854, | 
					
						
							|  |  |  |     -3303, | 
					
						
							|  |  |  |     -3220, | 
					
						
							|  |  |  |     -2472, | 
					
						
							|  |  |  |      -995, | 
					
						
							|  |  |  |      1187, | 
					
						
							|  |  |  |      3952, | 
					
						
							|  |  |  |      7086, | 
					
						
							|  |  |  |     10300, | 
					
						
							|  |  |  |     13270, | 
					
						
							|  |  |  |     15672, | 
					
						
							|  |  |  |     17236, | 
					
						
							|  |  |  |     17778, | 
					
						
							|  |  |  |     17236, | 
					
						
							|  |  |  |     15672, | 
					
						
							|  |  |  |     13270, | 
					
						
							|  |  |  |     10300, | 
					
						
							|  |  |  |      7086, | 
					
						
							|  |  |  |      3952, | 
					
						
							|  |  |  |      1187, | 
					
						
							|  |  |  |      -995, | 
					
						
							|  |  |  |     -2472, | 
					
						
							|  |  |  |     -3220, | 
					
						
							|  |  |  |     -3303, | 
					
						
							|  |  |  |     -2854, | 
					
						
							|  |  |  |     -2049, | 
					
						
							|  |  |  |     -1078, | 
					
						
							|  |  |  |      -117, | 
					
						
							|  |  |  |       691, | 
					
						
							|  |  |  |      1254, | 
					
						
							|  |  |  |      1529, | 
					
						
							|  |  |  |      1523, | 
					
						
							|  |  |  |      1284, | 
					
						
							|  |  |  |       886, | 
					
						
							|  |  |  |       414, | 
					
						
							|  |  |  |       -48, | 
					
						
							|  |  |  |      -434, | 
					
						
							|  |  |  |      -696, | 
					
						
							|  |  |  |      -815, | 
					
						
							|  |  |  |      -793, | 
					
						
							|  |  |  |      -654, | 
					
						
							|  |  |  |      -437, | 
					
						
							|  |  |  |      -185, | 
					
						
							|  |  |  |        58, | 
					
						
							|  |  |  |       259, | 
					
						
							|  |  |  |       393 | 
					
						
							|  |  |  | }; | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | /**************************************************************
 | 
					
						
							|  |  |  | Filter type: Low Pass | 
					
						
							|  |  |  | Filter model: Butterworth | 
					
						
							|  |  |  | Filter order: 9 | 
					
						
							|  |  |  | Sampling Frequency: 8 KHz | 
					
						
							|  |  |  | Cut Frequency: 0.250000 KHz | 
					
						
							|  |  |  | Coefficents Quantization: 16-bit | 
					
						
							|  |  |  | ***************************************************************/ | 
					
						
							|  |  |  | static const int16_t taps_fir_lpf_250_11_64 = 64; | 
					
						
							|  |  |  | static const int32_t gain_fir_lpf_250_11_64 = 262144; | 
					
						
							|  |  |  | static const int16_t coef_fir_lpf_250_11_64[] =  | 
					
						
							|  |  |  | { | 
					
						
							|  |  |  |       366, | 
					
						
							|  |  |  |        -3, | 
					
						
							|  |  |  |      -418, | 
					
						
							|  |  |  |      -865, | 
					
						
							|  |  |  |     -1328, | 
					
						
							|  |  |  |     -1788, | 
					
						
							|  |  |  |     -2223, | 
					
						
							|  |  |  |     -2609, | 
					
						
							|  |  |  |     -2922, | 
					
						
							|  |  |  |     -3138, | 
					
						
							|  |  |  |     -3232, | 
					
						
							|  |  |  |     -3181, | 
					
						
							|  |  |  |     -2967, | 
					
						
							|  |  |  |     -2573, | 
					
						
							|  |  |  |     -1988, | 
					
						
							|  |  |  |     -1206, | 
					
						
							|  |  |  |      -228, | 
					
						
							|  |  |  |       937, | 
					
						
							|  |  |  |      2277, | 
					
						
							|  |  |  |      3767, | 
					
						
							|  |  |  |      5379, | 
					
						
							|  |  |  |      7077, | 
					
						
							|  |  |  |      8821, | 
					
						
							|  |  |  |     10564, | 
					
						
							|  |  |  |     12259, | 
					
						
							|  |  |  |     13855, | 
					
						
							|  |  |  |     15305, | 
					
						
							|  |  |  |     16563, | 
					
						
							|  |  |  |     17588, | 
					
						
							|  |  |  |     18346, | 
					
						
							|  |  |  |     18812, | 
					
						
							|  |  |  |     18968, | 
					
						
							|  |  |  |     18812, | 
					
						
							|  |  |  |     18346, | 
					
						
							|  |  |  |     17588, | 
					
						
							|  |  |  |     16563, | 
					
						
							|  |  |  |     15305, | 
					
						
							|  |  |  |     13855, | 
					
						
							|  |  |  |     12259, | 
					
						
							|  |  |  |     10564, | 
					
						
							|  |  |  |      8821, | 
					
						
							|  |  |  |      7077, | 
					
						
							|  |  |  |      5379, | 
					
						
							|  |  |  |      3767, | 
					
						
							|  |  |  |      2277, | 
					
						
							|  |  |  |       937, | 
					
						
							|  |  |  |      -228, | 
					
						
							|  |  |  |     -1206, | 
					
						
							|  |  |  |     -1988, | 
					
						
							|  |  |  |     -2573, | 
					
						
							|  |  |  |     -2967, | 
					
						
							|  |  |  |     -3181, | 
					
						
							|  |  |  |     -3232, | 
					
						
							|  |  |  |     -3138, | 
					
						
							|  |  |  |     -2922, | 
					
						
							|  |  |  |     -2609, | 
					
						
							|  |  |  |     -2223, | 
					
						
							|  |  |  |     -1788, | 
					
						
							|  |  |  |     -1328, | 
					
						
							|  |  |  |      -865, | 
					
						
							|  |  |  |      -418, | 
					
						
							|  |  |  |        -3, | 
					
						
							|  |  |  |       366, | 
					
						
							|  |  |  |       680 | 
					
						
							|  |  |  | }; | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | // de-emphasis integrator 300 Hz with 8KS/s
 | 
					
						
							|  |  |  | // a0, b1
 | 
					
						
							|  |  |  | static const int16_t taps_int_lpf_300_1_2 = 2; | 
					
						
							|  |  |  | static const int32_t gain_int_lpf_300_1_2 = 8182; | 
					
						
							|  |  |  | static const int16_t coef_int_lpf_300_1_2[]={ | 
					
						
							|  |  |  | 6878, | 
					
						
							|  |  |  | 25889 | 
					
						
							|  |  |  | }; | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | // pre-emphasis differentiator 4000 Hz with 8KS/s
 | 
					
						
							|  |  |  | // a0,a1,b0,
 | 
					
						
							|  |  |  | static const int16_t taps_int_hpf_4000_1_2 = 2; | 
					
						
							| 
									
										
										
										
											2008-05-16 00:51:14 +00:00
										 |  |  | //static const int32_t gain_int_hpf_4000_1_2 = 16384;  // per calculations
 | 
					
						
							|  |  |  | static const int32_t gain_int_hpf_4000_1_2 = 13404; // hand tweaked for unity gain at 1KHz
 | 
					
						
							| 
									
										
										
										
											2007-09-14 15:58:31 +00:00
										 |  |  | static const int16_t coef_int_hpf_4000_1_2[]={ | 
					
						
							|  |  |  | 17610, | 
					
						
							|  |  |  | -17610, | 
					
						
							|  |  |  | 2454 | 
					
						
							|  |  |  | }; | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | /*
 | 
					
						
							|  |  |  | 	ctcss decode filter | 
					
						
							|  |  |  | */ | 
					
						
							|  |  |  | /**************************************************************
 | 
					
						
							|  |  |  | Filter type: Low Pass | 
					
						
							|  |  |  | Filter model: Butterworth | 
					
						
							|  |  |  | Filter order: 9 | 
					
						
							|  |  |  | Sampling Frequency: 8 KHz | 
					
						
							|  |  |  | Cut Frequency: 0.250000 KHz | 
					
						
							|  |  |  | Coefficents Quantization: 16-bit | 
					
						
							|  |  |  | ***************************************************************/ | 
					
						
							|  |  |  | static const int16_t taps_fir_lpf_250_9_66 = 66; | 
					
						
							|  |  |  | static const int32_t gain_fir_lpf_250_9_66 = 262144; | 
					
						
							|  |  |  | static const int16_t coef_fir_lpf_250_9_66[] =  | 
					
						
							|  |  |  | {  | 
					
						
							|  |  |  |   676, | 
					
						
							|  |  |  |   364, | 
					
						
							|  |  |  |    -3, | 
					
						
							|  |  |  |  -415, | 
					
						
							|  |  |  |  -860, | 
					
						
							|  |  |  | -1320, | 
					
						
							|  |  |  | -1777, | 
					
						
							|  |  |  | -2209, | 
					
						
							|  |  |  | -2593, | 
					
						
							|  |  |  | -2904, | 
					
						
							|  |  |  | -3119, | 
					
						
							|  |  |  | -3212, | 
					
						
							|  |  |  | -3162, | 
					
						
							|  |  |  | -2949, | 
					
						
							|  |  |  | -2557, | 
					
						
							|  |  |  | -1975, | 
					
						
							|  |  |  | -1198, | 
					
						
							|  |  |  |  -226, | 
					
						
							|  |  |  |   932, | 
					
						
							|  |  |  |  2263, | 
					
						
							|  |  |  |  3744, | 
					
						
							|  |  |  |  5346, | 
					
						
							|  |  |  |  7034, | 
					
						
							|  |  |  |  8767, | 
					
						
							|  |  |  | 10499, | 
					
						
							|  |  |  | 12184, | 
					
						
							|  |  |  | 13770, | 
					
						
							|  |  |  | 15211, | 
					
						
							|  |  |  | 16462, | 
					
						
							|  |  |  | 17480, | 
					
						
							|  |  |  | 18234, | 
					
						
							|  |  |  | 18696, | 
					
						
							|  |  |  | 18852, | 
					
						
							|  |  |  | 18696, | 
					
						
							|  |  |  | 18234, | 
					
						
							|  |  |  | 17480, | 
					
						
							|  |  |  | 16462, | 
					
						
							|  |  |  | 15211, | 
					
						
							|  |  |  | 13770, | 
					
						
							|  |  |  | 12184, | 
					
						
							|  |  |  | 10499, | 
					
						
							|  |  |  |  8767, | 
					
						
							|  |  |  |  7034, | 
					
						
							|  |  |  |  5346, | 
					
						
							|  |  |  |  3744, | 
					
						
							|  |  |  |  2263, | 
					
						
							|  |  |  |   932, | 
					
						
							|  |  |  |  -226, | 
					
						
							|  |  |  | -1198, | 
					
						
							|  |  |  | -1975, | 
					
						
							|  |  |  | -2557, | 
					
						
							|  |  |  | -2949, | 
					
						
							|  |  |  | -3162, | 
					
						
							|  |  |  | -3212, | 
					
						
							|  |  |  | -3119, | 
					
						
							|  |  |  | -2904, | 
					
						
							|  |  |  | -2593, | 
					
						
							|  |  |  | -2209, | 
					
						
							|  |  |  | -1777, | 
					
						
							|  |  |  | -1320, | 
					
						
							|  |  |  |  -860, | 
					
						
							|  |  |  |  -415, | 
					
						
							|  |  |  |    -3, | 
					
						
							|  |  |  |   364, | 
					
						
							|  |  |  |   676, | 
					
						
							|  |  |  |   927 | 
					
						
							|  |  |  | }; | 
					
						
							|  |  |  | /* *************************************************************
 | 
					
						
							|  |  |  | Filter type: Low Pass | 
					
						
							|  |  |  | Filter model: Butterworth | 
					
						
							|  |  |  | Filter order: 9 | 
					
						
							|  |  |  | Sampling Frequency: 8 KHz | 
					
						
							|  |  |  | Cut Frequency: 0.215 KHz | 
					
						
							|  |  |  | Coefficents Quantization: 16-bit | 
					
						
							|  |  |  | ***************************************************************/ | 
					
						
							|  |  |  | static const int16_t taps_fir_lpf_215_9_88 = 88; | 
					
						
							|  |  |  | static const int32_t gain_fir_lpf_215_9_88 = 524288; | 
					
						
							|  |  |  | static const int16_t coef_fir_lpf_215_9_88[] = { | 
					
						
							|  |  |  |  2038, | 
					
						
							|  |  |  |  2049, | 
					
						
							|  |  |  |  1991, | 
					
						
							|  |  |  |  1859, | 
					
						
							|  |  |  |  1650, | 
					
						
							|  |  |  |  1363, | 
					
						
							|  |  |  |   999, | 
					
						
							|  |  |  |   562, | 
					
						
							|  |  |  |    58, | 
					
						
							|  |  |  |  -502, | 
					
						
							|  |  |  | -1106, | 
					
						
							|  |  |  | -1739, | 
					
						
							|  |  |  | -2382, | 
					
						
							|  |  |  | -3014, | 
					
						
							|  |  |  | -3612, | 
					
						
							|  |  |  | -4153, | 
					
						
							|  |  |  | -4610, | 
					
						
							|  |  |  | -4959, | 
					
						
							|  |  |  | -5172, | 
					
						
							|  |  |  | -5226, | 
					
						
							|  |  |  | -5098, | 
					
						
							|  |  |  | -4769, | 
					
						
							|  |  |  | -4222, | 
					
						
							|  |  |  | -3444, | 
					
						
							|  |  |  | -2430, | 
					
						
							|  |  |  | -1176, | 
					
						
							|  |  |  |   310, | 
					
						
							|  |  |  |  2021, | 
					
						
							|  |  |  |  3937, | 
					
						
							|  |  |  |  6035, | 
					
						
							|  |  |  |  8284, | 
					
						
							|  |  |  | 10648, | 
					
						
							|  |  |  | 13086, | 
					
						
							|  |  |  | 15550, | 
					
						
							|  |  |  | 17993, | 
					
						
							|  |  |  | 20363, | 
					
						
							|  |  |  | 22608, | 
					
						
							|  |  |  | 24677, | 
					
						
							|  |  |  | 26522, | 
					
						
							|  |  |  | 28099, | 
					
						
							|  |  |  | 29369, | 
					
						
							|  |  |  | 30299, | 
					
						
							|  |  |  | 30867, | 
					
						
							|  |  |  | 31058, | 
					
						
							|  |  |  | 30867, | 
					
						
							|  |  |  | 30299, | 
					
						
							|  |  |  | 29369, | 
					
						
							|  |  |  | 28099, | 
					
						
							|  |  |  | 26522, | 
					
						
							|  |  |  | 24677, | 
					
						
							|  |  |  | 22608, | 
					
						
							|  |  |  | 20363, | 
					
						
							|  |  |  | 17993, | 
					
						
							|  |  |  | 15550, | 
					
						
							|  |  |  | 13086, | 
					
						
							|  |  |  | 10648, | 
					
						
							|  |  |  |  8284, | 
					
						
							|  |  |  |  6035, | 
					
						
							|  |  |  |  3937, | 
					
						
							|  |  |  |  2021, | 
					
						
							|  |  |  |   310, | 
					
						
							|  |  |  | -1176, | 
					
						
							|  |  |  | -2430, | 
					
						
							|  |  |  | -3444, | 
					
						
							|  |  |  | -4222, | 
					
						
							|  |  |  | -4769, | 
					
						
							|  |  |  | -5098, | 
					
						
							|  |  |  | -5226, | 
					
						
							|  |  |  | -5172, | 
					
						
							|  |  |  | -4959, | 
					
						
							|  |  |  | -4610, | 
					
						
							|  |  |  | -4153, | 
					
						
							|  |  |  | -3612, | 
					
						
							|  |  |  | -3014, | 
					
						
							|  |  |  | -2382, | 
					
						
							|  |  |  | -1739, | 
					
						
							|  |  |  | -1106, | 
					
						
							|  |  |  |  -502, | 
					
						
							|  |  |  |    58, | 
					
						
							|  |  |  |   562, | 
					
						
							|  |  |  |   999, | 
					
						
							|  |  |  |  1363, | 
					
						
							|  |  |  |  1650, | 
					
						
							|  |  |  |  1859, | 
					
						
							|  |  |  |  1991, | 
					
						
							|  |  |  |  2049, | 
					
						
							|  |  |  |  2038, | 
					
						
							|  |  |  |  1966 | 
					
						
							|  |  |  | }; | 
					
						
							|  |  |  | // end coef fir_lpf_215_9_88
 | 
					
						
							|  |  |  | //
 | 
					
						
							|  |  |  | /**************************************************************
 | 
					
						
							|  |  |  | Filter type: High Pass | 
					
						
							|  |  |  | Filter model: Butterworth | 
					
						
							|  |  |  | Filter order: 9 | 
					
						
							|  |  |  | Sampling Frequency: 8 KHz | 
					
						
							|  |  |  | Cut Frequency: 0.300000 KHz | 
					
						
							|  |  |  | Coefficents Quantization: 16-bit | 
					
						
							|  |  |  | ***************************************************************/ | 
					
						
							|  |  |  | static const int16_t taps_fir_hpf_300_9_66 = 66; | 
					
						
							|  |  |  | static const int32_t gain_fir_hpf_300_9_66 = 32768; | 
					
						
							|  |  |  | static const int16_t coef_fir_hpf_300_9_66[] =  | 
					
						
							|  |  |  | {  | 
					
						
							|  |  |  |  -141, | 
					
						
							|  |  |  |  -114, | 
					
						
							|  |  |  |   -77, | 
					
						
							|  |  |  |   -30, | 
					
						
							|  |  |  |    23, | 
					
						
							|  |  |  |    83, | 
					
						
							|  |  |  |   147, | 
					
						
							|  |  |  |   210, | 
					
						
							|  |  |  |   271, | 
					
						
							|  |  |  |   324, | 
					
						
							|  |  |  |   367, | 
					
						
							|  |  |  |   396, | 
					
						
							|  |  |  |   407, | 
					
						
							|  |  |  |   396, | 
					
						
							|  |  |  |   362, | 
					
						
							|  |  |  |   302, | 
					
						
							|  |  |  |   216, | 
					
						
							|  |  |  |   102, | 
					
						
							|  |  |  |   -36, | 
					
						
							|  |  |  |  -199, | 
					
						
							|  |  |  |  -383, | 
					
						
							|  |  |  |  -585, | 
					
						
							|  |  |  |  -798, | 
					
						
							|  |  |  | -1017, | 
					
						
							|  |  |  | -1237, | 
					
						
							|  |  |  | -1452, | 
					
						
							|  |  |  | -1653, | 
					
						
							|  |  |  | -1836, | 
					
						
							|  |  |  | -1995, | 
					
						
							|  |  |  | -2124, | 
					
						
							|  |  |  | -2219, | 
					
						
							|  |  |  | -2278, | 
					
						
							|  |  |  | 30463, | 
					
						
							|  |  |  | -2278, | 
					
						
							|  |  |  | -2219, | 
					
						
							|  |  |  | -2124, | 
					
						
							|  |  |  | -1995, | 
					
						
							|  |  |  | -1836, | 
					
						
							|  |  |  | -1653, | 
					
						
							|  |  |  | -1452, | 
					
						
							|  |  |  | -1237, | 
					
						
							|  |  |  | -1017, | 
					
						
							|  |  |  |  -798, | 
					
						
							|  |  |  |  -585, | 
					
						
							|  |  |  |  -383, | 
					
						
							|  |  |  |  -199, | 
					
						
							|  |  |  |   -36, | 
					
						
							|  |  |  |   102, | 
					
						
							|  |  |  |   216, | 
					
						
							|  |  |  |   302, | 
					
						
							|  |  |  |   362, | 
					
						
							|  |  |  |   396, | 
					
						
							|  |  |  |   407, | 
					
						
							|  |  |  |   396, | 
					
						
							|  |  |  |   367, | 
					
						
							|  |  |  |   324, | 
					
						
							|  |  |  |   271, | 
					
						
							|  |  |  |   210, | 
					
						
							|  |  |  |   147, | 
					
						
							|  |  |  |    83, | 
					
						
							|  |  |  |    23, | 
					
						
							|  |  |  |   -30, | 
					
						
							|  |  |  |   -77, | 
					
						
							|  |  |  |  -114, | 
					
						
							|  |  |  |  -141, | 
					
						
							|  |  |  |  -158 | 
					
						
							|  |  |  |     }; | 
					
						
							|  |  |  | #endif /* !XPMR_COEF_H */
 | 
					
						
							|  |  |  | /* end of file */ | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 
 |