case 64: /*update_m7*/
{
size_t parsed_size = 0;
/* argv[0] - это "update_m7". Если argc > 1, значит передан размер */
if (argc > 1)
{
/* strtoul с базой 0 автоматически распознает "0x" для hex формата */
parsed_size = (size_t)strtoul(argv[1], NULL, 0);
if (parsed_size == 0)
{
printf("[MONITOR] Warning: Invalid size or 0 specified. Using default 1MB.\n");
}
}
else
{
printf("[MONITOR] No size specified. Using default 1MB.\n");
}
printf("%s(%d) Update M7\n", __FUNCTION__, __LINE__);
Board_TestM7Update(parsed_size);
}
break;