AP_RangeFinder: remove serial.end and begin

Also some formatting changes
This commit is contained in:
Randy Mackay 2016-11-21 14:07:01 +09:00
parent 99fafcb495
commit b7f95d9c25
2 changed files with 2 additions and 12 deletions

View File

@ -1,4 +1,3 @@
// -*- tab-width: 4; Mode: C++; c-basic-offset: 4; indent-tabs-mode: nil -*-
/* /*
* Copyright (C) 2016 Intel Corporation. All rights reserved. * Copyright (C) 2016 Intel Corporation. All rights reserved.
* *
@ -17,9 +16,9 @@
*/ */
#include <AP_HAL/AP_HAL.h> #include <AP_HAL/AP_HAL.h>
#include "AP_RangeFinder_MaxsonarSerialLV.h"
#include <AP_SerialManager/AP_SerialManager.h> #include <AP_SerialManager/AP_SerialManager.h>
#include <ctype.h> #include <ctype.h>
#include "AP_RangeFinder_MaxsonarSerialLV.h"
#define MAXSONAR_SERIAL_LV_BAUD_RATE 9600 #define MAXSONAR_SERIAL_LV_BAUD_RATE 9600
@ -62,13 +61,6 @@ bool AP_RangeFinder_MaxsonarSerialLV::get_reading(uint16_t &reading_cm)
int16_t nbytes = uart->available(); int16_t nbytes = uart->available();
uint16_t count = 0; uint16_t count = 0;
/* MaxSonarSeriaLV might need a manual reconection */
if (nbytes == 0) {
uart->end();
uart->begin(MAXSONAR_SERIAL_LV_BAUD_RATE);
nbytes = uart->available();
}
while (nbytes-- > 0) { while (nbytes-- > 0) {
char c = uart->read(); char c = uart->read();
if (c == '\r') { if (c == '\r') {
@ -85,13 +77,12 @@ bool AP_RangeFinder_MaxsonarSerialLV::get_reading(uint16_t &reading_cm)
} }
} }
if (count == 0) { if (count == 0) {
return false; return false;
} }
// This sonar gives the metrics in inches, so we have to transform this to centimeters // This sonar gives the metrics in inches, so we have to transform this to centimeters
reading_cm = 2.54 * sum / count; reading_cm = 2.54f * sum / count;
return true; return true;
} }

View File

@ -1,4 +1,3 @@
// -*- tab-width: 4; Mode: C++; c-basic-offset: 4; indent-tabs-mode: nil -*-
#pragma once #pragma once
#include "RangeFinder.h" #include "RangeFinder.h"