EU1KY AA
tdr.c File Reference
#include <stdint.h>
#include <math.h>
#include <complex.h>
#include "arm_math.h"
#include "LCD.h"
#include "touch.h"
#include "font.h"
#include "config.h"
#include "crash.h"
#include "dsp.h"
#include "gen.h"
#include "oslfile.h"
#include "stm32746g_discovery_lcd.h"
#include "screenshot.h"
#include "tdr.h"
#include "hit.h"

Macros

#define NUMTDRSAMPLES   512
 
#define X0   40
 
#define Y0   147
 
#define WWIDTH   400
 

Functions

void Sleep (uint32_t)
 
static void TDR_Scan (void)
 
static void TDR_Exit (void)
 
static void TDR_Screenshot (void)
 
static void TDR_DrawCursorText (void)
 
static void TDR_DrawCursor (void)
 
static void TDR_DrawGrid (void)
 
static void TDR_DecrCursor (void)
 
static void TDR_AdvCursor (void)
 
static void TDR_DrawGraph (void)
 
static void TDR_DoScan (void)
 
static void TDR_10m (void)
 
static void TDR_50m (void)
 
static void TDR_155m (void)
 
static void TDR_310m (void)
 
void ShowVf (void)
 
static void Vf_plus (void)
 
static void Vf_minus (void)
 
static void Vf_storePerm (void)
 
static void Vf_Exit (void)
 
static void TDR_Vf (void)
 
static void TDR_Variant (void)
 
void TDR_Proc (void)
 

Variables

static float time_domain [NUMTDRSAMPLES *2]
 
static float step_response [NUMTDRSAMPLES *2]
 
static float Ztv [NUMTDRSAMPLES *2]
 
static float complex freq_domain [NUMTDRSAMPLES]
 
static uint32_t rqExit = 0
 
static float normFactor = 1.f
 
static float normFactor_SR = 1.f
 
static int TDR_cursorChangeCount
 
static uint32_t TDR_isScanned = 0
 
static uint32_t TDR_cursorPos = WWIDTH / 2
 
static int TDR_Length = 150
 
static int MaxTDR_Length = 150
 
static int Vf
 
static int variant
 
static const float halfKBDwnd []
 
static const float KBD_td_factor = 1.571921
 
static float max1
 
static float Zmax
 
int max_idx
 
static const int yi [] ={89,74,59,44,35,20,0}
 
static const char texti [7][3] ={"600","300","150"," 75"," 50"," 25","Ohm" }
 
static const struct HitRect hitVfArr []
 
static const struct HitRect hitArr []
 

Macro Definition Documentation

#define NUMTDRSAMPLES   512
#define WWIDTH   400
#define X0   40
#define Y0   147

Function Documentation

void ShowVf ( void  )
void Sleep ( uint32_t  )
static void TDR_10m ( void  )
static
static void TDR_155m ( void  )
static
static void TDR_310m ( void  )
static
static void TDR_50m ( void  )
static
static void TDR_AdvCursor ( void  )
static
static void TDR_DecrCursor ( void  )
static
static void TDR_DoScan ( void  )
static
static void TDR_DrawCursor ( void  )
static
static void TDR_DrawCursorText ( void  )
static
static void TDR_DrawGraph ( void  )
static
static void TDR_DrawGrid ( void  )
static
static void TDR_Exit ( void  )
static
void TDR_Proc ( void  )
static void TDR_Scan ( void  )
static
static void TDR_Screenshot ( void  )
static
static void TDR_Variant ( void  )
static
static void TDR_Vf ( void  )
static
static void Vf_Exit ( void  )
static
static void Vf_minus ( void  )
static
static void Vf_plus ( void  )
static
static void Vf_storePerm ( void  )
static

Variable Documentation

float complex freq_domain[NUMTDRSAMPLES]
static
const float halfKBDwnd[]
static
const struct HitRect hitArr[]
static
Initial value:
=
{
HITRECT( 0, 241, 70, 31, TDR_Exit),
HITRECT( 95, 241, 95, 31, TDR_Vf),
HITRECT( 210, 241, 80, 31, TDR_Screenshot),
HITRECT( 320, 241, 80, 31, TDR_DoScan),
HITRECT( 420, 241, 60, 31, TDR_Variant),
HITRECT( 308, Y0 - 135, 40, 30, TDR_10m),
HITRECT( 348, Y0 - 135, 40, 30, TDR_50m),
HITRECT( 388, Y0 - 135, 46, 30, TDR_155m),
HITRECT( 434, Y0 - 135, 46, 30, TDR_310m),
HITRECT( 430, Y0 + 20, 60, 72, TDR_AdvCursor),
HITRECT( 0, Y0 + 20, 60, 72, TDR_DecrCursor),
}
static void TDR_310m(void)
Definition: tdr.c:410
static void TDR_Variant(void)
Definition: tdr.c:495
static void TDR_AdvCursor(void)
Definition: tdr.c:301
static void TDR_50m(void)
Definition: tdr.c:394
#define HITRECT(x0, y0, width, height, callback)
Definition: hit.h:24
static void TDR_DecrCursor(void)
Definition: tdr.c:284
static void TDR_Screenshot(void)
Definition: tdr.c:191
#define Y0
Definition: tdr.c:31
static void TDR_Exit(void)
Definition: tdr.c:186
static void TDR_155m(void)
Definition: tdr.c:402
static void TDR_DoScan(void)
Definition: tdr.c:374
#define HITEND
Definition: hit.h:27
static void TDR_10m(void)
Definition: tdr.c:386
static void TDR_Vf(void)
Definition: tdr.c:458
const struct HitRect hitVfArr[]
static
Initial value:
=
{
HITRECT( 0, 200, 40, 35, Vf_minus),
HITRECT( 440, 200, 40, 35, Vf_plus),
HITRECT( 100, 241, 100, 31, Vf_storePerm),
HITRECT( 320, 241, 80, 31, Vf_Exit),
HITRECT( 0, 241, 60, 31, Vf_Exit),
}
static void Vf_plus(void)
Definition: tdr.c:423
static void Vf_Exit(void)
Definition: tdr.c:442
#define HITRECT(x0, y0, width, height, callback)
Definition: hit.h:24
static void Vf_minus(void)
Definition: tdr.c:429
#define HITEND
Definition: hit.h:27
static void Vf_storePerm(void)
Definition: tdr.c:436
const float KBD_td_factor = 1.571921
static
float max1
static
int max_idx
int MaxTDR_Length = 150
static
float normFactor = 1.f
static
float normFactor_SR = 1.f
static
uint32_t rqExit = 0
static
float step_response[NUMTDRSAMPLES *2]
static
int TDR_cursorChangeCount
static
uint32_t TDR_cursorPos = WWIDTH / 2
static
uint32_t TDR_isScanned = 0
static
int TDR_Length = 150
static
const char texti[7][3] ={"600","300","150"," 75"," 50"," 25","Ohm" }
static
float time_domain[NUMTDRSAMPLES *2]
static
int variant
static
int Vf
static
const int yi[] ={89,74,59,44,35,20,0}
static
float Zmax
static
float Ztv[NUMTDRSAMPLES *2]
static