mirror of
https://github.com/avrdudes/avrdude.git
synced 2026-06-02 09:46:34 +03:00
Restructure -xvtarg handling for the stk500v1
This commit is contained in:
41
src/stk500.c
41
src/stk500.c
@@ -624,23 +624,32 @@ static int stk500_parseextparms(const PROGRAMMER *pgm, const LISTID extparms) {
|
||||
}
|
||||
|
||||
if(str_starts(extended_param, "vtarg")) {
|
||||
if((pgm->extra_features & HAS_VTARG_ADJ) && (str_starts(extended_param, "vtarg="))) {
|
||||
// Set target voltage
|
||||
double vtarg_set_val = -1; // Default = invlid value
|
||||
int sscanf_success = sscanf(extended_param, "vtarg=%lf", &vtarg_set_val);
|
||||
|
||||
my.vtarg_data = (double) ((int) (vtarg_set_val*100 + .5))/100;
|
||||
if(sscanf_success < 1 || vtarg_set_val < 0) {
|
||||
pmsg_error("invalid target voltage in -x %s\n", extended_param);
|
||||
rv = -1;
|
||||
break;
|
||||
}
|
||||
my.vtarg_set = true;
|
||||
continue;
|
||||
} else if((pgm->extra_features & HAS_VTARG_READ) && str_eq(extended_param, "vtarg")) {
|
||||
if(pgm->extra_features & HAS_VTARG_READ) {
|
||||
// Get target voltage
|
||||
my.vtarg_get = true;
|
||||
continue;
|
||||
if(str_eq(extended_param, "vtarg")) {
|
||||
my.vtarg_get = true;
|
||||
continue;
|
||||
}
|
||||
}
|
||||
|
||||
if(pgm->extra_features & HAS_VTARG_ADJ) {
|
||||
// Set target voltage
|
||||
if(str_starts(extended_param, "vtarg=")) {
|
||||
double vtarg_set_val = -1; // Default = invalid value
|
||||
int sscanf_success = sscanf(extended_param, "vtarg=%lf", &vtarg_set_val);
|
||||
|
||||
if(sscanf_success < 1 || vtarg_set_val < 0) {
|
||||
pmsg_error("invalid value in -x %s\n", extended_param);
|
||||
rv = -1;
|
||||
break;
|
||||
}
|
||||
my.vtarg_data = (double) ((int) (vtarg_set_val*100 + .5))/100;
|
||||
my.vtarg_set = true;
|
||||
continue;
|
||||
}
|
||||
pmsg_error("invalid setting in -x %s; use -x vtarg=<dbl>\n", extended_param);
|
||||
rv = -1;
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user