board.h
Go to the documentation of this file.
1 /*
2  * Copyright (C) 2017 Kees Bakker, SODAQ
3  *
4  * This file is subject to the terms and conditions of the GNU Lesser
5  * General Public License v2.1. See the file LICENSE in the top level
6  * directory for more details.
7  */
8 
19 #ifndef BOARD_H
20 #define BOARD_H
21 
22 #include "cpu.h"
23 #include "board_common.h"
24 
25 #ifdef __cplusplus
26 extern "C" {
27 #endif
28 
33 #define LED0_PIN GPIO_PIN(PA, 15)
34 
35 #define LED0_PORT PORT->Group[PA]
36 #define LED0_MASK (1 << 15)
37 
38 #define LED0_OFF (LED0_PORT.OUTSET.reg = LED0_MASK)
39 #define LED0_ON (LED0_PORT.OUTCLR.reg = LED0_MASK)
40 #define LED0_TOGGLE (LED0_PORT.OUTTGL.reg = LED0_MASK)
41 
42 #define LED1_PIN GPIO_PIN(PB, 10)
43 
44 #define LED1_PORT PORT->Group[PB]
45 #define LED1_MASK (1 << 10)
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 LED2_PIN GPIO_PIN(PB, 11)
52 
53 #define LED2_PORT PORT->Group[PB]
54 #define LED2_MASK (1 << 11)
55 
56 #define LED2_OFF (LED2_PORT.OUTSET.reg = LED2_MASK)
57 #define LED2_ON (LED2_PORT.OUTCLR.reg = LED2_MASK)
58 #define LED2_TOGGLE (LED2_PORT.OUTTGL.reg = LED2_MASK)
59 
64 #define BTN0_PIN GPIO_PIN(PA, 16)
65 #define BTN0_MODE GPIO_IN
66 
71 #define GPS_TIMEPULSE_PIN GPIO_PIN(PA, 14)
72 #define GPS_TIMEPULSE_MODE GPIO_IN
73 
79 #define GPS_ENABLE_PIN GPIO_PIN(PA, 18)
80 
81 #define GPS_ENABLE_PORT PORT->Group[PA]
82 #define GPS_ENABLE_MASK (1 << 18)
83 
84 #define GPS_ENABLE_ON (GPS_ENABLE_PORT.OUTSET.reg = GPS_ENABLE_MASK)
85 #define GPS_ENABLE_OFF (GPS_ENABLE_PORT.OUTCLR.reg = GPS_ENABLE_MASK)
86 
92 #define LORA_RESET_PIN GPIO_PIN(PA, 4)
93 
94 #define LORA_RESET_PORT PORT->Group[PA]
95 #define LORA_RESET_MASK (1 << 4)
96 
97 #define LORA_RESET_OFF (LORA_RESET_PORT.OUTSET.reg = LORA_RESET_MASK)
98 #define LORA_RESET_ON (LORA_RESET_PORT.OUTCLR.reg = LORA_RESET_MASK)
99 #define LORA_RESET_TOGGLE (LORA_RESET_PORT.OUTTGL.reg = LORA_RESET_MASK)
100 
102 #ifdef __cplusplus
103 }
104 #endif
105 
106 #endif /* BOARD_H */
107