Paparazzi UAS
v5.14.0_stable-0-g3f680d1
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
max1168.h
Go to the documentation of this file.
1
/*
2
* Copyright (C) 2008-2009 Antoine Drouin <poinix@gmail.com>
3
* Copyright (C) 2012 Gautier Hattenberger
4
*
5
* This file is part of paparazzi.
6
*
7
* paparazzi is free software; you can redistribute it and/or modify
8
* it under the terms of the GNU General Public License as published by
9
* the Free Software Foundation; either version 2, or (at your option)
10
* any later version.
11
*
12
* paparazzi is distributed in the hope that it will be useful,
13
* but WITHOUT ANY WARRANTY; without even the implied warranty of
14
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15
* GNU General Public License for more details.
16
*
17
* You should have received a copy of the GNU General Public License
18
* along with paparazzi; see the file COPYING. If not, write to
19
* the Free Software Foundation, 59 Temple Place - Suite 330,
20
* Boston, MA 02111-1307, USA.
21
*/
22
23
#ifndef MAX1168_H
24
#define MAX1168_H
25
26
#include "
std.h
"
27
28
#define MAX1168_NB_CHAN 8
29
30
#ifndef MAX1168_SLAVE_IDX
31
#define MAX1168_SLAVE_IDX SPI_SLAVE0
32
#endif
33
34
#ifndef MAX1168_SPI_DEV
35
#define MAX1168_SPI_DEV spi1
36
#endif
37
40
#ifndef MAX1168_CONF_CHANNEL
41
#define MAX1168_CONF_CHANNEL 0x7 // select all channels
42
#endif
43
#ifndef MAX1168_CONF_SCAN
44
#define MAX1168_CONF_SCAN 0x1 // scan number of channels selected
45
#endif
46
#ifndef MAX1168_CONF_REF
47
#define MAX1168_CONF_REF 0x0 // internal ref and no power down
48
#endif
49
#ifndef MAX1168_CONF_CLOCK
50
#define MAX1168_CONF_CLOCK 0x1 // internal clock
51
#endif
52
53
#define MAX1168_CONF_CR ((MAX1168_CONF_CHANNEL<<5)|(MAX1168_CONF_SCAN<<3)|(MAX1168_CONF_REF<<1)|(MAX1168_CONF_CLOCK))
54
55
extern
void
max1168_init
(
void
);
56
extern
void
max1168_read
(
void
);
57
extern
void
max1168_event
(
void
);
58
59
#define MAX1168_IDLE 0
60
#define MAX1168_SENDING_REQ 1
61
#define MAX1168_GOT_EOC 2
62
#define MAX1168_READING_RES 3
63
#define MAX1168_DATA_AVAILABLE 4
64
extern
volatile
uint8_t
max1168_status
;
65
66
extern
uint16_t
max1168_values
[
MAX1168_NB_CHAN
];
67
68
#define Max1168Periodic() { \
69
if (max1168_status == MAX1168_IDLE) { \
70
max1168_read(); \
71
} \
72
}
73
74
/* underlying architecture */
75
#include "peripherals/max1168_arch.h"
76
/* must be implemented by underlying architecture */
77
extern
void
max1168_arch_init
(
void
);
78
79
80
#endif
/* MAX1168_H */
uint16_t
unsigned short uint16_t
Definition:
types.h:16
max1168_event
void max1168_event(void)
Definition:
max1168.c:101
max1168_read
void max1168_read(void)
Definition:
max1168_arch.c:26
MAX1168_NB_CHAN
#define MAX1168_NB_CHAN
Definition:
max1168.h:28
std.h
max1168_status
volatile uint8_t max1168_status
Definition:
max1168.c:27
uint8_t
unsigned char uint8_t
Definition:
types.h:14
max1168_arch_init
void max1168_arch_init(void)
Definition:
max1168_arch.c:31
max1168_values
uint16_t max1168_values[MAX1168_NB_CHAN]
Definition:
max1168.c:28
max1168_init
void max1168_init(void)
Definition:
max1168.c:40
sw
airborne
peripherals
max1168.h
Generated on Sat Feb 9 2019 07:05:55 for Paparazzi UAS by
1.8.8