BV I2C: use shared string buffer
This commit is contained in:
parent
56168c6c0c
commit
510d3c7193
|
@ -59,14 +59,13 @@ bool busvoodoo_i2c_embedded_pullup = true;
|
|||
static bool busvoodoo_i2c_setup(char** prefix, const char* line)
|
||||
{
|
||||
bool complete = false; // is the setup complete
|
||||
static char config[32] = {0}; // configuration string used as prefix
|
||||
if (NULL==line) { // first call
|
||||
busvoodoo_i2c_setting = BUSVOODOO_I2C_SETTING_NONE; // re-start configuration
|
||||
}
|
||||
switch (busvoodoo_i2c_setting) {
|
||||
case BUSVOODOO_I2C_SETTING_NONE:
|
||||
snprintf(config, LENGTH(config), "speed in kHz (1-400) [%u]", busvoodoo_i2c_speed);
|
||||
*prefix = config; // ask for speed
|
||||
snprintf(busvoodoo_global_string, LENGTH(busvoodoo_global_string), "speed in kHz (1-400) [%u]", busvoodoo_i2c_speed);
|
||||
*prefix = busvoodoo_global_string; // ask for speed
|
||||
busvoodoo_i2c_setting = BUSVOODOO_I2C_SETTING_SPEED;
|
||||
break;
|
||||
case BUSVOODOO_I2C_SETTING_SPEED:
|
||||
|
@ -80,8 +79,8 @@ static bool busvoodoo_i2c_setup(char** prefix, const char* line)
|
|||
}
|
||||
}
|
||||
if (BUSVOODOO_I2C_SETTING_ADDRESSBITS==busvoodoo_i2c_setting) { // if next setting
|
||||
snprintf(config, LENGTH(config), "address size in bits (7,10) [%u]", busvoodoo_i2c_addressbits); // prepare next setting
|
||||
*prefix = config; // display next setting
|
||||
snprintf(busvoodoo_global_string, LENGTH(busvoodoo_global_string), "address size in bits (7,10) [%u]", busvoodoo_i2c_addressbits); // prepare next setting
|
||||
*prefix = busvoodoo_global_string; // display next setting
|
||||
}
|
||||
break;
|
||||
case BUSVOODOO_I2C_SETTING_ADDRESSBITS:
|
||||
|
@ -97,8 +96,8 @@ static bool busvoodoo_i2c_setup(char** prefix, const char* line)
|
|||
if (BUSVOODOO_I2C_SETTING_PULLUP==busvoodoo_i2c_setting) { // if next setting
|
||||
printf("i) embedded\n");
|
||||
printf("e) external\n");
|
||||
snprintf(config, LENGTH(config), "pull-up resistors (i,e) [%c]", busvoodoo_i2c_embedded_pullup ? 'i' : 'e'); // prepare next setting
|
||||
*prefix = config; // display next setting
|
||||
snprintf(busvoodoo_global_string, LENGTH(busvoodoo_global_string), "pull-up resistors (i,e) [%c]", busvoodoo_i2c_embedded_pullup ? 'i' : 'e'); // prepare next setting
|
||||
*prefix = busvoodoo_global_string; // display next setting
|
||||
}
|
||||
break;
|
||||
case BUSVOODOO_I2C_SETTING_PULLUP:
|
||||
|
|
Loading…
Reference in New Issue