File tree Expand file tree Collapse file tree 4 files changed +36
-0
lines changed
atmel-samd/common-hal/supervisor
nrf/common-hal/supervisor
shared-bindings/supervisor Expand file tree Collapse file tree 4 files changed +36
-0
lines changed Original file line number Diff line number Diff line change @@ -32,3 +32,7 @@ bool common_hal_get_serial_connected(void) {
32
32
return (bool ) usb_connected ();
33
33
}
34
34
35
+ bool common_hal_get_serial_bytes_available (void ) {
36
+ return (bool ) usb_bytes_available ();
37
+ }
38
+
Original file line number Diff line number Diff line change @@ -32,3 +32,7 @@ bool common_hal_get_serial_connected(void) {
32
32
return (bool ) serial_connected ();
33
33
}
34
34
35
+ bool common_hal_get_serial_bytes_available (void ) {
36
+ return (bool ) serial_bytes_available ();
37
+ }
38
+
Original file line number Diff line number Diff line change @@ -80,8 +80,34 @@ const mp_obj_property_t supervisor_serial_connected_obj = {
80
80
(mp_obj_t )& mp_const_none_obj },
81
81
};
82
82
83
+
84
+ //| .. attribute:: runtime.serial_bytes_available
85
+ //|
86
+ //| Returns the whether any bytes are available to read
87
+ //| on the USB serial input. Allows for polling to see whether
88
+ //| to call the built-in input() or wait. (read-only)
89
+ //|
90
+ STATIC mp_obj_t supervisor_get_serial_bytes_available (mp_obj_t self ){
91
+ if (!common_hal_get_serial_bytes_available ()) {
92
+ return mp_const_false ;
93
+ }
94
+ else {
95
+ return mp_const_true ;
96
+ }
97
+ }
98
+ MP_DEFINE_CONST_FUN_OBJ_1 (supervisor_get_serial_bytes_available_obj , supervisor_get_serial_bytes_available );
99
+
100
+ const mp_obj_property_t supervisor_serial_bytes_available_obj = {
101
+ .base .type = & mp_type_property ,
102
+ .proxy = {(mp_obj_t )& supervisor_get_serial_bytes_available_obj ,
103
+ (mp_obj_t )& mp_const_none_obj ,
104
+ (mp_obj_t )& mp_const_none_obj },
105
+ };
106
+
107
+
83
108
STATIC const mp_rom_map_elem_t supervisor_runtime_locals_dict_table [] = {
84
109
{ MP_ROM_QSTR (MP_QSTR_serial_connected ), MP_ROM_PTR (& supervisor_serial_connected_obj ) },
110
+ { MP_ROM_QSTR (MP_QSTR_serial_bytes_available ), MP_ROM_PTR (& supervisor_serial_bytes_available_obj ) },
85
111
};
86
112
87
113
STATIC MP_DEFINE_CONST_DICT (supervisor_runtime_locals_dict , supervisor_runtime_locals_dict_table );
Original file line number Diff line number Diff line change @@ -35,6 +35,8 @@ const mp_obj_type_t supervisor_runtime_type;
35
35
36
36
bool common_hal_get_serial_connected (void );
37
37
38
+ bool common_hal_get_serial_bytes_available (void );
39
+
38
40
//TODO: placeholders for future functions
39
41
//bool common_hal_get_repl_active(void);
40
42
//bool common_hal_get_usb_enumerated(void);
You can’t perform that action at this time.
0 commit comments