Browse Source

HAL_FLYMAPLE: implement a dummy buffered write

mission-4.1.18
Andrew Tridgell 12 years ago
parent
commit
9624821493
  1. 4
      libraries/AP_HAL_FLYMAPLE/Console.cpp
  2. 1
      libraries/AP_HAL_FLYMAPLE/Console.h
  3. 9
      libraries/AP_HAL_FLYMAPLE/UARTDriver.cpp
  4. 1
      libraries/AP_HAL_FLYMAPLE/UARTDriver.h

4
libraries/AP_HAL_FLYMAPLE/Console.cpp

@ -72,4 +72,8 @@ size_t FLYMAPLEConsoleDriver::write(uint8_t c) { @@ -72,4 +72,8 @@ size_t FLYMAPLEConsoleDriver::write(uint8_t c) {
return _base_uart->write(c);
}
size_t FLYMAPLEConsoleDriver::write(const uint8_t *buffer, size_t size) {
return _base_uart->write(buffer, size);
}
#endif

1
libraries/AP_HAL_FLYMAPLE/Console.h

@ -18,6 +18,7 @@ public: @@ -18,6 +18,7 @@ public:
int16_t read();
size_t write(uint8_t c);
size_t write(const uint8_t *buffer, size_t size);
private:
AP_HAL::UARTDriver* _base_uart;
};

9
libraries/AP_HAL_FLYMAPLE/UARTDriver.cpp

@ -98,4 +98,13 @@ size_t FLYMAPLEUARTDriver::write(uint8_t c) @@ -98,4 +98,13 @@ size_t FLYMAPLEUARTDriver::write(uint8_t c)
return 1;
}
size_t FLYMAPLEUARTDriver::write(const uint8_t *buffer, size_t size)
{
size_t n = 0;
while (size--) {
n += write(*buffer++);
}
return n;
}
#endif

1
libraries/AP_HAL_FLYMAPLE/UARTDriver.h

@ -43,6 +43,7 @@ public: @@ -43,6 +43,7 @@ public:
/* FLYMAPLE implementations of Print virtual methods */
size_t write(uint8_t c);
size_t write(const uint8_t *buffer, size_t size);
private:
HardwareSerial* _hws;
uint8_t* _txBuf; // If need more than libmaple usart driver buffer of 63

Loading…
Cancel
Save