/* * https://ciapini.wiki.esiliati.org/index.php/Armando47/ArPhyCLI */ #include #include "../../mini-printf.h" #include "../phy.h" #include "arphy.h" #include "arphy_cli.h" #include "arphy_fec.h" #include "arphy_interleaver.h" /* uint8_t arphy_cli_print_frame(net_packet net_pck, arnet_packet arnet_pck, uint8_t *Buffer) { uint8_t q = 0; return q; } */ uint8_t arphy_cli_print_state(uint8_t *Buffer) { uint8_t q = 0; q += mini_snprintf((char*) (&Buffer[q]), 24, "%c%c%u%c%c%c%u", ARPHY_CLI_FEC_TYPE, ARPHY_CLI_KV_SEPARATOR, fec.type, ARPHY_CLI_ELEMENT_SEPARATOR, ARPHY_CLI_INTERLEAVER_TYPE, ARPHY_CLI_KV_SEPARATOR, interleaver.type); return q; } // assegna uint8_t arphy_cli_exec(uint8_t name, uint32_t value) { uint8_t err = ARPHY_CLI_ERR_OK; if (name == ARPHY_CLI_FEC_TYPE) { if (value <= ARPHY_FEC_TYPE_MAX) fec.type = value; else { err = ARPHY_CLI_ERR_INVALID_VALUE; } } else if (name == ARPHY_CLI_INTERLEAVER_TYPE) { if (value <= ARPHY_INTERLEAVER_TYPE_MAX) interleaver.type = value; else { err = ARPHY_CLI_ERR_INVALID_VALUE; } } else { err = ARPHY_CLI_ERR_INVALID_NAME; } return err; }