From 5da2a458817ca88ed30221691964cbdfa437d694 Mon Sep 17 00:00:00 2001 From: Jakob Meier Date: Fri, 8 Oct 2021 14:15:33 +0200 Subject: [PATCH] gpios to enable rs485 tx clock and tx data --- bsp_q7s/boardconfig/busConf.h | 2 ++ bsp_q7s/core/ObjectFactory.cpp | 10 ++++++++++ fsfw | 2 +- linux/fsfwconfig/devices/gpioIds.h | 6 +++++- 4 files changed, 18 insertions(+), 2 deletions(-) diff --git a/bsp_q7s/boardconfig/busConf.h b/bsp_q7s/boardconfig/busConf.h index 4b64e775..8905a125 100644 --- a/bsp_q7s/boardconfig/busConf.h +++ b/bsp_q7s/boardconfig/busConf.h @@ -60,6 +60,8 @@ namespace gpioNames { static constexpr char PAPB_EMPTY_SIGNAL_VC2[] = "papb_empty_signal_vc2"; static constexpr char PAPB_BUSY_SIGNAL_VC3[] = "papb_busy_signal_vc3"; static constexpr char PAPB_EMPTY_SIGNAL_VC3[] = "papb_empty_signal_vc3"; + static constexpr char RS485_EN_TX_CLOCK[] = "tx_clock_enable_ltc2872"; + static constexpr char RS485_EN_TX_DATA[] = "tx_data_enable_ltc2872"; } } diff --git a/bsp_q7s/core/ObjectFactory.cpp b/bsp_q7s/core/ObjectFactory.cpp index e36bf12c..47b26a2a 100644 --- a/bsp_q7s/core/ObjectFactory.cpp +++ b/bsp_q7s/core/ObjectFactory.cpp @@ -943,6 +943,16 @@ void ObjectFactory::createCcsdsComponents(LinuxLibgpioIF *gpioComIF) { ccsdsHandler->addVirtualChannel(ccsds::VC2, vc); vc = new VirtualChannel(ccsds::VC3, config::VC3_QUEUE_SIZE); ccsdsHandler->addVirtualChannel(ccsds::VC3, vc); + + GpioCookie* gpioRS485Chip = new GpioCookie; + gpio = new GpiodRegularByLineName(q7s::gpioNames::RS485_EN_TX_CLOCK, "RS485 Transceiver", + gpio::Direction::OUT, gpio::HIGH); + gpioRS485Chip->addGpio(gpioIds::RS485_EN_TX_CLOCK, gpio); + gpio = new GpiodRegularByLineName(q7s::gpioNames::RS485_EN_TX_DATA, "RS485 Transceiver", + gpio::Direction::OUT, gpio::HIGH); + gpioRS485Chip->addGpio(gpioIds::RS485_EN_TX_DATA, gpio); + + gpioComIF->addGpios(gpioRS485Chip); } void ObjectFactory::createTestComponents(LinuxLibgpioIF* gpioComIF) { diff --git a/fsfw b/fsfw index 2844c512..a578f039 160000 --- a/fsfw +++ b/fsfw @@ -1 +1 @@ -Subproject commit 2844c512b69a2a0089ee4b0f4fd57a75a42a3cb3 +Subproject commit a578f0390bce6c0a3d1d1e8d59764072f1075867 diff --git a/linux/fsfwconfig/devices/gpioIds.h b/linux/fsfwconfig/devices/gpioIds.h index 2016245d..5f09e5f6 100644 --- a/linux/fsfwconfig/devices/gpioIds.h +++ b/linux/fsfwconfig/devices/gpioIds.h @@ -98,7 +98,11 @@ enum gpioId_t { VC2_PAPB_EMPTY, VC2_PAPB_BUSY, VC3_PAPB_EMPTY, - VC3_PAPB_BUSY + VC3_PAPB_BUSY, + + + RS485_EN_TX_DATA, + RS485_EN_TX_CLOCK }; }