fix(lua): Re-implement luaSetSerialBaudrate (#4501)
This commit is contained in:
@@ -379,6 +379,38 @@ void serialSetPower(uint8_t port_nr, bool enabled)
|
||||
}
|
||||
#endif
|
||||
|
||||
uint32_t serialGetBaudrate(uint8_t port_nr)
|
||||
{
|
||||
auto state = getSerialPortState(port_nr);
|
||||
if (!state || !state->port || !state->usart_ctx)
|
||||
return 0;
|
||||
|
||||
auto port = state->port;
|
||||
if (!port->uart || !port->uart->getBaudrate) return 0;
|
||||
|
||||
return port->uart->getBaudrate(state->usart_ctx);
|
||||
}
|
||||
|
||||
void serialSetBaudrate(uint8_t port_nr, uint32_t baudrate)
|
||||
{
|
||||
auto state = getSerialPortState(port_nr);
|
||||
if (!state || !state->port || !state->usart_ctx)
|
||||
return;
|
||||
|
||||
auto port = state->port;
|
||||
if (!port->uart || !port->uart->setBaudrate) return;
|
||||
|
||||
port->uart->setBaudrate(state->usart_ctx, baudrate);
|
||||
}
|
||||
|
||||
int serialGetModePort(int mode)
|
||||
{
|
||||
for (int p = 0; p < MAX_SERIAL_PORTS; p++) {
|
||||
if (serialGetMode(p) == mode) return p;
|
||||
}
|
||||
return -1;
|
||||
}
|
||||
|
||||
void serialInit(uint8_t port_nr, int mode)
|
||||
{
|
||||
auto state = getSerialPortState(port_nr);
|
||||
|
||||
Reference in New Issue
Block a user