fix expander as output (works now on 9535)

This commit is contained in:
Philippe G
2021-12-01 14:28:32 -08:00
parent 559f4ce69f
commit c0f5ca1e10
3 changed files with 9 additions and 9 deletions

View File

@@ -181,9 +181,9 @@ bool led_config(int idx, gpio_num_t gpio, int onstate, int pwm) {
leds[idx].onstate = onstate;
leds[idx].pwm = -1;
if (pwm < 0) {
gpio_pad_select_gpio(gpio);
gpio_set_direction(gpio, GPIO_MODE_OUTPUT);
if (pwm < 0 || gpio >= GPIO_NUM_MAX) {
if (gpio < GPIO_NUM_MAX) gpio_pad_select_gpio(gpio);
gpio_set_direction_u(gpio, GPIO_MODE_OUTPUT);
} else {
leds[idx].channel = pwm_system.base_channel++;
leds[idx].pwm = pwm_system.max * powf(pwm / 100.0, 3);

View File

@@ -43,12 +43,12 @@ void set_power_gpio(int gpio, char *value) {
bool parsed = true;
if (!strcasecmp(value, "vcc") ) {
gpio_pad_select_gpio(gpio);
gpio_set_direction(gpio, GPIO_MODE_OUTPUT);
if (gpio < GPIO_NUM_MAX) gpio_pad_select_gpio(gpio);
gpio_set_direction_u(gpio, GPIO_MODE_OUTPUT);
gpio_set_level_u(gpio, 1);
} else if (!strcasecmp(value, "gnd")) {
gpio_pad_select_gpio(gpio);
gpio_set_direction(gpio, GPIO_MODE_OUTPUT);
if (gpio < GPIO_NUM_MAX) gpio_pad_select_gpio(gpio);
gpio_set_direction_u(gpio, GPIO_MODE_OUTPUT);
gpio_set_level_u(gpio, 0);
} else parsed = false;

View File

@@ -178,8 +178,8 @@ static void set_amp_gpio(int gpio, char *value) {
amp_control.gpio = gpio;
if ((p = strchr(value, ':')) != NULL) amp_control.active = atoi(p + 1);
gpio_pad_select_gpio(amp_control.gpio);
gpio_set_direction(amp_control.gpio, GPIO_MODE_OUTPUT);
if (amp_control.gpio < GPIO_NUM_MAX) gpio_pad_select_gpio(amp_control.gpio);
gpio_set_direction_u(amp_control.gpio, GPIO_MODE_OUTPUT);
gpio_set_level_u(amp_control.gpio, !amp_control.active);
LOG_INFO("setting amplifier GPIO %d (active:%d)", amp_control.gpio, amp_control.active);