Skip to content

Commit 24cd401

Browse files
committed
merge uart any
2 parents 182fc69 + 210e0f7 commit 24cd401

File tree

1 file changed

+22
-1
lines changed

1 file changed

+22
-1
lines changed

ports/k210-freertos/mpy_support/standard_lib/machine/machine_uart.c

Lines changed: 22 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -114,6 +114,13 @@ static size_t read_ret;
114114
static uint8_t read_tmp;
115115
static uint16_t next_head;
116116
static machine_uart_obj_t* ctx_self = NULL;
117+
118+
mp_obj_t uart_any(machine_uart_obj_t *self)
119+
{
120+
return mp_obj_new_int(uart_rx_any(self));
121+
}
122+
MP_DEFINE_CONST_FUN_OBJ_1(machine_uart_any_obj, uart_any);
123+
117124
int uart_rx_irq(void *ctx)
118125
{
119126
ctx_self= (machine_uart_obj_t*)ctx;
@@ -253,6 +260,18 @@ int uart_rx_char(machine_uart_obj_t *self)
253260
return -1;
254261
}
255262

263+
mp_obj_t uart_readchar(machine_uart_obj_t *self)
264+
{
265+
int data = uart_rx_char(self);
266+
267+
if(data != -1)
268+
{
269+
return mp_obj_new_bytes(&data,1);
270+
}
271+
return MP_OBJ_NULL;
272+
}
273+
MP_DEFINE_CONST_FUN_OBJ_1(machine_uart_rx_char_obj, uart_rx_char);
274+
256275
int uart_rx_data(machine_uart_obj_t *self,uint8_t* buf_in,uint32_t size)
257276
{
258277
uint16_t data_num = 0;
@@ -552,7 +571,9 @@ MP_DEFINE_CONST_FUN_OBJ_1(machine_set_uart_repl_uart_obj, machine_set_uart_repl_
552571
STATIC const mp_rom_map_elem_t machine_uart_locals_dict_table[] = {
553572
{ MP_ROM_QSTR(MP_QSTR_init), MP_ROM_PTR(&machine_uart_init_obj) },
554573
{ MP_ROM_QSTR(MP_QSTR_deinit), MP_ROM_PTR(&machine_uart_deinit_obj) },
555-
574+
575+
{ MP_ROM_QSTR(MP_QSTR_readchar), MP_ROM_PTR(&machine_uart_rx_char_obj)},
576+
{ MP_ROM_QSTR(MP_QSTR_any), MP_ROM_PTR(&machine_uart_any_obj)},
556577
{ MP_ROM_QSTR(MP_QSTR_readline), MP_ROM_PTR(&mp_stream_unbuffered_readline_obj)},
557578
{ MP_ROM_QSTR(MP_QSTR_readinto), MP_ROM_PTR(&mp_stream_readinto_obj) },
558579
{ MP_ROM_QSTR(MP_QSTR_write), MP_ROM_PTR(&mp_stream_write_obj) },

0 commit comments

Comments
 (0)