50
50
//| vsync_pin: microcontroller.Pin,
51
51
//| href_pin: microcontroller.Pin,
52
52
//| i2c: busio.I2C,
53
- //| external_clock_pin: microcontroller.Pin,
54
- //| external_clock_frequency: int,
53
+ //| external_clock_pin: Optional[ microcontroller.Pin] = None ,
54
+ //| external_clock_frequency: int = 20_000_000 ,
55
55
//| powerdown_pin: Optional[microcontroller.Pin] = None,
56
56
//| reset_pin: Optional[microcontroller.Pin] = None,
57
57
//| pixel_format: PixelFormat = PixelFormat.RGB565,
@@ -101,8 +101,8 @@ STATIC mp_obj_t esp32_camera_camera_make_new(const mp_obj_type_t *type, size_t n
101
101
{ MP_QSTR_vsync_pin , MP_ARG_OBJ | MP_ARG_KW_ONLY | MP_ARG_REQUIRED },
102
102
{ MP_QSTR_href_pin , MP_ARG_OBJ | MP_ARG_KW_ONLY | MP_ARG_REQUIRED },
103
103
{ MP_QSTR_i2c , MP_ARG_OBJ | MP_ARG_KW_ONLY | MP_ARG_REQUIRED },
104
- { MP_QSTR_external_clock_pin , MP_ARG_OBJ | MP_ARG_KW_ONLY },
105
- { MP_QSTR_external_clock_frequency , MP_ARG_INT | MP_ARG_REQUIRED },
104
+ { MP_QSTR_external_clock_pin , MP_ARG_OBJ | MP_ARG_KW_ONLY , { . u_obj = MP_ROM_NONE } },
105
+ { MP_QSTR_external_clock_frequency , MP_ARG_INT | MP_ARG_KW_ONLY , { . u_int = 20000000L } },
106
106
{ MP_QSTR_powerdown_pin , MP_ARG_OBJ | MP_ARG_KW_ONLY , { .u_obj = MP_ROM_NONE } },
107
107
{ MP_QSTR_reset_pin , MP_ARG_OBJ | MP_ARG_KW_ONLY , { .u_obj = MP_ROM_NONE } },
108
108
{ MP_QSTR_pixel_format , MP_ARG_OBJ | MP_ARG_KW_ONLY , { .u_obj = MP_ROM_PTR ((void * )& pixel_format_RGB565_obj ) } },
@@ -125,7 +125,7 @@ STATIC mp_obj_t esp32_camera_camera_make_new(const mp_obj_type_t *type, size_t n
125
125
const mcu_pin_obj_t * vsync_pin = validate_obj_is_free_pin (args [ARG_vsync_pin ].u_obj );
126
126
const mcu_pin_obj_t * href_pin = validate_obj_is_free_pin (args [ARG_href_pin ].u_obj );
127
127
busio_i2c_obj_t * i2c = MP_OBJ_TO_PTR (mp_arg_validate_type (args [ARG_i2c ].u_obj , & busio_i2c_type , MP_QSTR_i2c ));
128
- const mcu_pin_obj_t * external_clock_pin = validate_obj_is_free_pin (args [ARG_external_clock_pin ].u_obj );
128
+ const mcu_pin_obj_t * external_clock_pin = validate_obj_is_free_pin_or_none (args [ARG_external_clock_pin ].u_obj );
129
129
const mcu_pin_obj_t * powerdown_pin = validate_obj_is_free_pin_or_none (args [ARG_powerdown_pin ].u_obj );
130
130
const mcu_pin_obj_t * reset_pin = validate_obj_is_free_pin_or_none (args [ARG_reset_pin ].u_obj );
131
131
const mp_int_t external_clock_frequency = mp_arg_validate_int_range (args [ARG_external_clock_frequency ].u_int , 0 , 40000000 , MP_QSTR_clock_frequency );
0 commit comments