Paparazzi UAS
v5.18.0_stable
Paparazzi is a free software Unmanned Aircraft System.
adc.h
Go to the documentation of this file.
1
/*
2
* Paparazzi adc functions
3
*
4
* Copyright (C) 2003-2010 The Paparazzi team
5
*
6
* This file is part of Paparazzi.
7
*
8
* Paparazzi is free software; you can redistribute it and/or modify
9
* it under the terms of the GNU General Public License as published by
10
* the Free Software Foundation; either version 2, or (at your option)
11
* any later version.
12
*
13
* Paparazzi is distributed in the hope that it will be useful,
14
* but WITHOUT ANY WARRANTY; without even the implied warranty of
15
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16
* GNU General Public License for more details.
17
*
18
* You should have received a copy of the GNU General Public License
19
* along with Paparazzi; see the file COPYING. If not, write to
20
* the Free Software Foundation, 59 Temple Place - Suite 330,
21
* Boston, MA 02111-1307, USA.
22
*
23
*/
24
34
#ifndef MCU_PERIPH_ADC_H
35
#define MCU_PERIPH_ADC_H
36
37
#include <
inttypes.h
>
38
#include "mcu_periph/adc_arch.h"
39
40
#define MAX_AV_NB_SAMPLE 0x20
41
#define DEFAULT_AV_NB_SAMPLE 0x20
42
53
struct
adc_buf
{
54
uint32_t
sum
;
/* Sum of samples in buffer (avg = sum / av_nb_sample) */
55
uint16_t
values
[
MAX_AV_NB_SAMPLE
];
/* Buffer for sample values from ADC */
56
uint8_t
head
;
/* Position index of write head in buffer */
57
uint8_t
av_nb_sample
;
/* Number of samples to use in buffer (used for avg) */
58
};
59
70
void
adc_buf_channel
(
uint8_t
adc_channel,
struct
adc_buf
*
s
,
uint8_t
av_nb_sample);
71
73
void
adc_init
(
void
);
74
75
#endif
uint16_t
unsigned short uint16_t
Definition:
types.h:16
s
static uint32_t s
Definition:
light_scheduler.c:33
uint32_t
unsigned long uint32_t
Definition:
types.h:18
adc_buf::values
uint16_t values[MAX_AV_NB_SAMPLE]
Definition:
adc.h:55
adc_buf::sum
uint32_t sum
Definition:
adc.h:54
uint8_t
unsigned char uint8_t
Definition:
types.h:14
adc_buf::av_nb_sample
uint8_t av_nb_sample
Definition:
adc.h:57
adc_buf_channel
void adc_buf_channel(uint8_t adc_channel, struct adc_buf *s, uint8_t av_nb_sample)
Link between ChibiOS ADC drivers and Paparazzi adc_buffers.
Definition:
adc_arch.c:289
MAX_AV_NB_SAMPLE
#define MAX_AV_NB_SAMPLE
Definition:
adc.h:40
adc_init
void adc_init(void)
Starts conversions.
Definition:
adc_arch.c:312
inttypes.h
adc_buf::head
uint8_t head
Definition:
adc.h:56
adc_buf
Generic interface for all ADC hardware drivers, independent from microcontroller architecture.
Definition:
adc.h:53
sw
airborne
mcu_periph
adc.h
Generated on Tue Feb 1 2022 13:51:14 for Paparazzi UAS by
1.8.17