diff options
| author | Scott Shawcroft <scott.shawcroft@gmail.com> | 2017-06-16 13:47:01 -0700 |
|---|---|---|
| committer | Scott Shawcroft <scott.shawcroft@gmail.com> | 2017-06-16 13:47:01 -0700 |
| commit | c7efd2cae963b4db7e8b589cf20207ef7639b303 (patch) | |
| tree | 3a9c96fb277260101f3cffb098b03c6cc9633297 /atmel-samd | |
| parent | 58ab5844cb66a46b61526bf5f0cd95ba50e117a0 (diff) | |
shared-bindings: Move enum-like classes out of DigitalInOut into digitalio.
Also, rename Direction.IN to Direction.INPUT and Direction.OUT to Direction.OUTPUT.
This simplifies using them. Prior to the nativeio split this would have led to
clutter in the top-level namespace but having digitalio prevents this.
Fixes #152
Diffstat (limited to 'atmel-samd')
| -rw-r--r-- | atmel-samd/Makefile | 18 | ||||
| -rw-r--r-- | atmel-samd/common-hal/digitalio/DigitalInOut.c | 16 |
2 files changed, 21 insertions, 13 deletions
diff --git a/atmel-samd/Makefile b/atmel-samd/Makefile index 92b1e305b..e7de4aede 100644 --- a/atmel-samd/Makefile +++ b/atmel-samd/Makefile @@ -230,7 +230,7 @@ STM_SRC_C = $(addprefix stmhal/,\ pybstdio.c \ ) -SRC_BINDINGS = \ +SRC_COMMON_HAL = \ board/__init__.c \ microcontroller/__init__.c \ microcontroller/Pin.c \ @@ -256,8 +256,16 @@ SRC_BINDINGS = \ usb_hid/__init__.c \ usb_hid/Device.c -SRC_BINDINGS_EXPANDED = $(addprefix shared-bindings/, $(SRC_BINDINGS)) \ - $(addprefix common-hal/, $(SRC_BINDINGS)) +# These don't have corresponding files in each port but are still located in +# shared-bindings to make it clear what the contents of the modules are. +SRC_BINDINGS_ENUMS = \ + digitalio/Direction.c \ + digitalio/DriveMode.c \ + digitalio/Pull.c + +SRC_COMMON_HAL_EXPANDED = $(addprefix shared-bindings/, $(SRC_COMMON_HAL)) \ + $(addprefix shared-bindings/, $(SRC_BINDINGS_ENUMS)) \ + $(addprefix common-hal/, $(SRC_COMMON_HAL)) SRC_SHARED_MODULE = \ help.c \ @@ -274,10 +282,10 @@ SRC_SHARED_MODULE_EXPANDED = $(addprefix shared-bindings/, $(SRC_SHARED_MODULE)) OBJ = $(PY_O) $(addprefix $(BUILD)/, $(SRC_C:.c=.o)) OBJ += $(addprefix $(BUILD)/, $(SRC_ASF:.c=.o)) OBJ += $(addprefix $(BUILD)/, $(STM_SRC_C:.c=.o)) -OBJ += $(addprefix $(BUILD)/, $(SRC_BINDINGS_EXPANDED:.c=.o)) +OBJ += $(addprefix $(BUILD)/, $(SRC_COMMON_HAL_EXPANDED:.c=.o)) OBJ += $(addprefix $(BUILD)/, $(SRC_SHARED_MODULE_EXPANDED:.c=.o)) -SRC_QSTR += $(SRC_C) $(SRC_BINDINGS_EXPANDED) $(SRC_SHARED_MODULE_EXPANDED) $(STM_SRC_C) +SRC_QSTR += $(SRC_C) $(SRC_COMMON_HAL_EXPANDED) $(SRC_SHARED_MODULE_EXPANDED) $(STM_SRC_C) all: $(BUILD)/firmware.bin $(BUILD)/firmware.uf2 diff --git a/atmel-samd/common-hal/digitalio/DigitalInOut.c b/atmel-samd/common-hal/digitalio/DigitalInOut.c index 9e69288f4..3c355511d 100644 --- a/atmel-samd/common-hal/digitalio/DigitalInOut.c +++ b/atmel-samd/common-hal/digitalio/DigitalInOut.c @@ -56,7 +56,7 @@ void common_hal_digitalio_digitalinout_deinit(digitalio_digitalinout_obj_t* self } void common_hal_digitalio_digitalinout_switch_to_input( - digitalio_digitalinout_obj_t* self, enum digitalinout_pull_t pull) { + digitalio_digitalinout_obj_t* self, enum digitalio_pull_t pull) { self->output = false; common_hal_digitalio_digitalinout_set_pull(self, pull); @@ -64,7 +64,7 @@ void common_hal_digitalio_digitalinout_switch_to_input( void common_hal_digitalio_digitalinout_switch_to_output( digitalio_digitalinout_obj_t* self, bool value, - enum digitalinout_drive_mode_t drive_mode) { + enum digitalio_drive_mode_t drive_mode) { struct port_config pin_conf; port_get_config_defaults(&pin_conf); @@ -77,9 +77,9 @@ void common_hal_digitalio_digitalinout_switch_to_output( common_hal_digitalio_digitalinout_set_value(self, value); } -enum digitalinout_direction_t common_hal_digitalio_digitalinout_get_direction( +enum digitalio_direction_t common_hal_digitalio_digitalinout_get_direction( digitalio_digitalinout_obj_t* self) { - return self->output? DIRECTION_OUT : DIRECTION_IN; + return self->output? DIRECTION_OUTPUT : DIRECTION_INPUT; } void common_hal_digitalio_digitalinout_set_value( @@ -120,7 +120,7 @@ bool common_hal_digitalio_digitalinout_get_value( void common_hal_digitalio_digitalinout_set_drive_mode( digitalio_digitalinout_obj_t* self, - enum digitalinout_drive_mode_t drive_mode) { + enum digitalio_drive_mode_t drive_mode) { bool value = common_hal_digitalio_digitalinout_get_value(self); self->open_drain = drive_mode == DRIVE_MODE_OPEN_DRAIN; // True is implemented differently between modes so reset the value to make @@ -130,7 +130,7 @@ void common_hal_digitalio_digitalinout_set_drive_mode( } } -enum digitalinout_drive_mode_t common_hal_digitalio_digitalinout_get_drive_mode( +enum digitalio_drive_mode_t common_hal_digitalio_digitalinout_get_drive_mode( digitalio_digitalinout_obj_t* self) { if (self->open_drain) { return DRIVE_MODE_OPEN_DRAIN; @@ -140,7 +140,7 @@ enum digitalinout_drive_mode_t common_hal_digitalio_digitalinout_get_drive_mode( } void common_hal_digitalio_digitalinout_set_pull( - digitalio_digitalinout_obj_t* self, enum digitalinout_pull_t pull) { + digitalio_digitalinout_obj_t* self, enum digitalio_pull_t pull) { enum port_pin_pull asf_pull = PORT_PIN_PULL_NONE; switch (pull) { case PULL_UP: @@ -161,7 +161,7 @@ void common_hal_digitalio_digitalinout_set_pull( port_pin_set_config(self->pin->pin, &pin_conf); } -enum digitalinout_pull_t common_hal_digitalio_digitalinout_get_pull( +enum digitalio_pull_t common_hal_digitalio_digitalinout_get_pull( digitalio_digitalinout_obj_t* self) { uint32_t pin = self->pin->pin; PortGroup *const port_base = port_get_group_from_gpio_pin(pin); |
