SSPC-Tester/Driver/UDP5080-100/UNI-T SDK/examples/UCI/CVI/UCIDEMO/include/UTG4162.h

450 lines
11 KiB
C
Raw Normal View History

/********************************************************************
created: 2015/01/14
author: M.Yang
purpose: <EFBFBD><EFBFBD>UCI<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʹ<EFBFBD>õ<EFBFBD><EFBFBD>й<EFBFBD>UTG4000&UTG8000<EFBFBD>Ķ<EFBFBD><EFBFBD><EFBFBD>
*********************************************************************/
#ifndef UTG4162_h__
#define UTG4162_h__
#ifdef __cplusplus
namespace uci {
namespace utg4162 {
#endif // __cplusplus
/////////////////////////////////Key Define/////////////////////////////
//@brief : UTG4000&UTG8000ϵ<30>л<EFBFBD><D0BB>͵<EFBFBD><CDB5><EFBFBD><EFBFBD><EFBFBD><E5B0B4><EFBFBD><EFBFBD>ֵ<EFBFBD><D6B5><EFBFBD>
//@remark:
typedef enum _SGKeys {
Key_F1 = 0,
Key_F2,
Key_F3,
Key_F4,
Key_F5,
Key_F6,
Key_0 = '0',
Key_1,
Key_2,
Key_3,
Key_4,
Key_5,
Key_6,
Key_7,
Key_8,
Key_9,
Key_Dot,
Key_Symbol,
Key_Right,
Key_Left,
Key_Ok,
Key_Up,
Key_Down,
//
Key_User,
Key_Digital,
Key_Counter,
Key_Mod,
Key_Sweep,
Key_Bst,
Key_Sine,
Key_Noise,
Key_Square,
Key_Ramp,
Key_Pulse,
Key_Arb,
Key_Harmonic,
Key_DC,
Key_Ch1,
Key_Ch2,
Key_Trigger,
Key_SwapCh,
Key_OtherPage,
Key_Preset,
Key_Storge,
Key_StorgeL,
Key_Utility,
Key_Help,
Key_HelpL,
Key_Esc,
Key_PrScreen,
Key_Null = 0xff
}SGKeys;
inline int GetKeyIndex(SGKeys _code) {
return (_code >= Key_F1 && _code < Key_F6) ? _code : _code - '0' + 6;
};
//@brief : <20>жϰ<D0B6><CFB0><EFBFBD><EFBFBD>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD><EFBFBD>
//@param _code : <20><>ֵ
//@param _v : <20><><EFBFBD>ǰ<EFBFBD><C7B0><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>״̬<D7B4><CCAC>64bit<69><74><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʹ<EFBFBD><CAB9>ָ<EFBFBD>"lock?"<22><>ȡ<EFBFBD><C8A1>
//@return : == 0 δ<><CEB4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
//@remarks :
inline int IsKeyLocked(SGKeys _code, long long _v) {
return _v & ((long long)1 << GetKeyIndex(_code));
};
//@brief : <20><>LED<45><44>״̬
//@remarks : 0 <20><>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 1 <20><>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD>
typedef struct _LEDStatus {
char Noise;
char UTILTY;
char STORGE;
char RAMP;
char PULSE;
char COUNTER;
char USER;
char DIGTAL;
char HARMONIC;
char DC;
char TRGGER;
char CH2;
char SWAPCH;
char ARB;
char CH1;
char SINE;
char SQUARE;
}LEDStatus;
/////////////////////////////////File Load/////////////////////////////
//@brief : <20><><EFBFBD><EFBFBD>ļ<EFBFBD><C4BC>ط<EFBFBD>ʽ
typedef enum _ARBWriteMode {
//@brief : <20><><EFBFBD>ز<EFBFBD><D8B2><EFBFBD>ʽ<EFBFBD><CABD><EFBFBD><EFBFBD>
ARB_MODE_CARRIER = 0,
//@brief : <20>Ե<EFBFBD><D4B5>Ʋ<EFBFBD><C6B2><EFBFBD>ʽ<EFBFBD><CABD><EFBFBD><EFBFBD>
ARB_MODE_MOD,
}ARBWriteMode;
//@brief : <20><><EFBFBD>ص<EFBFBD><D8B5>ļ<EFBFBD><C4BC><EFBFBD><EFBFBD>Ž<EFBFBD><C5BD><EFBFBD>
typedef enum _FileMedium {
//@brief : <20><><EFBFBD>ŵ<EFBFBD>RAM
FM_RAM = 0,
//@brief : <20><><EFBFBD>ŵ<EFBFBD>ROM
FM_ROM,
//@brief : <20><><EFBFBD>ŵ<EFBFBD>TF<54><46>
FM_TF,
//@brief : <20><><EFBFBD>ŵ<EFBFBD>U<EFBFBD><55>
FM_UDISK
}FileMedium;
/////////////////////////////////Parameters Address Define/////////////////////////////
//<2F><><EFBFBD><EFBFBD>ģʽ
typedef enum _EWorkMode : long long {
//@brief : <20><><EFBFBD><EFBFBD>ģʽ
WM_BASE = 0,
//@brief : <20><><EFBFBD>Ʋ<EFBFBD>ģʽ
WM_MODE,
//@brief : ɨƵģʽ
WM_SWEEP,
//@brief : ⧷<>
WM_BURST,
}EWorkMode;
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
typedef enum _EBaseWave : long long {
//@brief : <20><><EFBFBD>Ҳ<EFBFBD>
BASE_SINE = 0,
//@brief : <20><><EFBFBD><EFBFBD>
BASE_SQUARE = 1,
//@brief : б<><D0B1>
BASE_RAMP = 3,
//@brief : <20><><EFBFBD>
BASE_PULSE = 4,
//@brief : <20><><EFBFBD><EFBFBD>
BASE_NOISE = 5,
//@brief : <20><><EFBFBD>
BASE_ARB = 6,
//@brief : г<><D0B3>
BASE_HARMONIC = 7,
//@brief : ֱ<><D6B1>
BASE_DC = 8
}EBaseWave;
typedef enum _EModeType : long long {
MT_AM = 0,
MT_FM = 1,
MT_PM = 2,
MT_ASK = 3,
MT_FSK = 4,
MT_PSK = 5,
MT_BPSK = 6,
MT_QPSK = 7,
MT_OSK = 8,
MT_QAM = 9,
MT_PWM = 10,
MT_SUM = 11,
}EModeType;
//<2F><><EFBFBD>Ʋ<EFBFBD><C6B2><EFBFBD>
typedef enum _EModeWaveType : long long {
MOD_WAVE_SINE = 0,
MOD_WAVE_SQUARE = 1,
MOD_WAVE_UPRAMP = 2,
MOD_WAVE_DNRAMP = 3,
MOD_WAVE_NOISE = 4,
MOD_WAVE_ARB = 5,
}EModeWaveType;
//@brief : <20>ź<EFBFBD>Դ<EFBFBD><D4B4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
//@remark: <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʹ<EFBFBD><CAB9>rpָ<70>д<EEA3AC><D0B4><EFBFBD><EFBFBD>ʹ<EFBFBD><CAB9>wpָ<70>
//@example: wp@ch:0@addr:0x8000@v:0;
// rp@ch:0@addr:0x8000;
// <20><><EFBFBD>в<EFBFBD><D0B2><EFBFBD><EFBFBD>Ķ<EFBFBD>Ӧ<EFBFBD><D3A6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>8bytes<65><73>double<6C><65><EFBFBD><EFBFBD>
typedef enum _enumRemoteMessage {
//@brief : <20><><EFBFBD><EFBFBD>ģʽ
//@remark: {IO:WR}{DATA:EWorkMode}
RM_WORK_MODE = 0x8000,
//{ <20><><EFBFBD><EFBFBD>
//@brief : ͨ<><CDA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
//@remark: {IO:WR}{DATA: 0-OFF<46><46>1-ON}
RM_CH_SW = 0x8001,
//@brief : ͬ<><CDAC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
//@remark: {IO:WR}{DATA: 0-OFF<46><46>1-ON<4F><4E>2-reverse}
RM_CH_SYNC_SW,
//@brief : ͨ<><CDA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
//@remark: {IO:WR}{DATA: 0<><30>OFF<46><46>1<EFBFBD><31>ON}
RM_CH_REVERTSE,
//@brief : ͨ<><CDA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
//@remark: {IO:WR}{DATA: 1~1000}
RM_CH_LOAD,
//@brief : ͨ<><CDA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʹ<EFBFBD><CAB9>
//@remark: {IO:WR}{DATA: 0<><30>OFF<46><46>1<EFBFBD><31>ON}
RM_CH_OUTPUT_LIMIT_ENABLE,
//@brief : ͨ<><CDA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>͵<EFBFBD>ƽ
//@remark: {IO:WR}{DATA<?>: -10V~MAX_LEVEL}
RM_CH_OUTPUT_LIMIT_MIN_LEVEL,
//@brief : ͨ<><CDA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ߵ<EFBFBD>ƽ
//@remark: {IO:WR}{DATA: MIN_LEVEL~10V}
RM_CH_OUTPUT_LIMIT_MAX_LEVEL,
//@brief : <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
//@remark: {IO:WR}{DATA:EBaseWave}
RM_BASE_WAVE_TYPE = 0x8008,
//@brief : <20><><EFBFBD><EFBFBD>Ƶ<EFBFBD><C6B5>(<28><>λ<EFBFBD><CEBB>Hz)
//@remark: {IO:WR}{DATA: 1uHz~<7E><>ǰ<EFBFBD><C7B0><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƶ<EFBFBD><C6B5>}
RM_BASE_FREQ,
//@brief : <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>λ(<28><>λ<EFBFBD><CEBB><EFBFBD><EFBFBD>)
//@remark: {IO:WR}{DATA:-360~360}
RM_BASE_PHASE = 0x800A,
//@brief : <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(<28><>λ<EFBFBD><CEBB>VPP)
//@remark: {IO:WR}{DATA: 1mVpp~10Vpp<70><70>50ŷķ<C5B7><C4B7>}
RM_BASE_AMP_VPP,
//@brief : <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(<28><>λ<EFBFBD><CEBB>VRMS)
//@remark: {IO:WR}{DATA: 1mVRMS~5Vpp<70><70>50ŷķ<C5B7><C4B7>}
RM_BASE_AMP_VRMS,
//@brief : <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(<28><>λ<EFBFBD><CEBB>VDBM)
//@remark: {IO:WR}{DATA: -53.010VDBM~26.99VDBM<EFBFBD><EFBFBD>50ŷķ<EFBFBD><EFBFBD>}
RM_BASE_AMP_VDBM,
//@brief : <20><><EFBFBD><EFBFBD>ƫ<EFBFBD><C6AB>(<28><>λ<EFBFBD><CEBB>V)
//@remark: {IO:WR}{DATA: -5VRMS~5Vpp<70><70>50ŷķ<C5B7><C4B7>}
RM_BASE_OFFSET,
//@brief : <20><><EFBFBD><EFBFBD><EFBFBD>ߵ<EFBFBD>ƽ(<28><>λ<EFBFBD><CEBB>V)
//@remark: {IO:WR}{DATA: BASE_LOW~5Vpp<70><70>50ŷķ<C5B7><C4B7>}
RM_BASE_HIGHT = 0x800F,
//@brief : <20><><EFBFBD><EFBFBD><EFBFBD>͵<EFBFBD>ƽ(<28><>λ<EFBFBD><CEBB>V)
//@remark: {IO:WR}{DATA: -5VRMS~BASE_HIGHT<48><54>50ŷķ<C5B7><C4B7>}
RM_BASE_LOW = 0x8010,
//@brief : <20><><EFBFBD><EFBFBD>ռ<EFBFBD>ձȶԷ<C8B6><D4B7><EFBFBD>ռ<EFBFBD>ձȡ<D5B1><C8A1><EFBFBD><EFBFBD>ռ<E5B2A8>ձȡ<D5B1><C8A1><EFBFBD><EFBFBD>Dz<EFBFBD><C7B2>Գƶȹ<C6B6><C8B9><EFBFBD>
//@remark: {IO:WR}{DATA: 0~100}
RM_BASE_DUTY,
//@brief : <20><><EFBFBD><EFBFBD><E5B2A8><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>(<28><>λ<EFBFBD><CEBB>s)
//@remark: {IO:WR}{DATA: min ~ <20><><EFBFBD><EFBFBD>*0.4}
RM_BASE_RISETIME,
//@brief : <20><><EFBFBD><EFBFBD>½<EFBFBD>ʱ<EFBFBD><CAB1>(<28><>λ<EFBFBD><CEBB>s)
//@remark: {IO:WR}{DATA: min ~ <20><><EFBFBD><EFBFBD>*0.4}
RM_BASE_FALLTIME,
//@brief : <20><><EFBFBD><EFBFBD><E2B2A8><EFBFBD><EFBFBD>ģʽ<C4A3><CABD><EFBFBD><EFBFBD>
//@remark: {IO:WR}{DATA:0<><30>OFF<46><46>1<EFBFBD><31>ON}
RM_BASE_ARB_PLAY_ENABLE,
//@brief : г<><D0B3> - <20><><EFBFBD><EFBFBD>ģʽ
//@remark: {IO:WR}
//{DATA:
//0: <20><><EFBFBD><EFBFBD>,
//1: ż<><C5BC>,
//2: ȫ<><C8AB>,
//3: USER,<2C>Զ<EFBFBD><D4B6><EFBFBD>
// }
RM_BASE_HARMOIC_TYPE = 0x8080,
//@brief :г<><D0B3><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,<2C><>RM_BASE_HARMOIC_TYPE=USERʱ<52><CAB1>Ч
//@remark: {IO:WR}{DATA:BIT14<31><34>BIT0<54>ֱ<EFBFBD><D6B1><EFBFBD>Ӧ2~16<31><36>г<EFBFBD><D0B3><EFBFBD><EFBFBD><EFBFBD>أ<EFBFBD>BIT15<31><35>Ӧ<EFBFBD><D3A6><EFBFBD><EFBFBD>ǿ<EFBFBD>ƿ<EFBFBD><C6BF><EFBFBD>}
RM_BASE_HARMONIC_ONOFF,
//<2F><><EFBFBD><EFBFBD>N(2~16)<29><>г<EFBFBD><D0B3>,<2C><><EFBFBD>Կ<EFBFBD><D4BF><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ַ<EFBFBD><D6B7><EFBFBD>:
//EG:N=3(<28><><EFBFBD><EFBFBD>г<EFBFBD><D0B3>),AMP = 1Vpp, PHASE = 90<39><30>
//<2F><><EFBFBD><EFBFBD>1:
//<2F><>1<EFBFBD><31><EFBFBD><EFBFBD>ָ<EFBFBD><D6B8>г<EFBFBD><D0B3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>RM_HARMONIC_NUM = N(2~16),
//<2F><>2<EFBFBD><32><EFBFBD><EFBFBD><EFBFBD>г<E8B6A8><D0B3><EFBFBD>ķ<EFBFBD><C4B7>Ⱥ<EFBFBD><C8BA><EFBFBD>λ,
// RM_HARMONIC_SN_AMP_N = 1.0; RM_HARMONIC_SN_PHASE_N = 90.0;
//<2F><><EFBFBD><EFBFBD>1:ֱ<><D6B1><EFBFBD><EFBFBD><EFBFBD>õ<EFBFBD><C3B5><EFBFBD><EFBFBD><EFBFBD>г<EFBFBD><D0B3><EFBFBD>ķ<EFBFBD><C4B7>Ⱥ<EFBFBD><C8BA><EFBFBD>λ
//RM_HARMONIC_SN_AMP_3 = 1.0, RM_HARMONIC_SN_PHASE_3 = 90.0,
//@brief : г<><D0B3><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
//@remark: {IO:WR}{DATA:1~15}
RM_HARMONIC_NUM,
//@brief : г<><D0B3><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Vpp
//@remark: {IO:WR}{DATA:0~<7E><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>}
RM_HARMONIC_SN_AMP_N,
//@brief : г<><D0B3><EFBFBD><EFBFBD>λ(<28><>λ<EFBFBD><CEBB><EFBFBD><EFBFBD>)
//@remark: {IO:WR}{DATA:-360~360}
RM_HARMONIC_SN_PHASE_N = 0x8084,
//@brief : г<><D0B3><EFBFBD><EFBFBD><EFBFBD><EFBFBD> ͬRM_HARMONIC_SN_AMP_N
RM_HARMONIC_SN_AMP_2,
RM_HARMONIC_SN_AMP_3,
RM_HARMONIC_SN_AMP_4,
RM_HARMONIC_SN_AMP_5,
RM_HARMONIC_SN_AMP_6,
RM_HARMONIC_SN_AMP_7 = 0x808A ,
RM_HARMONIC_SN_AMP_8,
RM_HARMONIC_SN_AMP_9,
RM_HARMONIC_SN_AMP_10,
RM_HARMONIC_SN_AMP_11,
RM_HARMONIC_SN_AMP_12 = 0x808F,
RM_HARMONIC_SN_AMP_13 = 0x8090,
RM_HARMONIC_SN_AMP_14,
RM_HARMONIC_SN_AMP_15,
RM_HARMONIC_SN_AMP_16,
//@brief : г<><D0B3><EFBFBD><EFBFBD>λ RM_HARMONIC_SN_PHASE_N
RM_HARMONIC_SN_PHASE_2,
RM_HARMONIC_SN_PHASE_3,
RM_HARMONIC_SN_PHASE_4,
RM_HARMONIC_SN_PHASE_5,
RM_HARMONIC_SN_PHASE_6,
RM_HARMONIC_SN_PHASE_7,
RM_HARMONIC_SN_PHASE_8 = 0x809A,
RM_HARMONIC_SN_PHASE_9,
RM_HARMONIC_SN_PHASE_10,
RM_HARMONIC_SN_PHASE_11,
RM_HARMONIC_SN_PHASE_12,
RM_HARMONIC_SN_PHASE_13 = 0x809F,
RM_HARMONIC_SN_PHASE_14 = 0x80A0,
RM_HARMONIC_SN_PHASE_15,
RM_HARMONIC_SN_PHASE_16,
//}
//{MOD
//@brief : <20><><EFBFBD><EFBFBD>ģʽ
//@remark: {IO:WR}{DATA:EModeType}
RM_MOD_TYPE = 0x8100,
//<2F><><EFBFBD>Ʋ<EFBFBD><C6B2><EFBFBD>
//0: MOD_SINE,
//1: MOD_SQUARE,
//2: MOD_UPRAMP,
//3: MOD_DNRAMP,
//4: MOD_NOISE,
//5: MOD_ARB,
//@brief : <20><><EFBFBD>Ʋ<EFBFBD><C6B2><EFBFBD>
//@remark: {IO:WR}{DATA:EModeWaveType}
RM_MOD_WAVE,
//@brief : <20><><EFBFBD>Ʋ<EFBFBD>Ƶ<EFBFBD>ʣ<EFBFBD><CAA3><EFBFBD>λ<EFBFBD><CEBB>Hz<48><7A>
//@remark: {IO:WR}{DATA: 1uHz~200KHz}
RM_MOD_FREQ,
//@brief : <20><><EFBFBD>Ʋ<EFBFBD><C6B2><EFBFBD><EFBFBD>ʣ<EFBFBD><CAA3><EFBFBD>λ<EFBFBD><CEBB>s<EFBFBD><73>
//@remark: {IO:WR}{DATA<double>: 2ms~1Ms}
RM_MOD_RATE,
//@brief : <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȣ<EFBFBD><C8A3><EFBFBD>λ<EFBFBD><CEBB>%<25><>
//@remark: {IO:WR}{DATA: 0~120}
RM_MOD_SCOPE,
//@brief : <20><><EFBFBD><EFBFBD>Դ
//@remark: {IO:WR}{DATA: 0-Internal,1-External}
RM_MOD_SOURCE,
//@brief : FMƵ<4D><EFBFBD><EEA3A8>λ<EFBFBD><CEBB>Hz<48><7A>
//@remark: {IO:WR}{DATA: 0~<7E>ز<EFBFBD><D8B2><EFBFBD>ǰƵ<C7B0><C6B5>}
RM_MOD_FRE_DEV,
//@brief : PM<50><4D><EFBFBD><EFBFBD> (<28><>λ<EFBFBD><CEBB><EFBFBD><EFBFBD>)
//@remark: {IO:WR}{DATA:-360~360}
RM_MOD_PHASE_DEV,
//@brief : FSK<53><4B>Ƶ<EFBFBD><C6B5><EFBFBD><EFBFBD>λ<EFBFBD><CEBB>Hz<48><7A>
//@remark: {IO:WR}{DATA: 0~<7E>ز<EFBFBD><D8B2><EFBFBD><EFBFBD><EFBFBD>Ƶ<EFBFBD><C6B5>}
RM_MOD_HOP_FREQ,
//@brief : BPSK<53><4B><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Դ
//@remark: {IO:WR}
//{DATA<double>:
//0: PN7,
//1: PN9,
//2: PN15,
//3: PN21,
//}
RM_MOD_DATA_SOURCE = 0x8109,
//@brief : BPSK<53><4B>λ<EFBFBD><CEBB>QPSK<53><4B>λ1,(<28><>λ<EFBFBD><CEBB><EFBFBD><EFBFBD>)
//@remark: {IO:WR}{DATA: -360~360}}
RM_MOD_PSK_PHASE1,
//@brief : QPSK<53><4B>λ2(<28><>λ<EFBFBD><CEBB><EFBFBD><EFBFBD>)
//@remark: {IO:WR}{DATA:-360~360}}
RM_MOD_PSK_PHASE2,
//@brief : QPSK<53><4B>λ3(<28><>λ<EFBFBD><CEBB><EFBFBD><EFBFBD>)
//@remark: {IO:WR}{DATA:-360~360}
RM_MOD_PSK_PHASE3,
//@brief : OSK<53><4B><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>(<28><>λ<EFBFBD><CEBB>s)
//@remark: {IO:WR}{DATA: 8ns~200s}
RM_MOD_OSC_TIME,
//@brief : QAM<41><4D><EFBFBD><EFBFBD>IQ MAM
//@remark: {IO:WR}{DATA: 0-4QAM,1-8QAM,2-16QAM,3-32QAM,4-64QAM,5-128QAM,6-256QAM,}
RM_MOD_IQ_MAP,
//@brief : PWM<57><4D><EFBFBD><EFBFBD>ռ<EFBFBD>ձȲ<D5B1>ֵ
//@remark: {IO:WR}{DATA: 0~PULS DUTY}
RM_MOD_DUTY_DEV,
//}
//{SWEEP
//@brief : ɨƵ<C9A8><C6B5><EFBFBD><EFBFBD>
//@remark: {IO:WR}{DATA: 0<><30><EFBFBD><EFBFBD><EFBFBD>ԣ<EFBFBD>1<EFBFBD><31><EFBFBD><EFBFBD><EFBFBD><EFBFBD>}
RM_SWEEP_TYPE = 0x8200,
//@brief : ɨƵ<C9A8><C6B5><EFBFBD><EFBFBD>Դ
//@remark: {IO:WR}{DATA: 0<><30><EFBFBD>ڲ<EFBFBD><DAB2><EFBFBD>1<EFBFBD><31><EFBFBD>ⲿ<EFBFBD><E2B2BF>2<EFBFBD><32><EFBFBD>ֶ<EFBFBD>}
RM_SWEEP_SOURCE,
//@brief : ɨƵʱ<C6B5><CAB1>(<28><>λ<EFBFBD><CEBB>s)
//@remark: {IO:WR}{DATA: 1ms~500s}
RM_SWEEP_TIME,
//@brief : ɨƵ<C9A8><C6B5>ʼƵ<CABC>ʣ<EFBFBD><CAA3><EFBFBD>λ<EFBFBD><CEBB>Hz<48><7A>
//@remark: {IO:WR}{DATA: 1uHz~<7E><><EFBFBD><EFBFBD><EFBFBD>ز<EFBFBD>Ƶ<EFBFBD><C6B5>}
RM_SWEEP_START_FREQ,
//@brief : ɨƵֹͣƵ<D6B9>ʣ<EFBFBD><CAA3><EFBFBD>λ<EFBFBD><CEBB>Hz<48><7A>
//@remark: {IO:WR}{DATA: 1uHz~<7E><><EFBFBD><EFBFBD><EFBFBD>ز<EFBFBD>Ƶ<EFBFBD><C6B5>}
RM_SWEEP_STOP_FREQ,
//@brief : ͬ<><CDAC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƶ<EFBFBD>ʣ<EFBFBD><CAA3><EFBFBD>λ<EFBFBD><CEBB>Hz<48><7A>
//@remark: {IO:WR}{DATA: RM_SWEEP_START_FREQ~RM_SWEEP_STOP_FREQ}
RM_SWEEP_SYNC_FREQ,
//@brief : ɨƵ<C9A8><C6B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
//@remark: {IO:WR}{DATA: 0-OFF<46><46>1-ON}
RM_SWEEP_TIRG_OUT,
//}
//{BURST
//@brief : ⧷<><E2A7B7><EFBFBD><EFBFBD><EFBFBD>
//@remark: {IO:WR}{DATA:
//0: N<><4E><EFBFBD><EFBFBD>,
//1: <20><><EFBFBD><EFBFBD>,
//2: <20>ſ<EFBFBD>
//}
RM_BURST_TYPE = 0x8300,
//@brief : ⧷<><E2A7B7><EFBFBD><EFBFBD><EFBFBD>Դ
//@remark: {IO:WR}{DATA: 0<><30><EFBFBD>ڲ<EFBFBD><DAB2><EFBFBD>1<EFBFBD><31><EFBFBD>ⲿ<EFBFBD><E2B2BF>2<EFBFBD><32><EFBFBD>ֶ<EFBFBD>}
RM_BURST_SOURCE,
//@brief : <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
//@remark: {IO:WR}{DATA: 0-OFF<46><46>1-ON}
RM_BURST_TIRG_OUT,
//@brief : ⧷<><E2A7B7><EFBFBD><EFBFBD>ڣ<EFBFBD><DAA3><EFBFBD>λ<EFBFBD><CEBB>s<EFBFBD><73>
//@remark: {IO:WR}{DATA: 1~500}
RM_BURST_PERIOD,
//@brief : ⧷<><E2A7B7><EFBFBD>λ(<28><>λ<EFBFBD><CEBB><EFBFBD><EFBFBD>)
//@remark: {IO:WR}{DATA:-360~360}
RM_BURST_PHASE,
//@brief : ⧷<><E2A7B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>λ<EFBFBD><CEBB><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
//@remark: {IO:WR}{DATA: 1~50000}
RM_BURST_CYCLES,
//@brief : <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
//@remark: {IO:WR}{DATA: 0-Rise<73><65>1-Fall}
RM_BURST_TIRG_EDGE,
//}
}ERemoteMessage;
#ifdef __cplusplus
}
}
#endif // __cplusplus
#endif // UTG4162_h__