mirror of
https://github.com/betaflight/betaflight.git
synced 2025-07-19 22:35:23 +03:00
decouple cli/msp from each other. relocated non-msp code into
serial_common.c/h. decouple runtime_config from serial ports. decouple buzzer from serial ports. decouple opening of the main serial port from the msp code. decouple serial rx providers from runtime_config. rename core_t to serialPorts_t since it only contained serial ports. It's now clear which files use serial ports based on the header files they include.
This commit is contained in:
parent
2baf385b99
commit
a7e4c859bd
26 changed files with 209 additions and 135 deletions
57
src/serial_common.c
Normal file
57
src/serial_common.c
Normal file
|
@ -0,0 +1,57 @@
|
|||
#include <stdbool.h>
|
||||
#include <stdint.h>
|
||||
#include <stdlib.h>
|
||||
|
||||
#include "platform.h"
|
||||
|
||||
#include "drivers/system_common.h"
|
||||
#include "drivers/serial_common.h"
|
||||
#include "drivers/serial_uart.h"
|
||||
|
||||
#include "serial_cli.h"
|
||||
#include "serial_msp.h"
|
||||
|
||||
#include "serial_common.h"
|
||||
|
||||
static serialConfig_t *serialConfig;
|
||||
serialPorts_t serialPorts;
|
||||
|
||||
void serialInit(serialConfig_t *initialSerialConfig)
|
||||
{
|
||||
serialConfig = initialSerialConfig;
|
||||
|
||||
resetMainSerialPort();
|
||||
|
||||
mspInit();
|
||||
}
|
||||
|
||||
void resetMainSerialPort(void)
|
||||
{
|
||||
openMainSerialPort(serialConfig->port1_baudrate);
|
||||
}
|
||||
|
||||
void openMainSerialPort(uint32_t baudrate)
|
||||
{
|
||||
serialPorts.mainport = uartOpen(USART1, NULL, baudrate, MODE_RXTX);
|
||||
}
|
||||
|
||||
void handleSerial(void)
|
||||
{
|
||||
// in cli mode, all serial stuff goes to here. enter cli mode by sending #
|
||||
if (cliMode) {
|
||||
cliProcess();
|
||||
return;
|
||||
}
|
||||
|
||||
mspProcess();
|
||||
}
|
||||
|
||||
// evaluate all other incoming serial data
|
||||
void evaluateOtherData(uint8_t sr)
|
||||
{
|
||||
if (sr == '#')
|
||||
cliProcess();
|
||||
else if (sr == serialConfig->reboot_character)
|
||||
systemReset(true); // reboot to bootloader
|
||||
}
|
||||
|
Loading…
Add table
Add a link
Reference in a new issue