Paparazzi UAS
v5.12_stable-4-g9b43e9b
Paparazzi is a free software Unmanned Aircraft System.
Main Page
Related Pages
Modules
Data Structures
Files
File List
Globals
All
Data Structures
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Macros
Modules
Pages
spektrum_arch.h
Go to the documentation of this file.
1
/*
2
* Copyright (C) 2010 Eric Parsonage <eric@eparsonage.com>
3
*
4
* This file is part of paparazzi.
5
*
6
* paparazzi is free software; you can redistribute it and/or modify
7
* it under the terms of the GNU General Public License as published by
8
* the Free Software Foundation; either version 2, or (at your option)
9
* any later version.
10
*
11
* paparazzi is distributed in the hope that it will be useful,
12
* but WITHOUT ANY WARRANTY; without even the implied warranty of
13
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14
* GNU General Public License for more details.
15
*
16
* You should have received a copy of the GNU General Public License
17
* along with paparazzi; see the file COPYING. If not, write to
18
* the Free Software Foundation, 59 Temple Place - Suite 330,
19
* Boston, MA 02111-1307, USA.
20
*
21
*/
22
23
#ifndef RADIO_CONTROL_SPEKTRUM_ARCH_H
24
#define RADIO_CONTROL_SPEKTRUM_ARCH_H
25
26
27
/*
28
* All Spektrum and JR 2.4 GHz transmitters
29
* have the same channel assignments.
30
*/
31
32
#define SPEKTRUM_NB_CHANNEL 12
33
34
#ifndef RADIO_CONTROL_NB_CHANNEL
35
#define RADIO_CONTROL_NB_CHANNEL 12
36
#endif
37
38
#if RADIO_CONTROL_NB_CHANNEL > 12
39
#error "RADIO_CONTROL_NB_CHANNEL mustn't be higher than 12."
40
#endif
41
42
/* default channel assignments */
43
#ifndef RADIO_THROTTLE
44
#define RADIO_THROTTLE 0
45
#endif
46
#ifndef RADIO_ROLL
47
#define RADIO_ROLL 1
48
#endif
49
#ifndef RADIO_PITCH
50
#define RADIO_PITCH 2
51
#endif
52
#ifndef RADIO_YAW
53
#define RADIO_YAW 3
54
#endif
55
#ifndef RADIO_GEAR
56
#define RADIO_GEAR 4
57
#endif
58
#ifndef RADIO_FLAP
59
#define RADIO_FLAP 5
60
#endif
61
#define RADIO_AUX1 5
62
#define RADIO_AUX2 6
63
#define RADIO_AUX3 7
64
#define RADIO_AUX4 8
65
#define RADIO_AUX5 9
66
#define RADIO_AUX6 10
67
#define RADIO_AUX7 11
68
69
/* reverse some channels to suit Paparazzi conventions */
70
/* the maximum number of channels a Spektrum can transmit is 12 */
71
#ifndef RADIO_CONTROL_SPEKTRUM_SIGNS
72
#ifdef RADIO_CONTROL_SPEKTRUM_OLD_SIGNS
73
#define RADIO_CONTROL_SPEKTRUM_SIGNS {1,-1,-1,-1,1,-1,1,1,1,1,1,1} // As most transmitters are sold
74
#else
75
#define RADIO_CONTROL_SPEKTRUM_SIGNS {1,1,1,1,1,1,1,1,1,1,1,1} // PPRZ sign convention
76
#endif
77
#endif
78
79
/* really for a 9 channel transmitter
80
we would swap the order of these */
81
#ifndef RADIO_MODE
82
#define RADIO_MODE RADIO_GEAR
83
#endif
84
85
extern
void
RadioControlEventImp
(
void
(*_received_frame_handler)(
void
));
86
/* initialise the uarts used by the parser */
87
void
SpektrumUartInit
(
void
);
88
89
#endif
/* RADIO_CONTROL_SPEKTRUM_ARCH_H */
SpektrumUartInit
void SpektrumUartInit(void)
Definition:
spektrum_arch.c:620
RadioControlEventImp
void RadioControlEventImp(void(*_received_frame_handler)(void))
Definition:
spektrum_arch.c:48
sw
airborne
arch
stm32
subsystems
radio_control
spektrum_arch.h
Generated on Sat Feb 9 2019 06:43:46 for Paparazzi UAS by
1.8.8