add direct register writing via console to e4k and fpga

This commit is contained in:
Christian Daniel 2013-01-10 19:11:06 +01:00
parent bc917000f5
commit b4e144f150
2 changed files with 34 additions and 5 deletions

View File

@ -41,17 +41,28 @@ static void e4kTune(int argc, const char* argv[])
}
}
static void e4kSetReg(int argc, const char* argv[])
{
if(argc != 2) {
printf("E4K: please supply register number and value\n");
return;
}
u32 reg = atoi(argv[0]);
u32 val = atoi(argv[1]);
e4k_setReg(&g_e4kCtx, reg, val);
}
CONSOLE_CMD_BEGIN(g_e4kTuneParameters)
CONSOLE_CMD_PARAM(PTUnsigned, "frequency in kHz")
CONSOLE_CMD_END()
CONSOLE_CMD_BEGIN(g_e4kIQOfsParameters)
CONSOLE_CMD_PARAM(PTSigned, "I offset"),
CONSOLE_CMD_PARAM(PTSigned, "Q offset")
CONSOLE_CMD_BEGIN(g_e4kSetRegParameters)
CONSOLE_CMD_PARAM(PTUnsigned, "register"),
CONSOLE_CMD_PARAM(PTUnsigned, "value")
CONSOLE_CMD_END()
CONSOLE_GROUP_BEGIN(g_e4kGroup)
CONSOLE_GROUP_CMD("dump", "dump tuner registers", NULL, &e4kDump),
CONSOLE_GROUP_CMD("tune", "set frequency in kHz", g_e4kTuneParameters, &e4kTune),
CONSOLE_GROUP_CMD("iqofs", "set I/Q offset", g_e4kIQOfsParameters, NULL)
CONSOLE_GROUP_CMD("sreg", "set E4K register", g_e4kSetRegParameters, &e4kSetReg)
CONSOLE_GROUP_END()

View File

@ -68,11 +68,29 @@ static void fpgaFFT(int argc, const char* argv[])
#endif // defined(BOARD_SAMPLE_SOURCE_SSC)
}
static void fpgaSetReg(int argc, const char* argv[])
{
if(argc != 2) {
printf("FPGA: please supply register number and value\n");
return;
}
u32 reg = atoi(argv[0]);
u32 val = atoi(argv[1]);
void sdrfpga_regWrite(u8 reg, u32 val);
sdrfpga_regWrite(reg, val);
}
CONSOLE_CMD_BEGIN(g_fpgaSetRegParameters)
CONSOLE_CMD_PARAM(PTUnsigned, "register"),
CONSOLE_CMD_PARAM(PTUnsigned, "value")
CONSOLE_CMD_END()
CONSOLE_GROUP_BEGIN(g_fpgaGroup)
CONSOLE_GROUP_CMD("pps", "PPS frequency reference", NULL, &fpgaPPS),
CONSOLE_GROUP_CMD("start", "start sampling", NULL, &fpgaStart),
CONSOLE_GROUP_CMD("stop", "stop sampling", NULL, &fpgaStop),
CONSOLE_GROUP_CMD("stats", "print sampling statistics", NULL, &fpgaStats),
CONSOLE_GROUP_CMD("fft", "calculate and display FFT of input", NULL, &fpgaFFT)
CONSOLE_GROUP_CMD("fft", "calculate and display FFT of input", NULL, &fpgaFFT),
CONSOLE_GROUP_CMD("sreg", "set FPGA register", g_fpgaSetRegParameters, &fpgaSetReg)
CONSOLE_GROUP_END()