Loading...
Searching...
No Matches
board.h
Go to the documentation of this file.
1/*
2 * SPDX-FileCopyrightText: 2019 Kees Bakker, SODAQ
3 * SPDX-License-Identifier: LGPL-2.1-only
4 */
5
6#pragma once
7
17
18#include "cpu.h"
19#include "board_common.h"
20#include "periph/gpio.h"
21
22#ifdef __cplusplus
23extern "C" {
24#endif
25
30#define LED0_PIN GPIO_PIN(PA, 16)
31#define LED0_PORT PORT->Group[PA]
32#define LED0_MASK (1 << 16)
33
34#define LED0_OFF (LED0_PORT.OUTSET.reg = LED0_MASK)
35#define LED0_ON (LED0_PORT.OUTCLR.reg = LED0_MASK)
36#define LED0_TOGGLE (LED0_PORT.OUTTGL.reg = LED0_MASK)
37
38#define LED_GREEN_PIN LED0_PIN
39#define LED_GREEN_OFF LED0_OFF
40#define LED_GREEN_ON LED0_ON
41#define LED_GREEN_TOGGLE LED0_TOGGLE
42
43#define LED1_PIN GPIO_PIN(PA, 14)
44#define LED1_PORT PORT->Group[PA]
45#define LED1_MASK (1 << 14)
46
47#define LED1_OFF (LED1_PORT.OUTSET.reg = LED1_MASK)
48#define LED1_ON (LED1_PORT.OUTCLR.reg = LED1_MASK)
49#define LED1_TOGGLE (LED1_PORT.OUTTGL.reg = LED1_MASK)
50
51#define LED_RED_PIN LED1_PIN
52#define LED_RED_OFF LED1_OFF
53#define LED_RED_ON LED1_ON
54#define LED_RED_TOGGLE LED1_TOGGLE
55
56#define LED2_PIN GPIO_PIN(PA, 15)
57#define LED2_PORT PORT->Group[PA]
58#define LED2_MASK (1 << 15)
59
60#define LED2_OFF (LED2_PORT.OUTSET.reg = LED2_MASK)
61#define LED2_ON (LED2_PORT.OUTCLR.reg = LED2_MASK)
62#define LED2_TOGGLE (LED2_PORT.OUTTGL.reg = LED2_MASK)
63
64#define LED_BLUE_PIN LED2_PIN
65#define LED_BLUE_OFF LED2_OFF
66#define LED_BLUE_ON LED2_ON
67#define LED_BLUE_TOGGLE LED2_TOGGLE
69
74#define BTN0_PIN GPIO_PIN(PB, 8)
75#define BTN0_MODE GPIO_IN
77
82#define GPS_TIMEPULSE_PIN GPIO_PIN(PA, 17)
83#define GPS_TIMEPULSE_MODE GPIO_IN
85
90#define GPS_ENABLE_PIN GPIO_PIN(PA, 18)
91
92#define GPS_ENABLE_PORT PORT->Group[PA]
93#define GPS_ENABLE_MASK (1 << 18)
94
95#define GPS_ENABLE_ON (GPS_ENABLE_PORT.OUTSET.reg = GPS_ENABLE_MASK)
96#define GPS_ENABLE_OFF (GPS_ENABLE_PORT.OUTCLR.reg = GPS_ENABLE_MASK)
98
105#define SARA_ENABLE_PIN GPIO_PIN(PA, 4)
106
107#define SARA_ENABLE_PORT PORT->Group[PA]
108#define SARA_ENABLE_MASK (1 << 4)
109
110#define SARA_ENABLE_ON (SARA_ENABLE_PORT.OUTSET.reg = SARA_ENABLE_MASK)
111#define SARA_ENABLE_OFF (SARA_ENABLE_PORT.OUTCLR.reg = SARA_ENABLE_MASK)
113
120#define SARA_TX_ENABLE_PIN GPIO_PIN(PA, 27)
121
122#define SARA_TX_ENABLE_PORT PORT->Group[PA]
123#define SARA_TX_ENABLE_MASK (1 << 27)
124
125#define SARA_TX_ENABLE_ON (SARA_TX_ENABLE_PORT.OUTSET.reg = SARA_TX_ENABLE_MASK)
126#define SARA_TX_ENABLE_OFF (SARA_TX_ENABLE_PORT.OUTCLR.reg = SARA_TX_ENABLE_MASK)
128
137#define SARA_R4XX_PWR_ON_PIN GPIO_PIN(PB, 10)
138
139#define SARA_R4XX_PWR_ON_PORT PORT->Group[PB]
140#define SARA_R4XX_PWR_ON_MASK (1 << 10)
141
142#define SARA_R4XX_PWR_ON_ON (SARA_R4XX_PWR_ON_PORT.OUTSET.reg = SARA_R4XX_PWR_ON_MASK)
143#define SARA_R4XX_PWR_ON_OFF (SARA_R4XX_PWR_ON_PORT.OUTCLR.reg = SARA_R4XX_PWR_ON_MASK)
145
146#define SARA_STATUS_PIN GPIO_PIN(PA, 28)
147
154#define INT_MAG_PIN GPIO_PIN(PA, 19)
155#define INT_MAG_MODE GPIO_IN
157
164#define INT1_XL_PIN GPIO_PIN(PA, 20)
165#define INT1_XL_MODE GPIO_IN
167
174#define INT2_XL_PIN GPIO_PIN(PA, 21)
175#define INT2_XL_MODE GPIO_IN
177
178#ifdef __cplusplus
179}
180#endif
181
Low-level GPIO peripheral driver interface definitions.