blob: e691805f9865d5849825c9b046c8ffc88c922150 [file] [log] [blame]
Damien George87c62502015-02-13 22:21:44 +00001extern const mp_obj_type_t pyb_pin_type;
Josef Gajdusek25a8a422015-05-18 18:35:56 +02002extern const mp_obj_type_t pyb_adc_type;
Damien Georgede8b5852015-06-22 23:03:17 +01003extern const mp_obj_type_t pyb_rtc_type;
Damien Georgedd32f022016-02-11 12:43:41 +00004extern const mp_obj_type_t pyb_i2c_type;
Damien George342d9032015-12-29 00:19:23 +00005
Damien George7059c8c2016-02-11 11:41:58 +00006typedef struct _pyb_pin_obj_t {
7 mp_obj_base_t base;
8 uint16_t pin_id;
9 uint16_t phys_port;
10 uint32_t periph;
11 uint16_t func;
12} pyb_pin_obj_t;
13
Damien George342d9032015-12-29 00:19:23 +000014uint mp_obj_get_pin(mp_obj_t pin_in);
Damien George7059c8c2016-02-11 11:41:58 +000015pyb_pin_obj_t *mp_obj_get_pin_obj(mp_obj_t pin_in);
Damien George342d9032015-12-29 00:19:23 +000016int pin_get(uint pin);
17void pin_set(uint pin, int value);