summaryrefslogtreecommitdiffstatshomepage
path: root/teensy
diff options
context:
space:
mode:
Diffstat (limited to 'teensy')
-rw-r--r--teensy/modpyb.c6
-rw-r--r--teensy/servo.h4
-rw-r--r--teensy/teensy_hal.h10
3 files changed, 11 insertions, 9 deletions
diff --git a/teensy/modpyb.c b/teensy/modpyb.c
index 0eb2a7b517..9f601e327b 100644
--- a/teensy/modpyb.c
+++ b/teensy/modpyb.c
@@ -272,9 +272,9 @@ STATIC mp_obj_t pyb_hid_send_report(mp_obj_t arg) {
}
STATIC MP_DEFINE_CONST_FUN_OBJ_1(pyb_hid_send_report_obj, pyb_hid_send_report);
-MP_DECLARE_CONST_FUN_OBJ(pyb_source_dir_obj); // defined in main.c
-MP_DECLARE_CONST_FUN_OBJ(pyb_main_obj); // defined in main.c
-MP_DECLARE_CONST_FUN_OBJ(pyb_usb_mode_obj); // defined in main.c
+MP_DECLARE_CONST_FUN_OBJ_1(pyb_source_dir_obj); // defined in main.c
+MP_DECLARE_CONST_FUN_OBJ_1(pyb_main_obj); // defined in main.c
+MP_DECLARE_CONST_FUN_OBJ_1(pyb_usb_mode_obj); // defined in main.c
STATIC const mp_map_elem_t pyb_module_globals_table[] = {
{ MP_OBJ_NEW_QSTR(MP_QSTR___name__), MP_OBJ_NEW_QSTR(MP_QSTR_pyb) },
diff --git a/teensy/servo.h b/teensy/servo.h
index 5dad041138..5f1c87b693 100644
--- a/teensy/servo.h
+++ b/teensy/servo.h
@@ -2,6 +2,6 @@ void servo_init(void);
extern const mp_obj_type_t pyb_servo_type;
-MP_DECLARE_CONST_FUN_OBJ(pyb_servo_set_obj);
-MP_DECLARE_CONST_FUN_OBJ(pyb_pwm_set_obj);
+MP_DECLARE_CONST_FUN_OBJ_2(pyb_servo_set_obj);
+MP_DECLARE_CONST_FUN_OBJ_2(pyb_pwm_set_obj);
diff --git a/teensy/teensy_hal.h b/teensy/teensy_hal.h
index b00b6e4ac6..80f320e0c5 100644
--- a/teensy/teensy_hal.h
+++ b/teensy/teensy_hal.h
@@ -118,7 +118,9 @@ void mp_hal_gpio_clock_enable(GPIO_TypeDef *gpio);
void HAL_GPIO_Init(GPIO_TypeDef *GPIOx, GPIO_InitTypeDef *init);
-#define GPIO_read_pin(gpio, pin) (((gpio)->PDIR >> (pin)) & 1)
-#define GPIO_set_pin(gpio, pin_mask) (((gpio)->PSOR) = (pin_mask))
-#define GPIO_clear_pin(gpio, pin_mask) (((gpio)->PCOR) = (pin_mask))
-#define GPIO_read_output_pin(gpio, pin) (((gpio)->PDOR >> (pin)) & 1)
+struct _pin_obj_t;
+#define mp_hal_pin_obj_t const struct _pin_obj_t*
+#define mp_hal_pin_high(p) (((p)->gpio->PSOR) = (p)->pin_mask)
+#define mp_hal_pin_low(p) (((p)->gpio->PCOR) = (p)->pin_mask)
+#define mp_hal_pin_read(p) (((p)->gpio->PDIR >> (p)->pin) & 1)
+#define mp_hal_pin_write(p, v) do { if (v) { mp_hal_pin_high(p); } else { mp_hal_pin_low(p); } } while (0)