-
Notifications
You must be signed in to change notification settings - Fork 1
Expand file tree
/
Copy pathcppm.h
More file actions
63 lines (55 loc) · 1.84 KB
/
cppm.h
File metadata and controls
63 lines (55 loc) · 1.84 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
/*
* mµOS - my micro OS
*
* Copyright (C)
* 2016 Christian Thäter <ct@pipapo.org>
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
#ifndef MUOS_CPPM_H
#define MUOS_CPPM_H
#include <muos/muos.h>
#if MUOS_CPPM_CHANNELS > 0
#ifdef MUOS_CPPM_RAW
//cppm_api:
//: .Raw values
//: ----
//: uint16_t muos_cppm_channel_raw[MUOS_CPPM_CHANNELS]
//: ----
//:
//: Stores the time in timer ticks as measuered for each channel directly,
//: after applying some configureable filter. This gives the most precision
//: but also needs more memory. Must be enabled with 'MUOS_CPPM_RAW'.
//:
extern volatile uint16_t muos_cppm_channel_raw[MUOS_CPPM_CHANNELS];
#endif
#ifdef MUOS_CPPM_COOKED
//cppm_api:
//: .Raw values
//: ----
//: int8_t muos_cppm_channel_cooked[MUOS_CPPM_CHANNELS]
//: ----
//:
//: Stores the channel data as values from -125 to 125 mapping to
//: the range from 'MUOS_CPPM_COOKED_MIN' to 'MUOS_CPPM_COOKED_MAX'.
//: Little overflows from -128 to 127 are tolerated.
//: Cooked values need less memory and are more stable, but have lower precision.
//: Must be enabled with 'MUOS_CPPM_COOKED'.
//:
extern volatile int8_t muos_cppm_channel_cooked[MUOS_CPPM_CHANNELS];
#endif
void
muos_cppm_50init (void);
#endif
#endif