Subversion Repositories FlightCtrl

Rev

Rev 2122 | Go to most recent revision | Only display areas with differences | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 2122 Rev 2124
1
#ifndef _RC_H
1
#ifndef _RC_H
2
#define _RC_H
2
#define _RC_H
3
 
3
 
4
#include <inttypes.h>
4
#include <inttypes.h>
5
#include "configuration.h"
5
#include "configuration.h"
6
 
-
 
7
// Number of cycles a command must be repeated before commit.
-
 
8
#define COMMAND_TIMER 200
-
 
9
 
6
 
10
extern void RC_Init(void);
7
extern void RC_Init(void);
11
// the RC-Signal. todo: Not export any more.
8
// the RC-Signal. todo: Not export any more.
12
extern volatile int16_t PPM_in[MAX_CHANNELS];
9
extern volatile int16_t PPM_in[MAX_CHANNELS];
13
// extern volatile int16_t PPM_diff[MAX_CHANNELS];      // the differentiated RC-Signal. Should that be exported??
10
// extern volatile int16_t PPM_diff[MAX_CHANNELS];      // the differentiated RC-Signal. Should that be exported??
14
extern volatile uint8_t NewPpmData; // 0 indicates a new recieved PPM Frame
11
extern volatile uint8_t NewPpmData; // 0 indicates a new recieved PPM Frame
15
extern volatile uint8_t RCQuality;  // rc signal quality indicator (0 to 200)
12
extern volatile uint8_t RCQuality;  // rc signal quality indicator (0 to 200)
16
 
13
 
17
// defines for lookup staticParams.ChannelAssignment
14
// defines for lookup staticParams.ChannelAssignment
18
#define CH_ELEVATOR     0
15
#define CH_ELEVATOR     0
19
#define CH_AILERONS         1
16
#define CH_AILERONS         1
20
#define CH_THROTTLE         2
17
#define CH_THROTTLE         2
21
#define CH_RUDDER       3
18
#define CH_RUDDER       3
22
#define CH_MODESWITCH   4
19
#define CH_MODESWITCH   4
23
#define CH_POTS         4
20
#define CH_POTS         4
-
 
21
 
-
 
22
// Number of cycles a command must be repeated before commit.
-
 
23
#define COMMAND_TIMER 200
-
 
24
#define COMMAND_CHANNEL_HORIZONTAL CH_AILERONS
24
 
25
 
25
// void RC_periodicTask(void);
26
// void RC_periodicTask(void);
26
void RC_periodicTaskAndPRYT(int16_t* PRYT);
27
void RC_periodicTaskAndPRYT(int16_t* PRYT);
27
uint8_t RC_getArgument(void);
28
uint8_t RC_getArgument(void);
28
uint8_t RC_getCommand(void);
29
uint8_t RC_getCommand(void);
29
int16_t RC_getVariable(uint8_t varNum);
30
int16_t RC_getVariable(uint8_t varNum);
30
void RC_calibrate(void);
31
void RC_calibrate(void);
31
uint8_t RC_getSignalQuality(void);
32
uint8_t RC_getSignalQuality(void);
32
int16_t RC_getZeroThrottle(void);
33
int16_t RC_getZeroThrottle(void);
33
void RC_setZeroTrim(void);
34
void RC_setZeroTrim(void);
34
 
35
 
35
 
36
 
36
#ifdef USE_MK3MAG
37
#ifdef USE_MK3MAG
37
uint8_t RC_testCompassCalState(void);
38
uint8_t RC_testCompassCalState(void);
38
#endif
39
#endif
39
#endif //_RC_H
40
#endif //_RC_H
40
 
41