From a3e9e1ce274a68dc916e5dbffcfe6c3cf2981f9c Mon Sep 17 00:00:00 2001 From: Tristan Krause <tristan.krause@stud.htwk-leipzig.de> Date: Wed, 27 Mar 2019 09:18:21 +0100 Subject: [PATCH] auto reconnect --- drv/b15f.cpp | 139 ++++++++++++++++++++++++++++++++++++++++----------- drv/b15f.h | 3 ++ drv/b15f.o | Bin 18896 -> 26144 bytes main | Bin 24128 -> 24656 bytes 4 files changed, 113 insertions(+), 29 deletions(-) diff --git a/drv/b15f.cpp b/drv/b15f.cpp index 2071a06..c03d0ff 100644 --- a/drv/b15f.cpp +++ b/drv/b15f.cpp @@ -48,16 +48,41 @@ void B15F::init() while(1) { - for(uint16_t i = 0; i < 1024; ) + digitaleAusgabe0(0xFF); + digitaleAusgabe0(0x00); + //analogeEingabe(0); + /*for(uint16_t i = 0; i < 1024; ) { i = analogeEingabe(0); analogeAusgabe0(i); delay(0); - } + }*/ } } +void B15F::reconnect() +{ + std::cout << PRE << "Verbindung unterbrochen, stelle Verbindung neu her: " << std::flush; + + uint8_t tries = RECONNECT_TRIES; + while(tries--) + { + delay(RECONNECT_TIMEOUT); + + discard(); + + if(testConnection()) + { + std::cout << "OK" << std::endl << std::flush; + return; + } + + } + + throw DriverException("Verbindung kann nicht repariert werden"); +} + void B15F::discard(void) { for(uint8_t i = 0; i < 8; i++) @@ -99,57 +124,113 @@ bool B15F::testIntConv() bool B15F::digitaleAusgabe0(uint8_t port) { - writeByte(RQ_BA0); - writeByte(port); - - uint8_t aw = readByte(); - return aw == MSG_OK; + try + { + writeByte(RQ_BA0); + writeByte(port); + + uint8_t aw = readByte(); + return aw == MSG_OK; + } + catch(DriverException& de) + { + reconnect(); + return digitaleAusgabe0(port); + } } bool B15F::digitaleAusgabe1(uint8_t port) { - writeByte(RQ_BA1); - writeByte(port); - - uint8_t aw = readByte(); - return aw == MSG_OK; + try + { + writeByte(RQ_BA1); + writeByte(port); + + uint8_t aw = readByte(); + return aw == MSG_OK; + } + catch(DriverException& de) + { + reconnect(); + return digitaleAusgabe1(port); + } } uint8_t B15F::digitaleEingabe0() { - writeByte(RQ_BE0); - return readByte(); + try + { + writeByte(RQ_BE0); + return readByte(); + } + catch(DriverException& de) + { + reconnect(); + return digitaleEingabe0(); + } } uint8_t B15F::digitaleEingabe1() { - writeByte(RQ_BE1); - return readByte(); + try + { + writeByte(RQ_BE1); + return readByte(); + } + catch(DriverException& de) + { + reconnect(); + return digitaleEingabe1(); + } } bool B15F::analogeAusgabe0(uint16_t value) { - writeByte(RQ_AA0); - writeInt(value); - - uint8_t aw = readByte(); - return aw == MSG_OK; + try + { + writeByte(RQ_AA0); + writeInt(value); + + uint8_t aw = readByte(); + return aw == MSG_OK; + } + catch(DriverException& de) + { + reconnect(); + return analogeAusgabe0(value); + } } bool B15F::analogeAusgabe1(uint16_t value) { - writeByte(RQ_AA1); - writeInt(value); - - uint8_t aw = readByte(); - return aw == MSG_OK; + try + { + writeByte(RQ_AA1); + writeInt(value); + + uint8_t aw = readByte(); + return aw == MSG_OK; + } + catch(DriverException& de) + { + reconnect(); + return analogeAusgabe1(value); + } } uint16_t B15F::analogeEingabe(uint8_t channel) { - writeByte(RQ_ADC); - writeByte(channel); - return readInt(); + try + { + writeByte(RQ_ADC); + writeByte(channel); + return readInt(); + } + catch(DriverException& de) + { + reconnect(); + return analogeEingabe(channel); + } } diff --git a/drv/b15f.h b/drv/b15f.h index cac39ff..0ed4d28 100644 --- a/drv/b15f.h +++ b/drv/b15f.h @@ -21,6 +21,7 @@ private: public: // Grundfunktionen void init(void); + void reconnect(void); void discard(void); bool testConnection(void); bool testIntConv(void); @@ -57,6 +58,8 @@ private: const std::string SERIAL_DEVICE = "/dev/ttyUSB0"; constexpr static uint8_t MSG_OK = 0xFF; constexpr static uint8_t MSG_FAIL = 0xFE; + constexpr static uint16_t RECONNECT_TIMEOUT = 32; // ms + constexpr static uint8_t RECONNECT_TRIES = 3; // REQUESTS constexpr static uint8_t RQ_DISC = 0; diff --git a/drv/b15f.o b/drv/b15f.o index 3e4a43efba472e81affacd53517e234c16833c29..3173d0b37f8b31ddf47a3e99fedb215404434a8b 100644 GIT binary patch literal 26144 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 C?)R<$ literal 18896 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 diff --git a/main b/main index 275fed1ef78634188bf8db721537cc3c0c3af9c3..880bff8715f96357c4688a18ce7ce41aedf09097 100755 GIT binary patch literal 24656 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 MK`}k6LKevW2j&6Sx&QzG literal 24128 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