Loading...
Searching...
No Matches
board.h
Go to the documentation of this file.
1/*
2 * SPDX-FileCopyrightText: 2018 HAW Hamburg
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, 21)
31
32#define LED0_PORT PORT->Group[PA]
33#define LED0_MASK (1 << 21)
34
35#define LED0_OFF (LED0_PORT.OUTCLR.reg = LED0_MASK)
36#define LED0_ON (LED0_PORT.OUTSET.reg = LED0_MASK)
37#define LED0_TOGGLE (LED0_PORT.OUTTGL.reg = LED0_MASK)
38
39#define LED1_PIN GPIO_PIN(PA, 12)
40
41#define LED1_PORT PORT->Group[PA]
42#define LED1_MASK (1 << 12)
43
44#define LED1_OFF (LED1_PORT.OUTSET.reg = LED1_MASK)
45#define LED1_ON (LED1_PORT.OUTCLR.reg = LED1_MASK)
46#define LED1_TOGGLE (LED1_PORT.OUTTGL.reg = LED1_MASK)
47
48#define LED_RED_PIN LED1_PIN
49#define LED_RED_OFF LED1_OFF
50#define LED_RED_ON LED1_ON
51#define LED_RED_TOGGLE LED1_TOGGLE
52
53#define LED2_PIN GPIO_PIN(PB, 15)
54
55#define LED2_PORT PORT->Group[PB]
56#define LED2_MASK (1 << 15)
57
58#define LED2_OFF (LED2_PORT.OUTSET.reg = LED2_MASK)
59#define LED2_ON (LED2_PORT.OUTCLR.reg = LED2_MASK)
60#define LED2_TOGGLE (LED2_PORT.OUTTGL.reg = LED2_MASK)
61
62#define LED_GREEN_PIN LED2_PIN
63#define LED_GREEN_OFF LED2_OFF
64#define LED_GREEN_ON LED2_ON
65#define LED_GREEN_TOGGLE LED2_TOGGLE
66
67#define LED3_PIN GPIO_PIN(PA, 13)
68
69#define LED3_PORT PORT->Group[PA]
70#define LED3_MASK (1 << 13)
71
72#define LED3_OFF (LED3_PORT.OUTSET.reg = LED3_MASK)
73#define LED3_ON (LED3_PORT.OUTCLR.reg = LED3_MASK)
74#define LED3_TOGGLE (LED3_PORT.OUTTGL.reg = LED3_MASK)
75
76#define LED_BLUE_PIN LED3_PIN
77#define LED_BLUE_OFF LED3_OFF
78#define LED_BLUE_ON LED3_ON
79#define LED_BLUE_TOGGLE LED3_TOGGLE
81
86#define GPS_TIMEPULSE_PIN GPIO_PIN(PA, 7)
87#define GPS_TIMEPULSE_MODE GPIO_IN
89
94#define GPS_ENABLE_PIN GPIO_PIN(PA, 28)
95
96#define GPS_ENABLE_PORT PORT->Group[PA]
97#define GPS_ENABLE_MASK (1 << 28)
98
99#define GPS_ENABLE_ON (GPS_ENABLE_PORT.OUTSET.reg = GPS_ENABLE_MASK)
100#define GPS_ENABLE_OFF (GPS_ENABLE_PORT.OUTCLR.reg = GPS_ENABLE_MASK)
102
107#define NB_IOT_ENABLE_PIN GPIO_PIN(PA, 27)
108
109#define NB_IOT_ENABLE_PORT PORT->Group[PA]
110#define NB_IOT_ENABLE_MASK (1 << 27)
111
112#define NB_IOT_ENABLE (NB_IOT_ENABLE_PORT.OUTSET.reg = NB_IOT_ENABLE_MASK)
113#define NB_IOT_DISABLE (NB_IOT_ENABLE_PORT.OUTCLR.reg = NB_IOT_ENABLE_MASK)
114
115#define NB_IOT_RESET_PIN GPIO_PIN(PB, 14)
116
117#define NB_IOT_RESET_PORT PORT->Group[PB]
118#define NB_IOT_RESET_MASK (1 << 14)
119
120#define NB_IOT_RESET_ON (NB_IOT_RESET_PORT.OUTSET.reg = NB_IOT_RESET_MASK)
121#define NB_IOT_RESET_OFF (NB_IOT_RESET_PORT.OUTCLR.reg = NB_IOT_RESET_MASK)
122
123#define NB_IOT_RESET_PIN GPIO_PIN(PB, 14)
124
125#define NB_IOT_RESET_PORT PORT->Group[PB]
126#define NB_IOT_RESET_MASK (1 << 14)
127
128#define NB_IOT_RESET_ON (NB_IOT_RESET_PORT.OUTSET.reg = NB_IOT_RESET_MASK)
129#define NB_IOT_RESET_OFF (NB_IOT_RESET_PORT.OUTCLR.reg = NB_IOT_RESET_MASK)
130
131#define NB_IOT_TX_EN_PIN GPIO_PIN(PB, 13)
132
133#define NB_IOT_TX_EN_PORT PORT->Group[PB]
134#define NB_IOT_TX_EN_MASK (1 << 13)
135
136#define NB_IOT_TX_EN_ON (NB_IOT_TX_EN_PORT.OUTSET.reg = NB_IOT_TX_EN_MASK)
137#define NB_IOT_TX_EN_OFF (NB_IOT_TX_EN_PORT.OUTCLR.reg = NB_IOT_TX_EN_MASK)
138
139#define NB_IOT_TOGGLE_PIN GPIO_PIN(PB, 17)
140
141#define NB_IOT_TOGGLE_PORT PORT->Group[PB]
142#define NB_IOT_TOGGLE_MASK (1 << 17)
143
144#define NB_IOT_TOGGLE_ON (NB_IOT_TOGGLE_PORT.OUTSET.reg = NB_IOT_TOGGLE_MASK)
145#define NB_IOT_TOGGLE_OFF (NB_IOT_TOGGLE_PORT.OUTCLR.reg = NB_IOT_TOGGLE_MASK)
147
148#ifdef __cplusplus
149}
150#endif
151
Low-level GPIO peripheral driver interface definitions.