Subversion Repositories FlightCtrl

Compare Revisions

Ignore whitespace Rev 517 → Rev 518

/branches/Flight-Ctrl_V0_67g_3_GPS_work_Jochen/rc.c
11,8 → 11,8
#include "rc.h"
#include "main.h"
 
volatile int PPM_in[11];
volatile int PPM_diff[11]; // das diffenzierte Stick-Signal
volatile int PPM_in[15]; //PPM24-Erweiterung (121007Kr)
volatile int PPM_diff[15]; // das diffenzierte Stick-Signal //PPM24-Erweiterung (121007Kr)
volatile unsigned char NewPpmData = 1;
 
//############################################################################
50,14 → 50,14
//Syncronisationspause?
// if((signal > (int) Parameter_UserParam2 * 10) && (signal < 8000))
if((signal > 1100) && (signal < 8000))
if ((signal > 1500) && (signal < 8000))
{
if(index >= 4) NewPpmData = 0; // Null bedeutet: Neue Daten
index = 1;
NewPpmData = 0; // Null bedeutet: Neue Daten
}
else
{
if(index < 10)
if(index < 14) //PPM24-Erweiterung (121007Kr)
{
if((signal > 250) && (signal < 687))
{
65,9 → 65,16
// Stabiles Signal
if(abs(signal - PPM_in[index]) < 6) { if(SenderOkay < 200) SenderOkay += 10;}
tmp = (3 * (PPM_in[index]) + signal) / 4;
// if(tmp > signal+1) tmp--; else
// if(tmp < signal-1) tmp++;
PPM_diff[index] = tmp - PPM_in[index];
//############################################################
// Verhindert einen Restwert der RC-Kanäl bei neutralen Knüppelstellungen, führt
// unter Umständen jedoch zu +/-1 Sprüngen der einzelnen Kanäle. Siehe auch:
// http://forum.mikrokopter.de/topic-2191.html(121107Kr)
//if(tmp > signal+1) tmp--; else
//if(tmp < signal-1) tmp++;
//############################################################
PPM_diff[index] = tmp - PPM_in[index];
PPM_in[index] = tmp;
}
index++;