AP_InertialSensor: updates for ERLE board type

This commit is contained in:
Andrew Tridgell 2014-07-14 08:51:44 +10:00
parent 44320708a7
commit ab7e96b9de
6 changed files with 23 additions and 22 deletions

View File

@ -11,7 +11,7 @@
maximum number of INS instances available on this platform. If more maximum number of INS instances available on this platform. If more
than 1 then redundent sensors may be available than 1 then redundent sensors may be available
*/ */
#if CONFIG_HAL_BOARD == HAL_BOARD_PX4 || CONFIG_HAL_BOARD == HAL_BOARD_LINUX || CONFIG_HAL_BOARD == HAL_BOARD_AVR_SITL #if CONFIG_HAL_BOARD == HAL_BOARD_PX4 || CONFIG_HAL_BOARD == HAL_BOARD_LINUX || CONFIG_HAL_BOARD == HAL_BOARD_AVR_SITL || CONFIG_HAL_BOARD == HAL_BOARD_ERLE
#define INS_MAX_INSTANCES 3 #define INS_MAX_INSTANCES 3
#elif CONFIG_HAL_BOARD == HAL_BOARD_VRBRAIN #elif CONFIG_HAL_BOARD == HAL_BOARD_VRBRAIN
#define INS_MAX_INSTANCES 2 #define INS_MAX_INSTANCES 2

View File

@ -21,7 +21,7 @@
// L3G4200D gyro http://www.st.com/st-web-ui/static/active/en/resource/technical/document/datasheet/CD00265057.pdf // L3G4200D gyro http://www.st.com/st-web-ui/static/active/en/resource/technical/document/datasheet/CD00265057.pdf
#include <AP_HAL.h> #include <AP_HAL.h>
#if CONFIG_HAL_BOARD == HAL_BOARD_LINUX #if CONFIG_HAL_BOARD == HAL_BOARD_LINUX || CONFIG_HAL_BOARD == HAL_BOARD_ERLE
#include <AP_Math.h> #include <AP_Math.h>
#include "AP_InertialSensor_L3G4200D.h" #include "AP_InertialSensor_L3G4200D.h"

View File

@ -4,7 +4,7 @@
#define __AP_INERTIAL_SENSOR_L3G4200D_H__ #define __AP_INERTIAL_SENSOR_L3G4200D_H__
#include <AP_HAL.h> #include <AP_HAL.h>
#if CONFIG_HAL_BOARD == HAL_BOARD_LINUX #if CONFIG_HAL_BOARD == HAL_BOARD_LINUX || CONFIG_HAL_BOARD == HAL_BOARD_ERLE
#include <AP_Progmem.h> #include <AP_Progmem.h>
#include "AP_InertialSensor.h" #include "AP_InertialSensor.h"

View File

@ -22,7 +22,7 @@
*/ */
#include <AP_HAL.h> #include <AP_HAL.h>
#if CONFIG_HAL_BOARD == HAL_BOARD_LINUX #if CONFIG_HAL_BOARD == HAL_BOARD_LINUX || CONFIG_HAL_BOARD == HAL_BOARD_ERLE
#include <AP_Math.h> #include <AP_Math.h>
#include "AP_InertialSensor_MPU9150.h" #include "AP_InertialSensor_MPU9150.h"
@ -412,22 +412,23 @@ uint16_t AP_InertialSensor_MPU9150::_init_sensor( Sample_rate sample_rate )
rev = ((buff[5] & 0x01) << 2) | ((buff[3] & 0x01) << 1) | rev = ((buff[5] & 0x01) << 2) | ((buff[3] & 0x01) << 1) |
(buff[1] & 0x01); (buff[1] & 0x01);
if (rev) { // Do not do the checking, for some reason the MPU-9150 returns 0
if (rev == 1){ // if (rev) {
/* Congrats, these parts are better. */ // if (rev == 1){
; // /* Congrats, these parts are better. */
} // ;
else if (rev == 2){ // }
; // else if (rev == 2){
} // ;
else { // }
hal.scheduler->panic(PSTR("AP_InertialSensor_MPU9150: Unsupported software product rev.\n")); // else {
goto failed; // hal.scheduler->panic(PSTR("AP_InertialSensor_MPU9150: Unsupported software product rev.\n"));
} // goto failed;
} else { // }
hal.scheduler->panic(PSTR("Product ID read as 0 indicates device is either incompatible or an MPU3050.\n")); // } else {
goto failed; // hal.scheduler->panic(PSTR("Product ID read as 0 indicates device is either incompatible or an MPU3050.\n"));
} // goto failed;
// }
// Set gyro full-scale range [250, 500, 1000, 2000] // Set gyro full-scale range [250, 500, 1000, 2000]
if (mpu_set_gyro_fsr(2000)){ if (mpu_set_gyro_fsr(2000)){

View File

@ -4,7 +4,7 @@
#define __AP_INERTIAL_SENSOR_MPU9150_H__ #define __AP_INERTIAL_SENSOR_MPU9150_H__
#include <AP_HAL.h> #include <AP_HAL.h>
#if CONFIG_HAL_BOARD == HAL_BOARD_LINUX #if CONFIG_HAL_BOARD == HAL_BOARD_LINUX || CONFIG_HAL_BOARD == HAL_BOARD_ERLE
#include <AP_Progmem.h> #include <AP_Progmem.h>
#include "AP_InertialSensor.h" #include "AP_InertialSensor.h"

View File

@ -1,7 +1,7 @@
/// -*- tab-width: 4; Mode: C++; c-basic-offset: 4; indent-tabs-mode: nil -*- /// -*- tab-width: 4; Mode: C++; c-basic-offset: 4; indent-tabs-mode: nil -*-
#include <AP_HAL.h> #include <AP_HAL.h>
#if CONFIG_HAL_BOARD == HAL_BOARD_APM1 || CONFIG_HAL_BOARD == HAL_BOARD_LINUX #if CONFIG_HAL_BOARD == HAL_BOARD_APM1 || CONFIG_HAL_BOARD == HAL_BOARD_LINUX || CONFIG_HAL_BOARD == HAL_BOARD_ERLE
#include "AP_InertialSensor_Oilpan.h" #include "AP_InertialSensor_Oilpan.h"
const extern AP_HAL::HAL& hal; const extern AP_HAL::HAL& hal;