Paparazzi UAS
v5.18.0_stable
Paparazzi is a free software Unmanned Aircraft System.
gpio_arch.h
Go to the documentation of this file.
1
/*
2
* Copyright (C) 2013 Felix Ruess <felix.ruess@gmail.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
29
#ifndef GPIO_ARCH_H
30
#define GPIO_ARCH_H
31
32
typedef
uint32_t
gpio_port_t
;
33
34
#define GPIOA 0
35
#define GPIOB 0
36
#define GPIOC 0
37
#define GPIOD 0
38
#define GPIOE 0
39
#define GPIOF 0
40
#define GPIOG 0
41
#define GPIOH 0
42
43
#define GPIO0 0
44
#define GPIO1 0
45
#define GPIO2 0
46
#define GPIO3 0
47
#define GPIO4 0
48
#define GPIO5 0
49
#define GPIO6 0
50
#define GPIO7 0
51
#define GPIO8 0
52
#define GPIO9 0
53
#define GPIO10 0
54
#define GPIO11 0
55
#define GPIO12 0
56
#define GPIO13 0
57
#define GPIO14 0
58
#define GPIO15 0
59
// on LCP21xx we have 32bit wide ports
60
#define GPIO16 0
61
#define GPIO17 0
62
#define GPIO18 0
63
#define GPIO19 0
64
#define GPIO20 0
65
#define GPIO21 0
66
#define GPIO22 0
67
#define GPIO23 0
68
#define GPIO24 0
69
#define GPIO25 0
70
#define GPIO26 0
71
#define GPIO27 0
72
#define GPIO28 0
73
#define GPIO29 0
74
#define GPIO30 0
75
#define GPIO31 0
76
77
static
inline
void
gpio_setup_output
(
gpio_port_t
port __attribute__((unused)),
uint16_t
pin __attribute__((unused))) {}
78
static
inline
void
gpio_setup_input
(
gpio_port_t
port __attribute__((unused)),
uint16_t
pin __attribute__((unused))) {}
79
static
inline
void
gpio_set
(
gpio_port_t
port __attribute__((unused)),
uint16_t
pin __attribute__((unused))) {}
80
static
inline
void
gpio_clear
(
gpio_port_t
port __attribute__((unused)),
uint16_t
pin __attribute__((unused))) {}
81
static
inline
void
gpio_toggle
(
gpio_port_t
port __attribute__((unused)),
uint16_t
pin __attribute__((unused))) {}
82
static
inline
uint16_t
gpio_get
(
gpio_port_t
gpioport __attribute__((unused)),
uint16_t
gpios __attribute__((unused))) {
return
FALSE
; }
83
84
#endif
/* GPIO_ARCH_H */
uint16_t
unsigned short uint16_t
Definition:
types.h:16
uint32_t
unsigned long uint32_t
Definition:
types.h:18
gpio_set
void gpio_set(uint32_t port, uint16_t pin)
Set a gpio output to high level.
Definition:
gpio_arch.c:35
gpio_clear
void gpio_clear(uint32_t port, uint16_t pin)
Clear a gpio output to low level.
Definition:
gpio_arch.c:37
gpio_setup_input
void gpio_setup_input(ioportid_t port, uint16_t gpios)
Setup one or more pins of the given GPIO port as inputs.
Definition:
gpio_arch.c:40
gpio_get
uint16_t gpio_get(uint32_t gpioport, uint16_t gpios)
Read a gpio value.
Definition:
gpio_arch.c:39
gpio_setup_output
void gpio_setup_output(ioportid_t port, uint16_t gpios)
Setup one or more pins of the given GPIO port as outputs.
Definition:
gpio_arch.c:33
FALSE
#define FALSE
Definition:
std.h:5
gpio_toggle
static void gpio_toggle(gpio_port_t port, uint16_t pin)
Definition:
gpio_arch.h:81
gpio_port_t
ioportid_t gpio_port_t
Abstract gpio port type for hardware independent part.
Definition:
gpio_arch.h:39
sw
airborne
arch
sim
mcu_periph
gpio_arch.h
Generated on Tue Feb 1 2022 13:51:12 for Paparazzi UAS by
1.8.17