Contiki-NG
Board.h
1 /*
2  * Copyright (c) 2017-2018, Texas Instruments Incorporated
3  * All rights reserved.
4  *
5  * Redistribution and use in source and binary forms, with or without
6  * modification, are permitted provided that the following conditions
7  * are met:
8  *
9  * * Redistributions of source code must retain the above copyright
10  * notice, this list of conditions and the following disclaimer.
11  *
12  * * Redistributions in binary form must reproduce the above copyright
13  * notice, this list of conditions and the following disclaimer in the
14  * documentation and/or other materials provided with the distribution.
15  *
16  * * Neither the name of Texas Instruments Incorporated nor the names of
17  * its contributors may be used to endorse or promote products derived
18  * from this software without specific prior written permission.
19  *
20  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
21  * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
22  * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
23  * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
24  * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
25  * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
26  * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
27  * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
28  * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
29  * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
30  * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
31  */
32 
33 #ifndef __BOARD_H
34 #define __BOARD_H
35 
36 #ifdef __cplusplus
37 extern "C" {
38 #endif
39 
40 #include "CC1352P_2_LAUNCHXL.h"
41 
42 #define Board_CC1352P_2_LAUNCHXL
43 #define BOARD_STRING "TI CC1352P-2 LaunchPad"
44 
45 #define Board_initGeneral() CC1352P_2_LAUNCHXL_initGeneral()
46 #define Board_shutDownExtFlash() CC1352P_2_LAUNCHXL_shutDownExtFlash()
47 #define Board_wakeUpExtFlash() CC1352P_2_LAUNCHXL_wakeUpExtFlash()
48 
49 /* These #defines allow us to reuse TI-RTOS across other device families */
50 
51 #define Board_ADC0 CC1352P_2_LAUNCHXL_ADC0
52 #define Board_ADC1 CC1352P_2_LAUNCHXL_ADC1
53 
54 #define Board_ADCBUF0 CC1352P_2_LAUNCHXL_ADCBUF0
55 #define Board_ADCBUF0CHANNEL0 CC1352P_2_LAUNCHXL_ADCBUF0CHANNEL0
56 #define Board_ADCBUF0CHANNEL1 CC1352P_2_LAUNCHXL_ADCBUF0CHANNEL1
57 
58 #define Board_CRYPTO0 CC1352P_2_LAUNCHXL_CRYPTO0
59 #define Board_ECDH0 CC1352P_2_LAUNCHXL_ECDH0
60 #define Board_ECDSA0 CC1352P_2_LAUNCHXL_ECDSA0
61 #define Board_ECJPAKE0 CC1352P_2_LAUNCHXL_ECJPAKE0
62 #define Board_AESCCM0 CC1352P_2_LAUNCHXL_AESCCM0
63 #define Board_AESECB0 CC1352P_2_LAUNCHXL_AESECB0
64 #define Board_SHA20 CC1352P_2_LAUNCHXL_SHA20
65 
66 #define Board_DIO12 CC1352P_2_LAUNCHXL_DIO12
67 #define Board_DIO15 CC1352P_2_LAUNCHXL_DIO15
68 #define Board_DIO16_TDO CC1352P_2_LAUNCHXL_DIO16_TDO
69 #define Board_DIO17_TDI CC1352P_2_LAUNCHXL_DIO17_TDI
70 #define Board_DIO21 CC1352P_2_LAUNCHXL_DIO21
71 #define Board_DIO22 CC1352P_2_LAUNCHXL_DIO22
72 
73 #define Board_DIO23_ANALOG CC1352P_2_LAUNCHXL_DIO23_ANALOG
74 #define Board_DIO24_ANALOG CC1352P_2_LAUNCHXL_DIO24_ANALOG
75 #define Board_DIO25_ANALOG CC1352P_2_LAUNCHXL_DIO25_ANALOG
76 #define Board_DIO26_ANALOG CC1352P_2_LAUNCHXL_DIO26_ANALOG
77 #define Board_DIO27_ANALOG CC1352P_2_LAUNCHXL_DIO27_ANALOG
78 #define Board_DIO28_ANALOG CC1352P_2_LAUNCHXL_DIO28_ANALOG
79 #define Board_DIO29_ANALOG CC1352P_2_LAUNCHXL_DIO29_ANALOG
80 #define Board_DIO30_RFSW CC1352P_2_LAUNCHXL_DIO30_RF_SUB1GHZ
81 
82 /*
83  * Board_RF_SUB1GHZ, Board_RF_HIGH_PA, and Board_RF_24GHZ are the names
84  * generated by SysConfig. Define them here so that the RF callback function
85  * can reference them.
86  */
87 #define Board_RF_24GHZ CC1352P_2_LAUNCHXL_DIO28_RF_24GHZ
88 #define Board_RF_HIGH_PA CC1352P_2_LAUNCHXL_DIO29_RF_HIGH_PA
89 #define Board_RF_SUB1GHZ CC1352P_2_LAUNCHXL_DIO30_RF_SUB1GHZ
90 
91 #define Board_GPIO_BUTTON0 CC1352P_2_LAUNCHXL_GPIO_S1
92 #define Board_GPIO_BUTTON1 CC1352P_2_LAUNCHXL_GPIO_S2
93 #define Board_GPIO_BTN1 CC1352P_2_LAUNCHXL_GPIO_S1
94 #define Board_GPIO_BTN2 CC1352P_2_LAUNCHXL_GPIO_S2
95 #define Board_GPIO_LED0 CC1352P_2_LAUNCHXL_GPIO_LED_RED
96 #define Board_GPIO_LED1 CC1352P_2_LAUNCHXL_GPIO_LED_GREEN
97 #define Board_GPIO_LED2 CC1352P_2_LAUNCHXL_GPIO_LED_RED
98 #define Board_GPIO_RLED CC1352P_2_LAUNCHXL_GPIO_LED_RED
99 #define Board_GPIO_GLED CC1352P_2_LAUNCHXL_GPIO_LED_GREEN
100 #define Board_GPIO_LED_ON CC1352P_2_LAUNCHXL_GPIO_LED_ON
101 #define Board_GPIO_LED_OFF CC1352P_2_LAUNCHXL_GPIO_LED_OFF
102 
103 #define Board_GPTIMER0A CC1352P_2_LAUNCHXL_GPTIMER0A
104 #define Board_GPTIMER0B CC1352P_2_LAUNCHXL_GPTIMER0B
105 #define Board_GPTIMER1A CC1352P_2_LAUNCHXL_GPTIMER1A
106 #define Board_GPTIMER1B CC1352P_2_LAUNCHXL_GPTIMER1B
107 #define Board_GPTIMER2A CC1352P_2_LAUNCHXL_GPTIMER2A
108 #define Board_GPTIMER2B CC1352P_2_LAUNCHXL_GPTIMER2B
109 #define Board_GPTIMER3A CC1352P_2_LAUNCHXL_GPTIMER3A
110 #define Board_GPTIMER3B CC1352P_2_LAUNCHXL_GPTIMER3B
111 
112 #define Board_I2C0 CC1352P_2_LAUNCHXL_I2C0
113 #define Board_I2C_TMP Board_I2C0
114 
115 #define Board_NVSINTERNAL CC1352P_2_LAUNCHXL_NVSCC26XX0
116 #define Board_NVSEXTERNAL CC1352P_2_LAUNCHXL_NVSSPI25X0
117 
118 #define Board_PIN_BUTTON0 CC1352P_2_LAUNCHXL_PIN_BTN1
119 #define Board_PIN_BUTTON1 CC1352P_2_LAUNCHXL_PIN_BTN2
120 #define Board_PIN_BTN1 CC1352P_2_LAUNCHXL_PIN_BTN1
121 #define Board_PIN_BTN2 CC1352P_2_LAUNCHXL_PIN_BTN2
122 #define Board_PIN_LED0 CC1352P_2_LAUNCHXL_PIN_RLED
123 #define Board_PIN_LED1 CC1352P_2_LAUNCHXL_PIN_GLED
124 #define Board_PIN_LED2 CC1352P_2_LAUNCHXL_PIN_RLED
125 #define Board_PIN_RLED CC1352P_2_LAUNCHXL_PIN_RLED
126 #define Board_PIN_GLED CC1352P_2_LAUNCHXL_PIN_GLED
127 
128 #define Board_PWM0 CC1352P_2_LAUNCHXL_PWM0
129 #define Board_PWM1 CC1352P_2_LAUNCHXL_PWM1
130 #define Board_PWM2 CC1352P_2_LAUNCHXL_PWM2
131 #define Board_PWM3 CC1352P_2_LAUNCHXL_PWM3
132 #define Board_PWM4 CC1352P_2_LAUNCHXL_PWM4
133 #define Board_PWM5 CC1352P_2_LAUNCHXL_PWM5
134 #define Board_PWM6 CC1352P_2_LAUNCHXL_PWM6
135 #define Board_PWM7 CC1352P_2_LAUNCHXL_PWM7
136 
137 #define Board_SD0 CC1352P_2_LAUNCHXL_SDSPI0
138 
139 #define Board_SPI0 CC1352P_2_LAUNCHXL_SPI0
140 #define Board_SPI0_MISO CC1352P_2_LAUNCHXL_SPI0_MISO
141 #define Board_SPI0_MOSI CC1352P_2_LAUNCHXL_SPI0_MOSI
142 #define Board_SPI0_CLK CC1352P_2_LAUNCHXL_SPI0_CLK
143 #define Board_SPI0_CSN CC1352P_2_LAUNCHXL_SPI0_CSN
144 #define Board_SPI1 CC1352P_2_LAUNCHXL_SPI1
145 #define Board_SPI1_MISO CC1352P_2_LAUNCHXL_SPI1_MISO
146 #define Board_SPI1_MOSI CC1352P_2_LAUNCHXL_SPI1_MOSI
147 #define Board_SPI1_CLK CC1352P_2_LAUNCHXL_SPI1_CLK
148 #define Board_SPI1_CSN CC1352P_2_LAUNCHXL_SPI1_CSN
149 #define Board_SPI_FLASH_CS CC1352P_2_LAUNCHXL_SPI_FLASH_CS
150 #define Board_FLASH_CS_ON 0
151 #define Board_FLASH_CS_OFF 1
152 
153 #define Board_SPI_MASTER CC1352P_2_LAUNCHXL_SPI0
154 #define Board_SPI_SLAVE CC1352P_2_LAUNCHXL_SPI0
155 #define Board_SPI_MASTER_READY CC1352P_2_LAUNCHXL_SPI_MASTER_READY
156 #define Board_SPI_SLAVE_READY CC1352P_2_LAUNCHXL_SPI_SLAVE_READY
157 
158 #define Board_UART0 CC1352P_2_LAUNCHXL_UART0
159 #define Board_UART1 CC1352P_2_LAUNCHXL_UART1
160 
161 #define Board_WATCHDOG0 CC1352P_2_LAUNCHXL_WATCHDOG0
162 
163 /* Board specific I2C addresses */
164 #define Board_TMP_ADDR (0x40)
165 #define Board_SENSORS_BP_TMP_ADDR Board_TMP_ADDR
166 
167 #ifdef __cplusplus
168 }
169 #endif
170 
171 #endif /* __BOARD_H */
===========================================================================