Paparazzi UAS
v5.10_stable-5-g83a0da5-dirty
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
adc_arch.h
Go to the documentation of this file.
1
/*
2
* Copyright (C) 2013 AggieAir, A Remote Sensing Unmanned Aerial System for Scientific Applications
3
* Utah State University, http://aggieair.usu.edu/
4
*
5
* Michal Podhradsky (michal.podhradsky@aggiemail.usu.edu)
6
* Calvin Coopmans (c.r.coopmans@ieee.org)
7
*
8
* Copyright (C) 2015 Gautier Hattenberger, Alexandre Bustico
9
*
10
* This file is part of paparazzi.
11
*
12
* paparazzi is free software; you can redistribute it and/or modify
13
* it under the terms of the GNU General Public License as published by
14
* the Free Software Foundation; either version 2, or (at your option)
15
* any later version.
16
*
17
* paparazzi is distributed in the hope that it will be useful,
18
* but WITHOUT ANY WARRANTY; without even the implied warranty of
19
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
20
* GNU General Public License for more details.
21
*
22
* You should have received a copy of the GNU General Public License
23
* along with paparazzi; see the file COPYING. If not, write to
24
* the Free Software Foundation, 59 Temple Place - Suite 330,
25
* Boston, MA 02111-1307, USA.
26
*/
33
#ifndef ADC_ARCH_H
34
#define ADC_ARCH_H
35
36
#include "hal.h"
37
38
#include BOARD_CONFIG
39
40
// NB_ADCx_CHANNELS
41
enum
adc1_channels
{
42
#ifdef AD1_1_CHANNEL
43
AD1_1,
44
#endif
45
#ifdef AD1_2_CHANNEL
46
AD1_2,
47
#endif
48
#ifdef AD1_3_CHANNEL
49
AD1_3,
50
#endif
51
#ifdef AD1_4_CHANNEL
52
AD1_4,
53
#endif
54
#ifdef AD1_5_CHANNEL
55
AD1_5,
56
#endif
57
#ifdef AD1_6_CHANNEL
58
AD1_6,
59
#endif
60
#ifdef AD1_7_CHANNEL
61
AD1_7,
62
#endif
63
#ifdef AD1_8_CHANNEL
64
AD1_8,
65
#endif
66
#ifdef AD1_9_CHANNEL
67
AD1_9,
68
#endif
69
#ifdef AD1_10_CHANNEL
70
AD1_10,
71
#endif
72
#ifdef AD1_11_CHANNEL
73
AD1_11,
74
#endif
75
#ifdef AD1_12_CHANNEL
76
AD1_12,
77
#endif
78
#ifdef AD1_13_CHANNEL
79
AD1_13,
80
#endif
81
#ifdef AD1_14_CHANNEL
82
AD1_14,
83
#endif
84
#ifdef AD1_15_CHANNEL
85
AD1_15,
86
#endif
87
#ifdef AD1_16_CHANNEL
88
AD1_16,
89
#endif
90
NB_ADC1_CHANNELS
91
};
92
93
#define ADC_NUM_CHANNELS (NB_ADC1_CHANNELS)
94
95
// ADC error flags
96
extern
uint8_t
adc_error_flag
;
97
extern
ADCDriver *
adcp_err
;
98
99
#if USE_ADC_WATCHDOG
100
101
/* Watchdog callback type definition
102
*/
103
typedef
void (*adc_watchdog_callback)(void);
104
105
/* Watchdog register function
106
*
107
* @param adc adc bank to monitor
108
* @param channel adc channel to monitor
109
* @param vmin low threshhold for callback trigger
110
* @param cb callback function call within ISR locked zone
111
*/
112
extern
void
register_adc_watchdog(ADCDriver *adc, adc_channels_num_t
channel
, adcsample_t
vmin
,
113
adc_watchdog_callback cb);
114
115
#endif
116
117
118
119
#endif
/* ADC_ARCH_H */
NB_ADC1_CHANNELS
Definition:
adc_arch.h:90
adc1_channels
adc1_channels
Definition:
adc_arch.h:41
adc_error_flag
uint8_t adc_error_flag
Definition:
adc_arch.c:122
vmin
float vmin
Definition:
obstacle_avoidance.c:120
uint8_t
unsigned char uint8_t
Definition:
types.h:14
channel
static uint8_t channel
Definition:
ADS8344.c:80
adcp_err
ADCDriver * adcp_err
Definition:
adc_arch.c:123
sw
airborne
arch
chibios
mcu_periph
adc_arch.h
Generated on Wed Aug 28 2019 16:28:52 for Paparazzi UAS by
1.8.8