8000 Merge pull request #1006 from dhalbert/3.x-fix-pull · sparkfun/circuitpython@85a5276 · GitHub
[go: up one dir, main page]

Skip to content

Commit 85a5276

Browse files
authored
Merge pull request adafruit#1006 from dhalbert/3.x-fix-pull
must set pull after setting direction with gpio_set_pin routines
2 parents fba2d9f + 8bb363f commit 85a5276

File tree

1 file changed

+4
-3
lines changed

1 file changed

+4
-3
lines changed

ports/atmel-samd/common-hal/digitalio/DigitalInOut.c

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -40,8 +40,9 @@ digitalinout_result_t common_hal_digitalio_digitalinout_construct(
4040
claim_pin(pin);
4141
self->pin = pin;
4242

43-
gpio_set_pin_pull_mode(pin->pin, GPIO_PULL_OFF);
43+
// Must set pull after setting direction.
4444
gpio_set_pin_direction(pin->pin, GPIO_DIRECTION_IN);
45+
gpio_set_pin_pull_mode(pin->pin, GPIO_PULL_OFF);
4546
return DIGITALINOUT_OK;
4647
}
4748

@@ -154,9 +155,9 @@ void common_hal_digitalio_digitalinout_set_pull(
154155
default:
155156
break;
156157
}
157-
// Set pull first to avoid glitches.
158-
gpio_set_pin_pull_mode(self->pin->pin, asf_pull);
158+
// Must set pull after setting direction.
159159
gpio_set_pin_direction(self->pin->pin, GPIO_DIRECTION_IN);
160+
gpio_set_pin_pull_mode(self->pin->pin, asf_pull);
160161
}
161162

162163
digitalio_pull_t common_hal_digitalio_digitalinout_get_pull(

0 commit comments

Comments
 (0)
0