Paparazzi UAS v7.0_unstable
Paparazzi is a free software Unmanned Aircraft System.
All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Modules Pages
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
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
77static inline void gpio_setup_output(gpio_port_t port __attribute__((unused)), uint16_t pin __attribute__((unused))) {}
78static inline void gpio_setup_input(gpio_port_t port __attribute__((unused)), uint16_t pin __attribute__((unused))) {}
79static inline void gpio_set(gpio_port_t port __attribute__((unused)), uint16_t pin __attribute__((unused))) {}
80static inline void gpio_clear(gpio_port_t port __attribute__((unused)), uint16_t pin __attribute__((unused))) {}
81static inline void gpio_toggle(gpio_port_t port __attribute__((unused)), uint16_t pin __attribute__((unused))) {}
82static inline uint16_t gpio_get(gpio_port_t gpioport __attribute__((unused)), uint16_t gpios __attribute__((unused))) { return FALSE; }
83
84#endif /* GPIO_ARCH_H */
static void gpio_set(ioportid_t port, uint16_t pin)
Set a gpio output to high level.
Definition gpio_arch.h:104
static void gpio_clear(ioportid_t port, uint16_t pin)
Clear a gpio output to low level.
Definition gpio_arch.h:114
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
ioportid_t gpio_port_t
Abstract gpio port type for hardware independent part.
Definition gpio_arch.h:39
static void gpio_toggle(ioportid_t port, uint16_t pin)
Toggle a gpio output to low level.
Definition gpio_arch.h:124
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
static uint8_t gpio_get(ioportid_t port, uint16_t pin)
Get level of a gpio.
Definition gpio_arch.h:94
uint16_t foo
Definition main_demo5.c:58
#define FALSE
Definition std.h:5
unsigned short uint16_t
Typedef defining 16 bit unsigned short type.
unsigned int uint32_t
Typedef defining 32 bit unsigned int type.