mirror of
https://github.com/AlexandreRouma/SDRPlusPlus.git
synced 2026-04-18 22:32:44 +00:00
155 lines
3.0 KiB
C
155 lines
3.0 KiB
C
#pragma once
|
|
|
|
#define FIRMWARE_VER_MAJOR 2
|
|
#define FIRMWARE_VER_MINOR 1
|
|
|
|
// HF103 commands !!!
|
|
enum FX3Command {
|
|
// Start GPII engine and stream the data from ADC
|
|
// WRITE: UINT32
|
|
STARTFX3 = 0xAA,
|
|
|
|
// Stop GPII engine
|
|
// WRITE: UINT32
|
|
STOPFX3 = 0xAB,
|
|
|
|
// Get the information of device
|
|
// including model, version
|
|
// READ: UINT32
|
|
TESTFX3 = 0xAC,
|
|
|
|
// Control GPIOs
|
|
// WRITE: UINT32
|
|
GPIOFX3 = 0xAD,
|
|
|
|
// Write data to I2c bus
|
|
// WRITE: DATA
|
|
// INDEX: reg
|
|
// VALUE: i2c_addr
|
|
I2CWFX3 = 0xAE,
|
|
|
|
// Read data from I2c bus
|
|
// READ: DATA
|
|
// INDEX: reg
|
|
// VALUE: i2c_addr
|
|
I2CRFX3 = 0xAF,
|
|
|
|
// Reset USB chip and get back to bootloader mode
|
|
// WRITE: NONE
|
|
RESETFX3 = 0xB1,
|
|
|
|
// Set Argument, packet Index/Vaule contains the data
|
|
// WRITE: (Additional Data)
|
|
// INDEX: Argument_index
|
|
// VALUE: arguement value
|
|
SETARGFX3 = 0xB6,
|
|
|
|
// Start ADC with the specific frequency
|
|
// Optional, if ADC is running with crystal, this is not needed.
|
|
// WRITE: UINT32 -> adc frequency
|
|
STARTADC = 0xB2,
|
|
|
|
// R82XX family Tuner functions
|
|
// Initialize R82XX tuner
|
|
// WRITE: NONE
|
|
TUNERINIT = 0xB4,
|
|
|
|
// Tune to a sepcific frequency
|
|
// WRITE: UINT64
|
|
TUNERTUNE = 0xB5,
|
|
|
|
// Stop Tuner
|
|
// WRITE: NONE
|
|
TUNERSTDBY = 0xB8,
|
|
|
|
// Read Debug string if any
|
|
// READ:
|
|
READINFODEBUG = 0xBA,
|
|
};
|
|
|
|
#define OUTXIO0 (1U << 0) // ATT_LE
|
|
#define OUTXIO1 (1U << 1) // ATT_CLK
|
|
#define OUTXIO2 (1U << 2) // ATT_DATA
|
|
#define OUTXIO3 (1U << 3) // SEL0
|
|
#define OUTXIO4 (1U << 4) // SEL1
|
|
#define OUTXIO5 (1U << 5) // SHDWN
|
|
#define OUTXIO6 (1U << 6) // DITH
|
|
#define OUTXIO7 (1U << 7) // RAND
|
|
|
|
#define OUTXIO8 (1U << 8) // 256
|
|
#define OUTXIO9 (1U << 9) // 512
|
|
#define OUTXI10 (1U << 10) // 1024
|
|
#define OUTXI11 (1U << 11) // 2048
|
|
#define OUTXI12 (1U << 12) // 4096
|
|
#define OUTXI13 (1U << 13) // 8192
|
|
#define OUTXI14 (1U << 14) // 16384
|
|
#define OUTXI15 (1U << 15) // 32768
|
|
#define OUTXI16 (1U << 16)
|
|
|
|
enum GPIOPin {
|
|
SHDWN = OUTXIO5,
|
|
DITH = OUTXIO6,
|
|
RANDO = OUTXIO7,
|
|
BIAS_HF = OUTXIO8,
|
|
BIAS_VHF = OUTXIO9,
|
|
LED_YELLOW = OUTXI10,
|
|
LED_RED = OUTXI11,
|
|
LED_BLUE = OUTXI12,
|
|
ATT_SEL0 = OUTXI13,
|
|
ATT_SEL1 = OUTXI14,
|
|
|
|
// RX888r2
|
|
VHF_EN = OUTXI15,
|
|
PGA_EN = OUTXI16,
|
|
};
|
|
|
|
enum RadioModel {
|
|
NORADIO = 0x00,
|
|
BBRF103 = 0x01,
|
|
HF103 = 0x02,
|
|
RX888 = 0x03,
|
|
RX888r2 = 0x04,
|
|
RX999 = 0x05,
|
|
RXLUCY = 0x06,
|
|
RX888r3 = 0x07,
|
|
};
|
|
|
|
enum ArgumentList {
|
|
// Set R8xx lna/mixer gain
|
|
// value: 0-29
|
|
R82XX_ATTENUATOR = 1,
|
|
|
|
// Set R8xx vga gain
|
|
// value: 0-15
|
|
R82XX_VGA = 2,
|
|
|
|
// Set R8xx sideband
|
|
// value: 0/1
|
|
R82XX_SIDEBAND = 3,
|
|
|
|
// Set R8xx harmonic
|
|
// value: 0/1
|
|
R82XX_HARMONIC = 4,
|
|
|
|
// Set DAT-31 Att
|
|
// Value: 0-63
|
|
DAT31_ATT = 10,
|
|
|
|
// Set AD8340 chip vga
|
|
// Value: 0-255
|
|
AD8340_VGA = 11,
|
|
|
|
// Preselector
|
|
// Value: 0-2
|
|
PRESELECTOR = 12,
|
|
|
|
// VHFATT
|
|
// Value: 0-15
|
|
VHF_ATTENUATOR = 13,
|
|
};
|
|
|
|
#define _DEBUG_USB_
|
|
#define MAXLEN_D_USB (100)
|
|
|
|
|