|
84 | 84 | //| ...
|
85 | 85 | //|
|
86 | 86 | STATIC mp_obj_t audiobusio_pdmin_make_new(const mp_obj_type_t *type, size_t n_args, const mp_obj_t *pos_args, mp_map_t *kw_args) {
|
| 87 | +#if !CIRCUITPY_AUDIOBUSIO_PDMIN |
| 88 | + mp_raise_NotImplementedError(translate("PDMIn not available")); |
| 89 | +#else |
87 | 90 | enum { ARG_clock_pin, ARG_data_pin, ARG_sample_rate, ARG_bit_depth, ARG_mono, ARG_oversample, ARG_startup_delay };
|
88 | 91 | static const mp_arg_t allowed_args[] = {
|
89 | 92 | { MP_QSTR_clock_pin, MP_ARG_REQUIRED | MP_ARG_OBJ },
|
@@ -132,8 +135,10 @@ STATIC mp_obj_t audiobusio_pdmin_make_new(const mp_obj_type_t *type, size_t n_ar
|
132 | 135 | mp_hal_delay_ms(startup_delay * 1000);
|
133 | 136 |
|
134 | 137 | return MP_OBJ_FROM_PTR(self);
|
| 138 | +#endif |
135 | 139 | }
|
136 | 140 |
|
| 141 | +#if CIRCUITPY_AUDIOBUSIO_PDMIN |
137 | 142 | //| def deinit(self) -> None:
|
138 | 143 | //| """Deinitialises the PDMIn and releases any hardware resources for reuse."""
|
139 | 144 | //| ...
|
@@ -237,10 +242,13 @@ STATIC const mp_rom_map_elem_t audiobusio_pdmin_locals_dict_table[] = {
|
237 | 242 | { MP_ROM_QSTR(MP_QSTR_sample_rate), MP_ROM_PTR(&audiobusio_pdmin_sample_rate_obj) }
|
238 | 243 | };
|
239 | 244 | STATIC MP_DEFINE_CONST_DICT(audiobusio_pdmin_locals_dict, audiobusio_pdmin_locals_dict_table);
|
| 245 | +#endif |
240 | 246 |
|
241 | 247 | const mp_obj_type_t audiobusio_pdmin_type = {
|
242 | 248 | { &mp_type_type },
|
243 | 249 | .name = MP_QSTR_PDMIn,
|
244 | 250 | .make_new = audiobusio_pdmin_make_new,
|
| 251 | +#if CIRCUITPY_AUDIOBUSIO_PDMIN |
245 | 252 | .locals_dict = (mp_obj_dict_t*)&audiobusio_pdmin_locals_dict,
|
| 253 | +#endif |
246 | 254 | };
|
0 commit comments