stmhal: Add uart.sendbreak() method, to send a break condition.
This commit is contained in:
parent
089c3f321e
commit
baafb290ad
|
@ -134,3 +134,9 @@ Methods
|
||||||
|
|
||||||
Write a single character on the bus. ``char`` is an integer to write.
|
Write a single character on the bus. ``char`` is an integer to write.
|
||||||
Return value: ``None``.
|
Return value: ``None``.
|
||||||
|
|
||||||
|
.. method:: uart.sendbreak()
|
||||||
|
|
||||||
|
Send a break condition on the bus. This drives the bus low for a duration
|
||||||
|
of 13 bits.
|
||||||
|
Return value: ``None``.
|
||||||
|
|
|
@ -186,6 +186,7 @@ Q(any)
|
||||||
Q(writechar)
|
Q(writechar)
|
||||||
Q(readchar)
|
Q(readchar)
|
||||||
Q(readinto)
|
Q(readinto)
|
||||||
|
Q(sendbreak)
|
||||||
Q(RTS)
|
Q(RTS)
|
||||||
Q(CTS)
|
Q(CTS)
|
||||||
|
|
||||||
|
|
|
@ -614,6 +614,14 @@ STATIC mp_obj_t pyb_uart_readchar(mp_obj_t self_in) {
|
||||||
}
|
}
|
||||||
STATIC MP_DEFINE_CONST_FUN_OBJ_1(pyb_uart_readchar_obj, pyb_uart_readchar);
|
STATIC MP_DEFINE_CONST_FUN_OBJ_1(pyb_uart_readchar_obj, pyb_uart_readchar);
|
||||||
|
|
||||||
|
// uart.sendbreak()
|
||||||
|
STATIC mp_obj_t pyb_uart_sendbreak(mp_obj_t self_in) {
|
||||||
|
pyb_uart_obj_t *self = self_in;
|
||||||
|
self->uart.Instance->CR1 |= USART_CR1_SBK;
|
||||||
|
return mp_const_none;
|
||||||
|
}
|
||||||
|
STATIC MP_DEFINE_CONST_FUN_OBJ_1(pyb_uart_sendbreak_obj, pyb_uart_sendbreak);
|
||||||
|
|
||||||
STATIC const mp_map_elem_t pyb_uart_locals_dict_table[] = {
|
STATIC const mp_map_elem_t pyb_uart_locals_dict_table[] = {
|
||||||
// instance methods
|
// instance methods
|
||||||
|
|
||||||
|
@ -634,6 +642,7 @@ STATIC const mp_map_elem_t pyb_uart_locals_dict_table[] = {
|
||||||
|
|
||||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_writechar), (mp_obj_t)&pyb_uart_writechar_obj },
|
{ MP_OBJ_NEW_QSTR(MP_QSTR_writechar), (mp_obj_t)&pyb_uart_writechar_obj },
|
||||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_readchar), (mp_obj_t)&pyb_uart_readchar_obj },
|
{ MP_OBJ_NEW_QSTR(MP_QSTR_readchar), (mp_obj_t)&pyb_uart_readchar_obj },
|
||||||
|
{ MP_OBJ_NEW_QSTR(MP_QSTR_sendbreak), (mp_obj_t)&pyb_uart_sendbreak_obj },
|
||||||
|
|
||||||
// class constants
|
// class constants
|
||||||
{ MP_OBJ_NEW_QSTR(MP_QSTR_RTS), MP_OBJ_NEW_SMALL_INT(UART_HWCONTROL_RTS) },
|
{ MP_OBJ_NEW_QSTR(MP_QSTR_RTS), MP_OBJ_NEW_SMALL_INT(UART_HWCONTROL_RTS) },
|
||||||
|
|
|
@ -12,3 +12,6 @@ print(uart.any())
|
||||||
print(uart.write('123'))
|
print(uart.write('123'))
|
||||||
print(uart.write(b'abcd'))
|
print(uart.write(b'abcd'))
|
||||||
print(uart.writechar(1))
|
print(uart.writechar(1))
|
||||||
|
|
||||||
|
# make sure this method exists
|
||||||
|
uart.sendbreak()
|
||||||
|
|
Loading…
Reference in New Issue