#define NUM_CHANNELS 132 #define NUM_CHUNKS 6 #define CHUNK_SIZE (NUM_CHANNELS / NUM_CHUNKS) // Screen coordinates #define FREQ_BOTTOM_Y 50 #define FREQ_START_X 14 // How many channels displayed on the scale (On screen still 218) #define FREQ_LENGTH_X 102 // dBm threshold to show peak value #define PEAK_THRESHOLD -85 /* * ultrawide mode: 80 MHz on screen, 784 kHz per channel * wide mode (default): 20 MHz on screen, 196 kHz per channel * narrow mode: 4 MHz on screen, 39 kHz per channel * ultranarrow mode: 2 MHz on screen, 19 kHz per channel */ #define WIDE 0 #define NARROW 1 #define ULTRAWIDE 2 #define ULTRANARROW 3 /* channel spacing in Hz */ #define WIDE_SPACING 196078 #define NARROW_SPACING 39215 #define ULTRAWIDE_SPACING 784313 #define ULTRANARROW_SPACING 19607 /* vertical scrolling */ #define VERTICAL_SHORT_STEP 16 #define MAX_VSCROLL 120 #define MIN_VSCROLL 0 #define DEFAULT_VSCROLL 48 /* frequencies in MHz */ #define DEFAULT_FREQ 440 #define WIDE_STEP 5 #define NARROW_STEP 1 #define ULTRAWIDE_STEP 20 #define ULTRANARROW_STEP 1 #define WIDE_MARGIN 13 #define NARROW_MARGIN 3 #define ULTRAWIDE_MARGIN 42 #define ULTRANARROW_MARGIN 1 /* frequency bands supported by device */ #define BAND_300 0 #define BAND_400 1 #define BAND_900 2 /* band limits in MHz */ #define MIN_300 281 #define CEN_300 315 #define MAX_300 361 #define MIN_400 378 #define CEN_400 435 #define MAX_400 481 #define MIN_900 749 #define CEN_900 855 #define MAX_900 962 /* band transition points in MHz */ #define EDGE_400 369 #define EDGE_900 615 /* VCO transition points in Hz */ #define MID_300 318000000 #define MID_400 424000000 #define MID_900 848000000 #define UPPER(a, b, c) ((((a) - (b) + ((c) / 2)) / (c)) * (c)) #define LOWER(a, b, c) ((((a) + (b)) / (c)) * (c))