|
|
|
@ -79,6 +79,8 @@
|
|
|
|
|
#include <linux/obc/PdecHandler.h>
|
|
|
|
|
#include <linux/obc/PapbVcInterface.h>
|
|
|
|
|
#include <linux/obc/PtmeConfig.h>
|
|
|
|
|
#include <linux/obc/PtmeRateSetter.h>
|
|
|
|
|
#include <linux/obc/TxRateSetterIF.h>
|
|
|
|
|
|
|
|
|
|
ResetArgs resetArgsGnss0;
|
|
|
|
|
ResetArgs resetArgsGnss1;
|
|
|
|
@ -937,8 +939,19 @@ void ObjectFactory::createCcsdsComponents(LinuxLibgpioIF *gpioComIF) {
|
|
|
|
|
ptme->addVcInterface(ccsds::VC2, vc2);
|
|
|
|
|
ptme->addVcInterface(ccsds::VC3, vc3);
|
|
|
|
|
|
|
|
|
|
GpioCookie* gpioCookieRateSetter = new GpioCookie;
|
|
|
|
|
consumer.str("");
|
|
|
|
|
consumer << "ptme rate setter";
|
|
|
|
|
// Init to low -> default bit rate is low bit rate (200 kbps in downlink with syrlinks)
|
|
|
|
|
gpio = new GpiodRegularByLineName(q7s::gpioNames::BIT_RATE_SEL, consumer.str(), gpio::OUT,
|
|
|
|
|
gpio::LOW);
|
|
|
|
|
gpioCookieRateSetter->addGpio(gpioIds::BIT_RATE_SEL, gpio);
|
|
|
|
|
gpioComIF->addGpios(gpioCookieRateSetter);
|
|
|
|
|
|
|
|
|
|
TxRateSetterIF* txRateSetterIF = new PtmeRateSetter(gpioIds::BIT_RATE_SEL, gpioComIF);
|
|
|
|
|
|
|
|
|
|
CCSDSHandler* ccsdsHandler = new CCSDSHandler(objects::CCSDS_HANDLER, objects::PTME,
|
|
|
|
|
objects::CCSDS_PACKET_DISTRIBUTOR);
|
|
|
|
|
objects::CCSDS_PACKET_DISTRIBUTOR, txRateSetterIF);
|
|
|
|
|
|
|
|
|
|
VirtualChannel* vc = nullptr;
|
|
|
|
|
vc = new VirtualChannel(ccsds::VC0, common::VC0_QUEUE_SIZE);
|
|
|
|
@ -973,6 +986,14 @@ void ObjectFactory::createCcsdsComponents(LinuxLibgpioIF *gpioComIF) {
|
|
|
|
|
gpio::Direction::OUT, gpio::HIGH);
|
|
|
|
|
gpioRS485Chip->addGpio(gpioIds::RS485_EN_TX_DATA, gpio);
|
|
|
|
|
|
|
|
|
|
// Default configuration enables RX channels (RXEN = LOW)
|
|
|
|
|
gpio = new GpiodRegularByLineName(q7s::gpioNames::RS485_EN_RX_CLOCK, "RS485 Transceiver",
|
|
|
|
|
gpio::Direction::OUT, gpio::LOW);
|
|
|
|
|
gpioRS485Chip->addGpio(gpioIds::RS485_EN_RX_CLOCK, gpio);
|
|
|
|
|
gpio = new GpiodRegularByLineName(q7s::gpioNames::RS485_EN_RX_DATA, "RS485 Transceiver",
|
|
|
|
|
gpio::Direction::OUT, gpio::LOW);
|
|
|
|
|
gpioRS485Chip->addGpio(gpioIds::RS485_EN_RX_DATA, gpio);
|
|
|
|
|
|
|
|
|
|
gpioComIF->addGpios(gpioRS485Chip);
|
|
|
|
|
#endif /* BOARD_TE0720 == 0 */
|
|
|
|
|
}
|
|
|
|
|