Test program running on MAX32625MBED. Control through USB Serial commands using a terminal emulator such as teraterm or putty.
Dependencies: MaximTinyTester CmdLine MAX541 USBDevice
Diff: Test_Menu_MAX11043.cpp
- Revision:
- 59:47538bcf6cda
- Parent:
- 57:1c9da8e90737
- Child:
- 64:a667cfd83492
--- a/Test_Menu_MAX11043.cpp Fri Feb 14 03:22:31 2020 +0000 +++ b/Test_Menu_MAX11043.cpp Mon Feb 17 23:35:43 2020 +0000 @@ -110,29 +110,54 @@ // CODE GENERATOR: no Menu item hint in description // CODE GENERATOR: MAX11043 Command Name = RegName (MAX11043_CMD_enum_t commandByte) --> const char* // CODE GENERATOR: no Menu item hint in description +// CODE GENERATOR: MAX11043 Command Name = Configure_XXXXX (uint8_t linef, uint8_t rate) --> uint8_t +// CODE GENERATOR: Menu item hint description Menu item 'XX' +// CODE GENERATOR: Menu item 'XX' -- Menu item XX +// CODE GENERATOR: MAX11043 help: XX uint8_t linef, uint8_t rate -- Configure_XXXXX +// CODE GENERATOR: MAX11043 helpString: 'XX linef=? rate=? -- Configure_XXXXX' +// CODE GENERATOR: test menu case 'XX': +// CODE GENERATOR: helpString 'XX linef=? rate=? -- Configure_XXXXX' +// CODE GENERATOR: CMD_ 'None' +// CODE GENERATOR: CommandName 'Configure_XXXXX' +// CODE GENERATOR: CommandParamIn 'uint8_t linef, uint8_t rate' +// CODE GENERATOR: CommandReturnType 'uint8_t' +// CODE GENERATOR: CommandPre '' +// CODE GENERATOR: CommandDocParamIn '' +// CODE GENERATOR: CommandDocParamOut '' +// CODE GENERATOR: CommandPost '' +// CODE GENERATOR: CommandReturn '@return 1 on success; 0 on failure' +// CODE GENERATOR: MAX11043 Command Name = Configure_XXXXY (uint8_t linef, uint8_t rate) --> uint8_t +// CODE GENERATOR: Menu item hint description Menu item 'XY' +// CODE GENERATOR: Menu item 'XY' -- Menu item XY +// CODE GENERATOR: MAX11043 help: XY uint8_t linef, uint8_t rate -- Configure_XXXXY +// CODE GENERATOR: MAX11043 helpString: 'XY linef=? rate=? -- Configure_XXXXY' +// CODE GENERATOR: test menu case 'XY': +// CODE GENERATOR: helpString 'XY linef=? rate=? -- Configure_XXXXY' +// CODE GENERATOR: CMD_ 'None' +// CODE GENERATOR: CommandName 'Configure_XXXXY' +// CODE GENERATOR: CommandParamIn 'uint8_t linef, uint8_t rate' +// CODE GENERATOR: CommandReturnType 'uint8_t' +// CODE GENERATOR: CommandPre '' +// CODE GENERATOR: CommandDocParamIn '' +// CODE GENERATOR: CommandDocParamOut '' +// CODE GENERATOR: CommandPost '' +// CODE GENERATOR: CommandReturn '@return 1 on success; 0 on failure' // CODE GENERATOR: testMenuGlobalArgsDict scan global property list g_MAX11043_device -// CODE GENERATOR: testMenuGlobalArgsDict add global property g_MAX11043_device.VRef_xxxxxx -// CODE GENERATOR: testMenuGlobalArgsDict add global property g_MAX11043_device.VRef_xxxxxx argname = VRef_xxxxxx -// CODE GENERATOR: testMenuGlobalArgsDict['VRef_xxxxxx']['alias'] = 'None' -// CODE GENERATOR: testMenuGlobalArgsDict['VRef_xxxxxx']['argtype'] = 'double' -// CODE GENERATOR: testMenuGlobalArgsDict['VRef_xxxxxx']['usedByCommandName'] = 'None' -// CODE GENERATOR: testMenuGlobalArgsDict['VRef_xxxxxx']['usedBytestMenuItemName'] = 'None' +// CODE GENERATOR: testMenuGlobalArgsDict add global property g_MAX11043_device.VRef +// CODE GENERATOR: testMenuGlobalArgsDict add global property g_MAX11043_device.VRef argname = VRef +// CODE GENERATOR: testMenuGlobalArgsDict['VRef']['alias'] = 'None' +// CODE GENERATOR: testMenuGlobalArgsDict['VRef']['argtype'] = 'double' +// CODE GENERATOR: testMenuGlobalArgsDict['VRef']['usedByCommandName'] = 'None' +// CODE GENERATOR: testMenuGlobalArgsDict['VRef']['usedBytestMenuItemName'] = 'None' -// CODE GENERATOR: testMenuGlobalArgsDict add global property g_MAX11043_device.ctrl -// CODE GENERATOR: testMenuGlobalArgsDict add global property g_MAX11043_device.ctrl shadow of argname = ctrl -// CODE GENERATOR: testMenuGlobalArgsDict add global property g_MAX11043_device.ctrl argname = ctrl -// CODE GENERATOR: testMenuGlobalArgsDict['ctrl']['alias'] = 'None' -// CODE GENERATOR: testMenuGlobalArgsDict['ctrl']['argtype'] = 'uint32_t' -// CODE GENERATOR: testMenuGlobalArgsDict['ctrl']['usedByCommandName'] = 'None' -// CODE GENERATOR: testMenuGlobalArgsDict['ctrl']['usedBytestMenuItemName'] = 'None' - -// CODE GENERATOR: testMenuGlobalArgsDict add global property g_MAX11043_device.pgaGain -// CODE GENERATOR: testMenuGlobalArgsDict add global property g_MAX11043_device.pgaGain argname = pgaGain -// CODE GENERATOR: testMenuGlobalArgsDict['pgaGain']['alias'] = 'None' -// CODE GENERATOR: testMenuGlobalArgsDict['pgaGain']['argtype'] = 'uint8_t' -// CODE GENERATOR: testMenuGlobalArgsDict['pgaGain']['usedByCommandName'] = 'None' -// CODE GENERATOR: testMenuGlobalArgsDict['pgaGain']['usedBytestMenuItemName'] = 'None' +// CODE GENERATOR: testMenuGlobalArgsDict add global property g_MAX11043_device.config +// CODE GENERATOR: testMenuGlobalArgsDict add global property g_MAX11043_device.config shadow of argname = config +// CODE GENERATOR: testMenuGlobalArgsDict add global property g_MAX11043_device.config argname = config +// CODE GENERATOR: testMenuGlobalArgsDict['config']['alias'] = 'None' +// CODE GENERATOR: testMenuGlobalArgsDict['config']['argtype'] = 'uint16_t' +// CODE GENERATOR: testMenuGlobalArgsDict['config']['usedByCommandName'] = 'None' +// CODE GENERATOR: testMenuGlobalArgsDict['config']['usedBytestMenuItemName'] = 'None' // CODE GENERATOR: testMenuGlobalArgsDict add global property g_MAX11043_device.status // CODE GENERATOR: testMenuGlobalArgsDict add global property g_MAX11043_device.status shadow of argname = status @@ -142,19 +167,45 @@ // CODE GENERATOR: testMenuGlobalArgsDict['status']['usedByCommandName'] = 'None' // CODE GENERATOR: testMenuGlobalArgsDict['status']['usedBytestMenuItemName'] = 'None' -// CODE GENERATOR: testMenuGlobalArgsDict add global property g_MAX11043_device.data0 -// CODE GENERATOR: testMenuGlobalArgsDict add global property g_MAX11043_device.data0 shadow of argname = data0 -// CODE GENERATOR: testMenuGlobalArgsDict add global property g_MAX11043_device.data0 argname = data0 -// CODE GENERATOR: testMenuGlobalArgsDict['data0']['alias'] = 'None' -// CODE GENERATOR: testMenuGlobalArgsDict['data0']['argtype'] = 'uint32_t' -// CODE GENERATOR: testMenuGlobalArgsDict['data0']['usedByCommandName'] = 'None' -// CODE GENERATOR: testMenuGlobalArgsDict['data0']['usedBytestMenuItemName'] = 'None' +// CODE GENERATOR: testMenuGlobalArgsDict add global property g_MAX11043_device.adca +// CODE GENERATOR: testMenuGlobalArgsDict add global property g_MAX11043_device.adca shadow of argname = ADCa +// CODE GENERATOR: testMenuGlobalArgsDict add global property g_MAX11043_device.adca argname = ADCa +// CODE GENERATOR: testMenuGlobalArgsDict['ADCa']['alias'] = 'None' +// CODE GENERATOR: testMenuGlobalArgsDict['ADCa']['argtype'] = 'uint32_t' +// CODE GENERATOR: testMenuGlobalArgsDict['ADCa']['usedByCommandName'] = 'None' +// CODE GENERATOR: testMenuGlobalArgsDict['ADCa']['usedBytestMenuItemName'] = 'None' + +// CODE GENERATOR: testMenuGlobalArgsDict add global property g_MAX11043_device.adcb +// CODE GENERATOR: testMenuGlobalArgsDict add global property g_MAX11043_device.adcb shadow of argname = ADCb +// CODE GENERATOR: testMenuGlobalArgsDict add global property g_MAX11043_device.adcb argname = ADCb +// CODE GENERATOR: testMenuGlobalArgsDict['ADCb']['alias'] = 'None' +// CODE GENERATOR: testMenuGlobalArgsDict['ADCb']['argtype'] = 'uint32_t' +// CODE GENERATOR: testMenuGlobalArgsDict['ADCb']['usedByCommandName'] = 'None' +// CODE GENERATOR: testMenuGlobalArgsDict['ADCb']['usedBytestMenuItemName'] = 'None' -// CODE GENERATOR: testMenuGlobalArgsDict skip array property g_MAX11043_device.AINcode[11] +// CODE GENERATOR: testMenuGlobalArgsDict add global property g_MAX11043_device.adcc +// CODE GENERATOR: testMenuGlobalArgsDict add global property g_MAX11043_device.adcc shadow of argname = ADCc +// CODE GENERATOR: testMenuGlobalArgsDict add global property g_MAX11043_device.adcc argname = ADCc +// CODE GENERATOR: testMenuGlobalArgsDict['ADCc']['alias'] = 'None' +// CODE GENERATOR: testMenuGlobalArgsDict['ADCc']['argtype'] = 'uint32_t' +// CODE GENERATOR: testMenuGlobalArgsDict['ADCc']['usedByCommandName'] = 'None' +// CODE GENERATOR: testMenuGlobalArgsDict['ADCc']['usedBytestMenuItemName'] = 'None' + +// CODE GENERATOR: testMenuGlobalArgsDict add global property g_MAX11043_device.adcd +// CODE GENERATOR: testMenuGlobalArgsDict add global property g_MAX11043_device.adcd shadow of argname = ADCd +// CODE GENERATOR: testMenuGlobalArgsDict add global property g_MAX11043_device.adcd argname = ADCd +// CODE GENERATOR: testMenuGlobalArgsDict['ADCd']['alias'] = 'None' +// CODE GENERATOR: testMenuGlobalArgsDict['ADCd']['argtype'] = 'uint32_t' +// CODE GENERATOR: testMenuGlobalArgsDict['ADCd']['usedByCommandName'] = 'None' +// CODE GENERATOR: testMenuGlobalArgsDict['ADCd']['usedBytestMenuItemName'] = 'None' + // CODE GENERATOR: scan testMenuCommand list for items that can be shortened to single character +// CODE GENERATOR: multiple commands begin with character 'X' // CODE GENERATOR: shorten testMenuCommand to single character if unambiguous // CODE GENERATOR: testMenuCommand '!' already single character +// CODE GENERATOR: cannot shorten testMenuCommand 'XX' to single character due to duplicates +// CODE GENERATOR: cannot shorten testMenuCommand 'XY' to single character due to duplicates // CODE GENERATOR: help menu bool MAX11043_menu_help(CmdLine & cmdLine) @@ -162,6 +213,12 @@ // CODE GENERATOR: command: ! // CODE GENERATOR: help: ! -- Init cmdLine.serial().printf("\r\n ! -- Init"); + // CODE GENERATOR: command: XX + // CODE GENERATOR: help: XX linef=? rate=? -- Configure_XXXXX + cmdLine.serial().printf("\r\n XX linef=? rate=? -- Configure_XXXXX"); + // CODE GENERATOR: command: XY + // CODE GENERATOR: help: XY linef=? rate=? -- Configure_XXXXY + cmdLine.serial().printf("\r\n XY linef=? rate=? -- Configure_XXXXY"); // cmdLine.serial().printf("\r\n @ -- print MAX11043 configuration"); @@ -258,48 +315,70 @@ // CODE GENERATOR: testMenuGlobalArgsDict Consolidate common/global argument parsing -// CODE GENERATOR: testMenuGlobalArgsDict['VRef_xxxxxx']['alias'] = 'None' -// CODE GENERATOR: testMenuGlobalArgsDict['VRef_xxxxxx']['argtype'] = 'double' -// CODE GENERATOR: testMenuGlobalArgsDict['VRef_xxxxxx']['usedByCommandName'] = 'None' -// CODE GENERATOR: testMenuGlobalArgsDict['VRef_xxxxxx']['usedBytestMenuItemName'] = 'None' - // parse argument double VRef_xxxxxx - double VRef_xxxxxx = g_MAX11043_device.VRef_xxxxxx; // default to global property value - if (cmdLine.parse_double("VRef_xxxxxx", VRef_xxxxxx)) +// CODE GENERATOR: testMenuGlobalArgsDict['ADCa']['alias'] = 'None' +// CODE GENERATOR: testMenuGlobalArgsDict['ADCa']['argtype'] = 'uint32_t' +// CODE GENERATOR: testMenuGlobalArgsDict['ADCa']['usedByCommandName'] = 'None' +// CODE GENERATOR: testMenuGlobalArgsDict['ADCa']['usedBytestMenuItemName'] = 'None' + // parse argument uint32_t ADCa + uint32_t ADCa = 0; // ~~~ g_MAX11043_device.__WARNING_no_match_for_argname_ADCa_in_MAX11043_device_t__; // default to global property value + if (cmdLine.parse_uint32_dec("ADCa", ADCa)) { - g_MAX11043_device.VRef_xxxxxx = VRef_xxxxxx; // update global property value + // g_MAX11043_device.__WARNING_no_match_for_argname_ADCa_in_MAX11043_device_t__ = ADCa; // update global property value + } + +// CODE GENERATOR: testMenuGlobalArgsDict['ADCb']['alias'] = 'None' +// CODE GENERATOR: testMenuGlobalArgsDict['ADCb']['argtype'] = 'uint32_t' +// CODE GENERATOR: testMenuGlobalArgsDict['ADCb']['usedByCommandName'] = 'None' +// CODE GENERATOR: testMenuGlobalArgsDict['ADCb']['usedBytestMenuItemName'] = 'None' + // parse argument uint32_t ADCb + uint32_t ADCb = 0; // ~~~ g_MAX11043_device.__WARNING_no_match_for_argname_ADCb_in_MAX11043_device_t__; // default to global property value + if (cmdLine.parse_uint32_dec("ADCb", ADCb)) + { + // g_MAX11043_device.__WARNING_no_match_for_argname_ADCb_in_MAX11043_device_t__ = ADCb; // update global property value } -// CODE GENERATOR: testMenuGlobalArgsDict['ctrl']['alias'] = 'None' -// CODE GENERATOR: testMenuGlobalArgsDict['ctrl']['argtype'] = 'uint32_t' -// CODE GENERATOR: testMenuGlobalArgsDict['ctrl']['usedByCommandName'] = 'None' -// CODE GENERATOR: testMenuGlobalArgsDict['ctrl']['usedBytestMenuItemName'] = 'None' - // parse argument uint32_t ctrl - uint32_t ctrl = g_MAX11043_device.ctrl; // default to global property value - if (cmdLine.parse_uint32_dec("ctrl", ctrl)) +// CODE GENERATOR: testMenuGlobalArgsDict['ADCc']['alias'] = 'None' +// CODE GENERATOR: testMenuGlobalArgsDict['ADCc']['argtype'] = 'uint32_t' +// CODE GENERATOR: testMenuGlobalArgsDict['ADCc']['usedByCommandName'] = 'None' +// CODE GENERATOR: testMenuGlobalArgsDict['ADCc']['usedBytestMenuItemName'] = 'None' + // parse argument uint32_t ADCc + uint32_t ADCc = 0; // ~~~ g_MAX11043_device.__WARNING_no_match_for_argname_ADCc_in_MAX11043_device_t__; // default to global property value + if (cmdLine.parse_uint32_dec("ADCc", ADCc)) { - g_MAX11043_device.ctrl = ctrl; // update global property value + // g_MAX11043_device.__WARNING_no_match_for_argname_ADCc_in_MAX11043_device_t__ = ADCc; // update global property value } -// CODE GENERATOR: testMenuGlobalArgsDict['data0']['alias'] = 'None' -// CODE GENERATOR: testMenuGlobalArgsDict['data0']['argtype'] = 'uint32_t' -// CODE GENERATOR: testMenuGlobalArgsDict['data0']['usedByCommandName'] = 'None' -// CODE GENERATOR: testMenuGlobalArgsDict['data0']['usedBytestMenuItemName'] = 'None' - // parse argument uint32_t data0 - uint32_t data0 = g_MAX11043_device.data0; // default to global property value - if (cmdLine.parse_uint32_dec("data0", data0)) +// CODE GENERATOR: testMenuGlobalArgsDict['ADCd']['alias'] = 'None' +// CODE GENERATOR: testMenuGlobalArgsDict['ADCd']['argtype'] = 'uint32_t' +// CODE GENERATOR: testMenuGlobalArgsDict['ADCd']['usedByCommandName'] = 'None' +// CODE GENERATOR: testMenuGlobalArgsDict['ADCd']['usedBytestMenuItemName'] = 'None' + // parse argument uint32_t ADCd + uint32_t ADCd = 0; // ~~~ g_MAX11043_device.__WARNING_no_match_for_argname_ADCd_in_MAX11043_device_t__; // default to global property value + if (cmdLine.parse_uint32_dec("ADCd", ADCd)) { - g_MAX11043_device.data0 = data0; // update global property value + // g_MAX11043_device.__WARNING_no_match_for_argname_ADCd_in_MAX11043_device_t__ = ADCd; // update global property value } -// CODE GENERATOR: testMenuGlobalArgsDict['pgaGain']['alias'] = 'None' -// CODE GENERATOR: testMenuGlobalArgsDict['pgaGain']['argtype'] = 'uint8_t' -// CODE GENERATOR: testMenuGlobalArgsDict['pgaGain']['usedByCommandName'] = 'None' -// CODE GENERATOR: testMenuGlobalArgsDict['pgaGain']['usedBytestMenuItemName'] = 'None' - // parse argument uint8_t pgaGain - uint8_t pgaGain = g_MAX11043_device.pgaGain; // default to global property value - if (cmdLine.parse_uint8_dec("pgaGain", pgaGain)) +// CODE GENERATOR: testMenuGlobalArgsDict['VRef']['alias'] = 'None' +// CODE GENERATOR: testMenuGlobalArgsDict['VRef']['argtype'] = 'double' +// CODE GENERATOR: testMenuGlobalArgsDict['VRef']['usedByCommandName'] = 'None' +// CODE GENERATOR: testMenuGlobalArgsDict['VRef']['usedBytestMenuItemName'] = 'None' + // parse argument double VRef + double VRef = g_MAX11043_device.VRef; // default to global property value + if (cmdLine.parse_double("VRef", VRef)) { - g_MAX11043_device.pgaGain = pgaGain; // update global property value + g_MAX11043_device.VRef = VRef; // update global property value + } + +// CODE GENERATOR: testMenuGlobalArgsDict['config']['alias'] = 'None' +// CODE GENERATOR: testMenuGlobalArgsDict['config']['argtype'] = 'uint16_t' +// CODE GENERATOR: testMenuGlobalArgsDict['config']['usedByCommandName'] = 'None' +// CODE GENERATOR: testMenuGlobalArgsDict['config']['usedBytestMenuItemName'] = 'None' + // parse argument uint16_t config + uint16_t config = g_MAX11043_device.config; // default to global property value + if (cmdLine.parse_uint16_dec("config", config)) + { + g_MAX11043_device.config = config; // update global property value } // CODE GENERATOR: testMenuGlobalArgsDict['status']['alias'] = 'None' @@ -356,10 +435,10 @@ // read "all" registers by name // TODO: KLUDGE: this constant array should live in the device driver, not the menu const MAX11043::MAX11043_CMD_enum_t readAllStatusList[] = { - MAX11043::CMD_0000_0010_d24_Rd00_ADCa, - MAX11043::CMD_0000_0110_d24_Rd01_ADCb, - MAX11043::CMD_0000_1010_d24_Rd02_ADCc, - MAX11043::CMD_0000_1110_d24_Rd03_ADCd, + MAX11043::CMD_0000_0010_d16o8_Rd00_ADCa, + MAX11043::CMD_0000_0110_d16o8_Rd01_ADCb, + MAX11043::CMD_0000_1010_d16o8_Rd02_ADCc, + MAX11043::CMD_0000_1110_d16o8_Rd03_ADCd, MAX11043::CMD_0001_1110_d8_Rd07_Status, MAX11043::CMD_0010_0010_d16_Rd08_Configuration, MAX11043::CMD_0010_0110_d16_Rd09_DAC, @@ -391,26 +470,27 @@ // CODE GENERATOR: generate @ command print global property values of g_MAX11043_device case '@': { -// CODE GENERATOR: @ command print double g_MAX11043_device.VRef_xxxxxx - cmdLine.serial().printf("VRef_xxxxxx = "); - cmdLine.serial().printf("%f\r\n", g_MAX11043_device.VRef_xxxxxx); -// CODE GENERATOR: @ command print uint32_t g_MAX11043_device.ctrl - cmdLine.serial().printf("ctrl = "); - cmdLine.serial().printf("%d = 0x%8.8x\r\n", g_MAX11043_device.ctrl, g_MAX11043_device.ctrl); -// CODE GENERATOR: @ command print uint8_t g_MAX11043_device.pgaGain - cmdLine.serial().printf("pgaGain = "); - cmdLine.serial().printf("%d = 0x%2.2x\r\n", g_MAX11043_device.pgaGain, g_MAX11043_device.pgaGain); +// CODE GENERATOR: @ command print double g_MAX11043_device.VRef + cmdLine.serial().printf("VRef = "); + cmdLine.serial().printf("%f\r\n", g_MAX11043_device.VRef); +// CODE GENERATOR: @ command print uint16_t g_MAX11043_device.config + cmdLine.serial().printf("config = "); + cmdLine.serial().printf("%d = 0x%4.4x\r\n", g_MAX11043_device.config, g_MAX11043_device.config); // CODE GENERATOR: @ command print uint32_t g_MAX11043_device.status cmdLine.serial().printf("status = "); cmdLine.serial().printf("%d = 0x%8.8x\r\n", g_MAX11043_device.status, g_MAX11043_device.status); -// CODE GENERATOR: @ command print uint32_t g_MAX11043_device.data0 - cmdLine.serial().printf("data0 = "); - cmdLine.serial().printf("%d = 0x%8.8x\r\n", g_MAX11043_device.data0, g_MAX11043_device.data0); -// CODE GENERATOR: @ command print uint32_t array g_MAX11043_device.AINcode[0..10] - for(int index = 0; (index < 11) && (index < 16); index++) { - cmdLine.serial().printf("AINcode[%d] = ", index); - cmdLine.serial().printf("%d = 0x%8.8x\r\n", g_MAX11043_device.AINcode[index], g_MAX11043_device.AINcode[index]); - } +// CODE GENERATOR: @ command print uint32_t g_MAX11043_device.adca + cmdLine.serial().printf("adca = "); + cmdLine.serial().printf("%d = 0x%8.8x\r\n", g_MAX11043_device.adca, g_MAX11043_device.adca); +// CODE GENERATOR: @ command print uint32_t g_MAX11043_device.adcb + cmdLine.serial().printf("adcb = "); + cmdLine.serial().printf("%d = 0x%8.8x\r\n", g_MAX11043_device.adcb, g_MAX11043_device.adcb); +// CODE GENERATOR: @ command print uint32_t g_MAX11043_device.adcc + cmdLine.serial().printf("adcc = "); + cmdLine.serial().printf("%d = 0x%8.8x\r\n", g_MAX11043_device.adcc, g_MAX11043_device.adcc); +// CODE GENERATOR: @ command print uint32_t g_MAX11043_device.adcd + cmdLine.serial().printf("adcd = "); + cmdLine.serial().printf("%d = 0x%8.8x\r\n", g_MAX11043_device.adcd, g_MAX11043_device.adcd); return true; // command handled by MAX11043 break; } @@ -578,6 +658,118 @@ } // end case '!' break; +// CODE GENERATOR: top of loop: testMenuCommand="XX", testMenuFirstCharHandler="None" +// CODE GENERATOR: test menu case 'XX': +// CODE GENERATOR: helpString 'XX linef=? rate=? -- Configure_XXXXX' +// CODE GENERATOR: CMD_ 'None' +// CODE GENERATOR: CommandName 'Configure_XXXXX' +// CODE GENERATOR: CommandParamIn 'uint8_t linef, uint8_t rate' +// CODE GENERATOR: CommandReturnType 'uint8_t' +// CODE GENERATOR: CommandPre '' +// CODE GENERATOR: CommandDocParamIn '' +// CODE GENERATOR: CommandDocParamOut '' +// CODE GENERATOR: CommandPost '' +// CODE GENERATOR: CommandReturn '@return 1 on success; 0 on failure' + case 'X': // (multiple characters) (testMenuFirstCharHandler="X"): + { + switch (cmdLine[1]) + { + case 'X': // (nested inside case 'X') + { + // test menu command 'XX' handler: + // helpString='XX linef=? rate=? -- Configure_XXXXX' + // CMD_='None' + // CommandName='Configure_XXXXX' + // CommandParamIn='uint8_t linef, uint8_t rate' + // CommandReturnType='uint8_t' + // @Pre='' + // @Param[in]='' + // @Param[out]='' + // @Post='' + // displayPost='' + // @Return='@return 1 on success; 0 on failure' + // parse argument list + // parse argument uint8_t linef + uint8_t linef = 0; // --- g_MAX11043_device.__WARNING_no_match_for_argname_linef_in_MAX11043_device_t__; // default to global property value + if (cmdLine.parse_uint8_dec("linef", linef)) + { + // g_MAX11043_device.__WARNING_no_match_for_argname_linef_in_MAX11043_device_t__ = linef; // update global property value + } + // parse argument uint8_t rate + uint8_t rate = 0; // --- g_MAX11043_device.__WARNING_no_match_for_argname_rate_in_MAX11043_device_t__; // default to global property value + if (cmdLine.parse_uint8_dec("rate", rate)) + { + // g_MAX11043_device.__WARNING_no_match_for_argname_rate_in_MAX11043_device_t__ = rate; // update global property value + } + // print arguments + cmdLine.serial().printf("Configure_XXXXX"); + cmdLine.serial().printf(" linef=%d", linef); + cmdLine.serial().printf(" rate=%d", rate); + cmdLine.serial().printf("\r\n"); + // call function Configure_XXXXX(linef, rate) + uint8_t result = g_MAX11043_device.Configure_XXXXX(linef, rate); + cmdLine.serial().printf(" =%d\r\n", result); + return true; // command handled by MAX11043 +// CODE GENERATOR: bottom of loop: testMenuCommand="XX", testMenuFirstCharHandler="X" + } // end nested case 'XX' + break; + +// CODE GENERATOR: top of loop: testMenuCommand="XY", testMenuFirstCharHandler="X" +// CODE GENERATOR: top of loop: nested switch "X" is currently open +// CODE GENERATOR: test menu case 'XY': +// CODE GENERATOR: helpString 'XY linef=? rate=? -- Configure_XXXXY' +// CODE GENERATOR: CMD_ 'None' +// CODE GENERATOR: CommandName 'Configure_XXXXY' +// CODE GENERATOR: CommandParamIn 'uint8_t linef, uint8_t rate' +// CODE GENERATOR: CommandReturnType 'uint8_t' +// CODE GENERATOR: CommandPre '' +// CODE GENERATOR: CommandDocParamIn '' +// CODE GENERATOR: CommandDocParamOut '' +// CODE GENERATOR: CommandPost '' +// CODE GENERATOR: CommandReturn '@return 1 on success; 0 on failure' + case 'Y': // (nested inside case 'X') + { + // test menu command 'XY' handler: + // helpString='XY linef=? rate=? -- Configure_XXXXY' + // CMD_='None' + // CommandName='Configure_XXXXY' + // CommandParamIn='uint8_t linef, uint8_t rate' + // CommandReturnType='uint8_t' + // @Pre='' + // @Param[in]='' + // @Param[out]='' + // @Post='' + // displayPost='' + // @Return='@return 1 on success; 0 on failure' + // parse argument list + // parse argument uint8_t linef + uint8_t linef = 0; // --- g_MAX11043_device.__WARNING_no_match_for_argname_linef_in_MAX11043_device_t__; // default to global property value + if (cmdLine.parse_uint8_dec("linef", linef)) + { + // g_MAX11043_device.__WARNING_no_match_for_argname_linef_in_MAX11043_device_t__ = linef; // update global property value + } + // parse argument uint8_t rate + uint8_t rate = 0; // --- g_MAX11043_device.__WARNING_no_match_for_argname_rate_in_MAX11043_device_t__; // default to global property value + if (cmdLine.parse_uint8_dec("rate", rate)) + { + // g_MAX11043_device.__WARNING_no_match_for_argname_rate_in_MAX11043_device_t__ = rate; // update global property value + } + // print arguments + cmdLine.serial().printf("Configure_XXXXY"); + cmdLine.serial().printf(" linef=%d", linef); + cmdLine.serial().printf(" rate=%d", rate); + cmdLine.serial().printf("\r\n"); + // call function Configure_XXXXY(linef, rate) + uint8_t result = g_MAX11043_device.Configure_XXXXY(linef, rate); + cmdLine.serial().printf(" =%d\r\n", result); + return true; // command handled by MAX11043 +// CODE GENERATOR: bottom of loop: testMenuCommand="XY", testMenuFirstCharHandler="X" + } // end nested case 'XY' + break; + + } // end nested switch (cmdLine[1]) inside case 'X' + break; + } // end case 'X' // has_register_write_command: case '0'..'9','A'..'F','a'..'f' letters are reserved for bitstream commands case '0': case '1': case '2': case '3': case '4': case '5': case '6': case '7': case '8': case '9':