1
0
mirror of https://bitbucket.org/librepilot/librepilot.git synced 2025-01-31 16:52:10 +01:00

Add support for PPM transmitters up to 12 channels. Small array indexing issue in PIOS_PPM_Get.

This commit is contained in:
James 2011-07-27 00:33:32 +01:00
parent 6a6ec41809
commit 60136f0464
3 changed files with 5 additions and 5 deletions

View File

@ -231,7 +231,7 @@ extern uint32_t pios_com_sbus_id;
//-------------------------
// Receiver PPM input
//-------------------------
#define PIOS_PPM_NUM_INPUTS 8
#define PIOS_PPM_NUM_INPUTS 12
//-------------------------
// Receiver PWM input

View File

@ -204,7 +204,7 @@ extern uint32_t pios_com_sbus_id;
//-------------------------
// Receiver PPM input
//-------------------------
#define PIOS_PPM_NUM_INPUTS 8
#define PIOS_PPM_NUM_INPUTS 12
//-------------------------
// Receiver PWM input

View File

@ -44,9 +44,9 @@ const struct pios_rcvr_driver pios_ppm_rcvr_driver = {
#define PIOS_PPM_IN_MIN_NUM_CHANNELS 4
#define PIOS_PPM_IN_MAX_NUM_CHANNELS PIOS_PPM_NUM_INPUTS
#define PIOS_PPM_STABLE_CHANNEL_COUNT 25 // frames
#define PIOS_PPM_IN_MIN_SYNC_PULSE_US 7000 // microseconds
#define PIOS_PPM_IN_MIN_SYNC_PULSE_US 3800 // microseconds
#define PIOS_PPM_IN_MIN_CHANNEL_PULSE_US 750 // microseconds
#define PIOS_PPM_IN_MAX_CHANNEL_PULSE_US 2400 // microseconds
#define PIOS_PPM_IN_MAX_CHANNEL_PULSE_US 2250 // microseconds
#define PIOS_PPM_INPUT_INVALID 0
/* Local Variables */
@ -170,7 +170,7 @@ void PIOS_PPM_Init(void)
static int32_t PIOS_PPM_Get(uint32_t rcvr_id, uint8_t channel)
{
/* Return error if channel not available */
if (channel > PIOS_PPM_IN_MAX_NUM_CHANNELS) {
if (channel >= PIOS_PPM_IN_MAX_NUM_CHANNELS) {
return -1;
}
return CaptureValue[channel];