mirror of
https://gitee.com/mirrors_PX4/PX4-Autopilot.git
synced 2026-10-19 01:13:34 +08:00
Ported almost everything to new param interface, ready for serious testing
This commit is contained in:
@@ -108,6 +108,9 @@ ORB_DEFINE(manual_control_setpoint, struct manual_control_setpoint_s);
|
||||
#include "topics/optical_flow.h"
|
||||
ORB_DEFINE(optical_flow, struct optical_flow_s);
|
||||
|
||||
#include "topics/subsystem_info.h"
|
||||
ORB_DEFINE(subsystem_info, struct subsystem_info_s);
|
||||
|
||||
#include "topics/actuator_controls.h"
|
||||
ORB_DEFINE(actuator_controls_0, struct actuator_controls_s);
|
||||
ORB_DEFINE(actuator_controls_1, struct actuator_controls_s);
|
||||
|
||||
@@ -62,11 +62,6 @@ enum RC_CHANNELS_STATUS
|
||||
* This defines the mapping of the RC functions.
|
||||
* The value assigned to the specific function corresponds to the entry of
|
||||
* the channel array chan[].
|
||||
* Ex. To read out the scaled Pitch value:
|
||||
* pitch = global_data_rc_channels->chan[PITCH].scale;
|
||||
* The override is on channel 8, since we don't usually have a 12 channel RC
|
||||
* and channel 5/6 (GRAUPNER/FUTABA) are mapped to the second ROLL servo, which
|
||||
* can only be disabled on more advanced RC sets.
|
||||
*/
|
||||
enum RC_CHANNELS_FUNCTION
|
||||
{
|
||||
@@ -98,7 +93,7 @@ struct rc_channels_s {
|
||||
uint16_t override;
|
||||
enum RC_CHANNELS_STATUS status; /**< status of the channel */
|
||||
} chan[RC_CHANNELS_FUNCTION_MAX];
|
||||
uint8_t chan_count; /**< maximum number of valid channels */
|
||||
uint8_t chan_count; /**< maximum number of valid channels */
|
||||
|
||||
/*String array to store the names of the functions*/
|
||||
const char function_name[RC_CHANNELS_FUNCTION_MAX][20];
|
||||
|
||||
@@ -0,0 +1,92 @@
|
||||
/****************************************************************************
|
||||
*
|
||||
* Copyright (C) 2008-2012 PX4 Development Team. All rights reserved.
|
||||
* Author: @author Lorenz Meier <lm@inf.ethz.ch>
|
||||
* @author Thomas Gubler <thomasgubler@student.ethz.ch>
|
||||
* @author Julian Oes <joes@student.ethz.ch>
|
||||
*
|
||||
* Redistribution and use in source and binary forms, with or without
|
||||
* modification, are permitted provided that the following conditions
|
||||
* are met:
|
||||
*
|
||||
* 1. Redistributions of source code must retain the above copyright
|
||||
* notice, this list of conditions and the following disclaimer.
|
||||
* 2. Redistributions in binary form must reproduce the above copyright
|
||||
* notice, this list of conditions and the following disclaimer in
|
||||
* the documentation and/or other materials provided with the
|
||||
* distribution.
|
||||
* 3. Neither the name PX4 nor the names of its contributors may be
|
||||
* used to endorse or promote products derived from this software
|
||||
* without specific prior written permission.
|
||||
*
|
||||
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
|
||||
* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
|
||||
* LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
|
||||
* FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
|
||||
* COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
|
||||
* INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
|
||||
* BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS
|
||||
* OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
|
||||
* AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
|
||||
* LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
|
||||
* ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
|
||||
* POSSIBILITY OF SUCH DAMAGE.
|
||||
*
|
||||
****************************************************************************/
|
||||
|
||||
/**
|
||||
* @file subsystem_info.h
|
||||
* Definition of the subsystem info topic.
|
||||
*/
|
||||
|
||||
#ifndef TOPIC_SUBSYSTEM_INFO_H_
|
||||
#define TOPIC_SUBSYSTEM_INFO_H_
|
||||
|
||||
#include <stdint.h>
|
||||
#include <stdbool.h>
|
||||
#include "../uORB.h"
|
||||
|
||||
/**
|
||||
* @addtogroup topics
|
||||
*/
|
||||
|
||||
enum SUBSYSTEM_TYPE
|
||||
{
|
||||
SUBSYSTEM_TYPE_GYRO = 1,
|
||||
SUBSYSTEM_TYPE_ACC = 2,
|
||||
SUBSYSTEM_TYPE_MAG = 4,
|
||||
SUBSYSTEM_TYPE_ABSPRESSURE = 8,
|
||||
SUBSYSTEM_TYPE_DIFFPRESSURE = 16,
|
||||
SUBSYSTEM_TYPE_GPS = 32,
|
||||
SUBSYSTEM_TYPE_OPTICALFLOW = 64,
|
||||
SUBSYSTEM_TYPE_CVPOSITION = 128,
|
||||
SUBSYSTEM_TYPE_LASERPOSITION = 256,
|
||||
SUBSYSTEM_TYPE_EXTERNALGROUNDTRUTH = 512,
|
||||
SUBSYSTEM_TYPE_ANGULARRATECONTROL = 1024,
|
||||
SUBSYSTEM_TYPE_ATTITUDESTABILIZATION = 2048,
|
||||
SUBSYSTEM_TYPE_YAWPOSITION = 4096,
|
||||
SUBSYSTEM_TYPE_ALTITUDECONTROL = 16384,
|
||||
SUBSYSTEM_TYPE_POSITIONCONTROL = 32768,
|
||||
SUBSYSTEM_TYPE_MOTORCONTROL = 65536
|
||||
};
|
||||
|
||||
/**
|
||||
* State of individual sub systems
|
||||
*/
|
||||
struct subsystem_info_s {
|
||||
bool present;
|
||||
bool enabled;
|
||||
bool ok;
|
||||
|
||||
enum SUBSYSTEM_TYPE subsystem_type;
|
||||
};
|
||||
|
||||
/**
|
||||
* @}
|
||||
*/
|
||||
|
||||
/* register this as object request broker structure */
|
||||
ORB_DECLARE(subsystem_info);
|
||||
|
||||
#endif /* TOPIC_SUBSYSTEM_INFO_H_ */
|
||||
|
||||
Reference in New Issue
Block a user