|
50 | 50 |
|
51 | 51 | //| .. class:: AnalogIn(pin)
|
52 | 52 | //|
|
53 |
| -//| Use the AnalogIn on the given pin. |
| 53 | +//| Use the AnalogIn on the given pin. The reference voltage varies by |
| 54 | +//| platform so use ``reference_voltage`` to read the configured setting. |
54 | 55 | //|
|
55 | 56 | //| :param ~microcontroller.Pin pin: the pin to read from
|
56 | 57 | //|
|
@@ -126,11 +127,33 @@ mp_obj_property_t nativeio_analogin_value_obj = {
|
126 | 127 | (mp_obj_t)&mp_const_none_obj},
|
127 | 128 | };
|
128 | 129 |
|
| 130 | +//| .. attribute:: reference_voltage |
| 131 | +//| |
| 132 | +//| The maximum voltage measurable. Also known as the reference voltage. |
| 133 | +//| |
| 134 | +//| :return: the reference voltage |
| 135 | +//| :rtype: float |
| 136 | +//| |
| 137 | +STATIC mp_obj_t nativeio_analogin_obj_get_reference_voltage(mp_obj_t self_in) { |
| 138 | + nativeio_analogin_obj_t *self = MP_OBJ_TO_PTR(self_in); |
| 139 | + return mp_obj_new_float(common_hal_nativeio_analogin_get_reference_voltage(self)); |
| 140 | +} |
| 141 | +MP_DEFINE_CONST_FUN_OBJ_1(nativeio_analogin_get_reference_voltage_obj, |
| 142 | + nativeio_analogin_obj_get_reference_voltage); |
| 143 | + |
| 144 | +mp_obj_property_t nativeio_analogin_reference_voltage_obj = { |
| 145 | + .base.type = &mp_type_property, |
| 146 | + .proxy = {(mp_obj_t)&nativeio_analogin_get_reference_voltage_obj, |
| 147 | + (mp_obj_t)&mp_const_none_obj, |
| 148 | + (mp_obj_t)&mp_const_none_obj}, |
| 149 | +}; |
| 150 | + |
129 | 151 | STATIC const mp_rom_map_elem_t nativeio_analogin_locals_dict_table[] = {
|
130 | 152 | { MP_ROM_QSTR(MP_QSTR_deinit), MP_ROM_PTR(&nativeio_analogin_deinit_obj) },
|
131 | 153 | { MP_ROM_QSTR(MP_QSTR___enter__), MP_ROM_PTR(&nativeio_analogin___enter___obj) },
|
132 | 154 | { MP_ROM_QSTR(MP_QSTR___exit__), MP_ROM_PTR(&nativeio_analogin___exit___obj) },
|
133 |
| - { MP_OBJ_NEW_QSTR(MP_QSTR_value), MP_ROM_PTR(&nativeio_analogin_value_obj)}, |
| 155 | + { MP_OBJ_NEW_QSTR(MP_QSTR_value), MP_ROM_PTR(&nativeio_analogin_value_obj)}, |
| 156 | + { MP_OBJ_NEW_QSTR(MP_QSTR_reference_voltage), MP_ROM_PTR(&nativeio_analogin_reference_voltage_obj)}, |
134 | 157 | };
|
135 | 158 |
|
136 | 159 | STATIC MP_DEFINE_CONST_DICT(nativeio_analogin_locals_dict, nativeio_analogin_locals_dict_table);
|
|
0 commit comments