kopia lustrzana https://github.com/ArjanteMarvelde/uSDR-pico
				
				
				
			
		
			
				
	
	
		
			64 wiersze
		
	
	
		
			1.2 KiB
		
	
	
	
		
			C
		
	
	
			
		
		
	
	
			64 wiersze
		
	
	
		
			1.2 KiB
		
	
	
	
		
			C
		
	
	
| #ifndef __DSP_FFT_H__
 | |
| #define __DSP_FFT_H__
 | |
| /* 
 | |
|  * dsp.h
 | |
|  *
 | |
|  * Created: Mar 2021
 | |
|  * Author: Arjan te Marvelde
 | |
|  *
 | |
|  * See dsp.c for more information 
 | |
|  *
 | |
|  * HERE THE SELECTION BETWEEN TIME OR FREQUENCY DOMAIN PROCESSING IS MADE
 | |
|  * DO THIS BY SETTING THE #define DSP_FFT TO 0 OR TO 1 RESPECTIVELY
 | |
|  *
 | |
|  */
 | |
| 
 | |
| 
 | |
| /* 
 | |
|  * Callback timeout is TIM_US, value in usec
 | |
|  * The carrier offset is !=0 only in FFT case.
 | |
|  */
 | |
|  
 | |
| #if DSP_FFT == 1
 | |
| 
 | |
| #define TIM_US		   64
 | |
| #define S_RATE		15625					// 1e6/TIM_US
 | |
| #define FC_OFFSET	 3906  					// RX carrier in bin FFT_SIZE/4 ==> S_RATE/4
 | |
| 
 | |
| #else
 | |
| 	
 | |
| #define TIM_US		   64
 | |
| #define S_RATE		15625					// 1e6/TIM_US
 | |
| #define FC_OFFSET 	    0					// Must be 0 for time-domain DSP
 | |
| 
 | |
| #endif
 | |
| 
 | |
| 
 | |
| /** DSP module interface **/
 | |
| 
 | |
| extern volatile uint32_t s_rssi;
 | |
| int get_sval(void);
 | |
| 
 | |
| extern volatile bool tx_enabled;			// Determined by (vox_active || ptt_active)
 | |
| 
 | |
| #define VOX_OFF			0
 | |
| #define VOX_LOW			1
 | |
| #define VOX_MEDIUM		2
 | |
| #define VOX_HIGH		3
 | |
| void dsp_setvox(int vox);
 | |
| 
 | |
| #define MODE_USB		0
 | |
| #define MODE_LSB		1
 | |
| #define MODE_AM			2
 | |
| #define MODE_CW			3
 | |
| void dsp_setmode(int mode);
 | |
| 
 | |
| #define AGC_NONE		0
 | |
| #define AGC_SLOW		1
 | |
| #define AGC_FAST		2
 | |
| void dsp_setagc(int agc);
 | |
| 
 | |
| void dsp_init();
 | |
| 
 | |
| #endif
 |