Contiki 3.x
board.h
Go to the documentation of this file.
1 /*
2  * Copyright (c) 2016, Texas Instruments Incorporated - http://www.ti.com/
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  * 1. Redistributions of source code must retain the above copyright
9  * notice, this list of conditions and the following disclaimer.
10  * 2. Redistributions in binary form must reproduce the above copyright
11  * notice, this list of conditions and the following disclaimer in the
12  * documentation and/or other materials provided with the distribution.
13  * 3. Neither the name of the copyright holder nor the names of its
14  * contributors may be used to endorse or promote products derived
15  * from this software without specific prior written permission.
16  *
17  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
18  * ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
19  * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
20  * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
21  * COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
22  * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
23  * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
24  * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
25  * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
26  * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
27  * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
28  * OF THE POSSIBILITY OF SUCH DAMAGE.
29  */
30 /*---------------------------------------------------------------------------*/
31 /** \addtogroup launchpad-peripherals
32  * @{
33  *
34  * \defgroup launchpad-cc1310-specific CC1310 LaunchPad Peripherals
35  *
36  * Defines related to the CC1310 LaunchPad
37  *
38  * This file provides connectivity information on LEDs, Buttons, UART and
39  * other peripherals
40  *
41  * This file is not meant to be modified by the user.
42  * @{
43  *
44  * \file
45  * Header file with definitions related to the I/O connections on the TI
46  * CC1310 LaunchPad
47  *
48  * \note Do not include this file directly. It gets included by contiki-conf
49  * after all relevant directives have been set.
50  */
51 /*---------------------------------------------------------------------------*/
52 #ifndef BOARD_H_
53 #define BOARD_H_
54 /*---------------------------------------------------------------------------*/
55 #include "ioc.h"
56 /*---------------------------------------------------------------------------*/
57 /**
58  * \name LED configurations
59  *
60  * Those values are not meant to be modified by the user
61  * @{
62  */
63 /* Some files include leds.h before us, so we need to get rid of defaults in
64  * leds.h before we provide correct definitions */
65 #undef LEDS_GREEN
66 #undef LEDS_YELLOW
67 #undef LEDS_RED
68 #undef LEDS_CONF_ALL
69 
70 #define LEDS_RED 1
71 #define LEDS_GREEN 2
72 #define LEDS_YELLOW LEDS_GREEN
73 #define LEDS_ORANGE LEDS_RED
74 
75 #define LEDS_CONF_ALL 3
76 
77 /* Notify various examples that we have LEDs */
78 #define PLATFORM_HAS_LEDS 1
79 /** @} */
80 /*---------------------------------------------------------------------------*/
81 /**
82  * \name LED IOID mappings
83  *
84  * Those values are not meant to be modified by the user
85  * @{
86  */
87 #define BOARD_IOID_LED_1 IOID_6
88 #define BOARD_IOID_LED_2 IOID_7
89 #define BOARD_LED_1 (1 << BOARD_IOID_LED_1)
90 #define BOARD_LED_2 (1 << BOARD_IOID_LED_2)
91 #define BOARD_LED_ALL (BOARD_LED_1 | BOARD_LED_2)
92 /** @} */
93 /*---------------------------------------------------------------------------*/
94 /**
95  * \name UART IOID mapping
96  *
97  * Those values are not meant to be modified by the user
98  * @{
99  */
100 #define BOARD_IOID_UART_RX IOID_2
101 #define BOARD_IOID_UART_TX IOID_3
102 #define BOARD_IOID_UART_RTS IOID_18
103 #define BOARD_IOID_UART_CTS IOID_19
104 #define BOARD_UART_RX (1 << BOARD_IOID_UART_RX)
105 #define BOARD_UART_TX (1 << BOARD_IOID_UART_TX)
106 #define BOARD_UART_RTS (1 << BOARD_IOID_UART_RTS)
107 #define BOARD_UART_CTS (1 << BOARD_IOID_UART_CTS)
108 /** @} */
109 /*---------------------------------------------------------------------------*/
110 /**
111  * \name Button IOID mapping
112  *
113  * Those values are not meant to be modified by the user
114  * @{
115  */
116 #define BOARD_IOID_KEY_LEFT IOID_13
117 #define BOARD_IOID_KEY_RIGHT IOID_14
118 #define BOARD_KEY_LEFT (1 << BOARD_IOID_KEY_LEFT)
119 #define BOARD_KEY_RIGHT (1 << BOARD_IOID_KEY_RIGHT)
120 /** @} */
121 /*---------------------------------------------------------------------------*/
122 /**
123  * \brief SPI IOID mappings
124  *
125  * Those values are not meant to be modified by the user
126  * @{
127  */
128 #define BOARD_IOID_SPI_MOSI IOID_9
129 #define BOARD_IOID_SPI_MISO IOID_8
130 /** @} */
131 /*---------------------------------------------------------------------------*/
132 /**
133  * \name External flash IOID mapping
134  *
135  * Those values are not meant to be modified by the user
136  * @{
137  */
138 #define BOARD_IOID_FLASH_CS IOID_20
139 #define BOARD_FLASH_CS (1 << BOARD_IOID_FLASH_CS)
140 #define BOARD_IOID_SPI_CLK_FLASH IOID_10
141 /** @} */
142 /*---------------------------------------------------------------------------*/
143 /**
144  * \brief I2C IOID mappings
145  *
146  * Those values are not meant to be modified by the user
147  * @{
148  */
149 #define BOARD_IOID_SCL IOID_4
150 #define BOARD_IOID_SDA IOID_5
151 /** @} */
152 /*---------------------------------------------------------------------------*/
153 /**
154  * \brief Remaining pins
155  *
156  * Those values are not meant to be modified by the user
157  * @{
158  */
159 #define BOARD_IOID_CS IOID_11
160 #define BOARD_IOID_TDO IOID_16
161 #define BOARD_IOID_TDI IOID_17
162 #define BOARD_IOID_DIO12 IOID_12
163 #define BOARD_IOID_DIO15 IOID_15
164 #define BOARD_IOID_DIO21 IOID_21
165 #define BOARD_IOID_DIO22 IOID_22
166 #define BOARD_IOID_DIO23 IOID_23
167 #define BOARD_IOID_DIO24 IOID_24
168 #define BOARD_IOID_DIO25 IOID_25
169 #define BOARD_IOID_DIO26 IOID_26
170 #define BOARD_IOID_DIO27 IOID_27
171 #define BOARD_IOID_DIO28 IOID_28
172 #define BOARD_IOID_DIO29 IOID_29
173 #define BOARD_IOID_DIO30 IOID_30
174 /** @} */
175 /*---------------------------------------------------------------------------*/
176 /**
177  * \name Device string used on startup
178  * @{
179  */
180 #define BOARD_STRING "TI CC1310 LaunchPad"
181 
182 /** @} */
183 /*---------------------------------------------------------------------------*/
184 #endif /* BOARD_H_ */
185 /*---------------------------------------------------------------------------*/
186 /**
187  * @}
188  * @}
189  */
Header file with declarations for the I/O Control module.