summaryrefslogtreecommitdiffstatshomepage
diff options
context:
space:
mode:
authorDamien George <damien.p.george@gmail.com>2017-05-17 17:16:59 +1000
committerDamien George <damien.p.george@gmail.com>2017-05-19 15:48:22 +1000
commitaca898eeb0d85a8efbea9abea79c420118521ee9 (patch)
tree8cafee387c88803e9c911311bf62e82d14df5b27
parent218a876f97eca5a051882eb179cde25b92897f1e (diff)
downloadmicropython-aca898eeb0d85a8efbea9abea79c420118521ee9.tar.gz
micropython-aca898eeb0d85a8efbea9abea79c420118521ee9.zip
esp8266/machine_uart: Add uart.any() method.
Returns 0 or 1, corresponding to no or at least 1 char waiting.
-rw-r--r--esp8266/machine_uart.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/esp8266/machine_uart.c b/esp8266/machine_uart.c
index ef52e8c9a5..4d9f343db1 100644
--- a/esp8266/machine_uart.c
+++ b/esp8266/machine_uart.c
@@ -193,9 +193,16 @@ STATIC mp_obj_t pyb_uart_init(size_t n_args, const mp_obj_t *args, mp_map_t *kw_
}
MP_DEFINE_CONST_FUN_OBJ_KW(pyb_uart_init_obj, 1, pyb_uart_init);
+STATIC mp_obj_t pyb_uart_any(mp_obj_t self_in) {
+ pyb_uart_obj_t *self = MP_OBJ_TO_PTR(self_in);
+ return MP_OBJ_NEW_SMALL_INT(uart_rx_any(self->uart_id));
+}
+STATIC MP_DEFINE_CONST_FUN_OBJ_1(pyb_uart_any_obj, pyb_uart_any);
+
STATIC const mp_rom_map_elem_t pyb_uart_locals_dict_table[] = {
{ MP_ROM_QSTR(MP_QSTR_init), MP_ROM_PTR(&pyb_uart_init_obj) },
+ { MP_ROM_QSTR(MP_QSTR_any), MP_ROM_PTR(&pyb_uart_any_obj) },
{ MP_ROM_QSTR(MP_QSTR_read), MP_ROM_PTR(&mp_stream_read_obj) },
{ MP_ROM_QSTR(MP_QSTR_readline), MP_ROM_PTR(&mp_stream_unbuffered_readline_obj) },
{ MP_ROM_QSTR(MP_QSTR_readinto), MP_ROM_PTR(&mp_stream_readinto_obj) },