1
0
Fork 0
mirror of https://github.com/betaflight/betaflight.git synced 2025-07-26 01:35:41 +03:00

No more "pin-pair"

RX and TX can be assigned to ANY capable pins.
This commit is contained in:
jflyper 2017-05-26 12:52:28 +09:00
parent 6c5997ef9f
commit 2d45189fe2
13 changed files with 130 additions and 1605 deletions

View file

@ -40,33 +40,6 @@
#include "drivers/serial_uart.h"
#include "drivers/serial_uart_impl.h"
uartDevice_t uartDevice[UARTDEV_COUNT]; // Only configured in target.h
uartDevice_t *uartDevmap[UARTDEV_COUNT_MAX]; // Full array
void uartPinConfigure(const serialPinConfig_t *pSerialPinConfig)
{
uartDevice_t *uartdev = uartDevice;
for (size_t hindex = 0 ; hindex < UARTDEV_COUNT ; hindex++) {
const uartHardware_t *hardware = &uartHardware[hindex];
UARTDevice device = hardware->device;
for (int pair = 0 ; pair < UARTHARDWARE_PINPAIR_COUNT ; pair++) {
if (hardware->pinPair[pair].rx == pSerialPinConfig->ioTagRx[device]
&& hardware->pinPair[pair].tx == pSerialPinConfig->ioTagTx[device]) {
// Matching pin pair found
uartdev->hardware = hardware;
uartdev->rx = hardware->pinPair[pair].rx;
uartdev->tx = hardware->pinPair[pair].tx;
uartDevmap[device] = uartdev++;
break;
}
}
}
}
static void usartConfigurePinInversion(uartPort_t *uartPort) {
bool inverted = uartPort->port.options & SERIAL_INVERTED;