Added Test Wake-Up
[i3-mote/i3-mote.git] / Basic-Test-Package / MSP432 / Test_MSP432_WakeUp / MSP432P401R_I3M.h
1 /*
2  * Copyright (c) 2015-2016, 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  *  @file       MSP_I3MSP432P401R.h
34  *
35  *  @brief      MSP_I3MSP432P401R Board Specific APIs
36  *
37  *  The MSP_I3MSP432P401R header file should be included in an application as
38  *  follows:
39  *  @code
40  *  #include <MSP_I3MSP432P401R.h>
41  *  @endcode
42  *
43  *  ============================================================================
44  */
45 #ifndef __MSP_I3MSP432P401R_H
46 #define __MSP_I3MSP432P401R_H
48 #ifdef __cplusplus
49 extern "C" {
50 #endif
52 /* LEDs on MSP_I3MSP432P401R are active high. */
53 #define MSP_I3MSP432P401R_LED_OFF (0)
54 #define MSP_I3MSP432P401R_LED_ON  (1)
56 /*!
57  *  @def    MSP_I3MSP432P401R_ADCName
58  *  @brief  Enum of ADC channels on the MSP_I3MSP432P401R dev board
59  */
60 typedef enum MSP_I3MSP432P401R_ADCName {
61     MSP_I3MSP432P401R_ADC0 = 0,
62     MSP_I3MSP432P401R_ADC1,
63     MSP_I3MSP432P401R_ADCCOUNT
64 }MSP_I3MSP432P401R_ADCName;
66 /*!
67  *  @def    MSP_I3MSP432P401R_GPIOName
68  *  @brief  Enum of GPIO names on the MSP_I3MSP432P401R dev board
69  */
70 typedef enum MSP_I3MSP432P401R_GPIOName {
71     MSP_I3MSP432P401R_S1 = 0,
72     MSP_I3MSP432P401R_SPIA1_IRQ,
73         MSP_I3MSP432P401R_SPIA1_CS,
74     MSP_I3MSP432P401R_SPIA2_CS,
75     /*
76      * MSP_I3MSP432P401R_LED_GREEN & MSP_I3MSP432P401R_LED_BLUE are used for
77      * PWM examples.  Uncomment the following lines if you would like to control
78      * the LEDs with the GPIO driver.
79      */
80     MSP_I3MSP432P401R_LED_GREEN,
81     MSP_I3MSP432P401R_LED_RED,
83     MSP_I3MSP432P401R_GPIOCOUNT
84 } MSP_I3MSP432P401R_GPIOName;
86 /*!
87  *  @def    MSP_I3MSP432P401R_I2CName
88  *  @brief  Enum of I2C names on the MSP_I3MSP432P401R dev board
89  */
90 typedef enum MSP_I3MSP432P401R_I2CName {
91     MSP_I3MSP432P401R_I2CB2 = 0,
92     MSP_I3MSP432P401R_I2CCOUNT
93 } MSP_I3MSP432P401R_I2CName;
95 /*!
96  *  @def    MSP_I3MSP432P401R_PWMName
97  *  @brief  Enum of PWM names on the MSP_I3MSP432P401R dev board
98  */
99 typedef enum MSP_I3MSP432P401R_PWMName {
100     MSP_I3MSP432P401R_PWM_TA1_1 = 0,
101     MSP_I3MSP432P401R_PWM_TA1_2,
103     MSP_I3MSP432P401R_PWMCOUNT
104 } MSP_I3MSP432P401R_PWMName;
106 /*!
107  *  @def    MSP_I3MSP432P401R_SDSPIName
108  *  @brief  Enum of SDSPI names on the MSP_I3MSP432P401R dev board
110 typedef enum MSP_I3MSP432P401R_SDSPIName {
111     MSP_I3MSP432P401R_SDSPIB0 = 0,
113     MSP_I3MSP432P401R_SDSPICOUNT
114 } EMSP_I3MSP432P401R_SDSPIName;
115 */
117 /*!
118  *  @def    MSP_I3MSP432P401R_SPIName
119  *  @brief  Enum of SPI names on the MSP_I3MSP432P401R dev board
120  */
121 typedef enum MSP_I3MSP432P401R_SPIName {
122     MSP_I3MSP432P401R_SPIB0 = 0,
123     MSP_I3MSP432P401R_SPIA1,
124     MSP_I3MSP432P401R_SPIA2,
126     MSP_I3MSP432P401R_SPICOUNT
127 } MSP_I3MSP432P401R_SPIName;
129 /*!
130  *  @def    MSP_I3MSP432P401R_UARTName
131  *  @brief  Enum of UART names on the MSP_I3MSP432P401R dev board
132  */
133 typedef enum MSP_I3MSP432P401R_UARTName {
134     MSP_I3MSP432P401R_UARTA0 = 0,
135     MSP_I3MSP432P401R_UARTA2,
137     MSP_I3MSP432P401R_UARTCOUNT
138 } MSP_I3MSP432P401R_UARTName;
140 /*!
141  *  @def    MSP_I3MSP432P401R_WatchdogName
142  *  @brief  Enum of Watchdog names on the MSP_I3MSP432P401R dev board
143  */
144 typedef enum MSP_I3MSP432P401R_WatchdogName {
145     MSP_I3MSP432P401R_WATCHDOG = 0,
147     MSP_I3MSP432P401R_WATCHDOGCOUNT
148 } MSP_I3MSP432P401R_WatchdogName;
150 /*!
151  *  @def    MSP_I3MSP432P401R_WiFiName
152  *  @brief  Enum of WiFi names on the MSP_I3MSP432P401R dev board
153  */
154 typedef enum MSP_I3MSP432P401R_WiFiName {
155     MSP_I3MSP432P401R_WIFI = 0,
157     MSP_I3MSP432P401R_WIFICOUNT
158 } MSP_I3MSP432P401R_WiFiName;
160 /*!
161  *  @brief  Initialize board specific ADC settings
162  *
163  *  This function initializes the board specific ADC settings and then calls
164  *  the ADC_init API to initialize the ADC module.
165  *
166  *  The ADC peripherals controlled by the ADC module are determined by the
167  *  ADC_config variable.
168  */
169 extern void MSP_I3MSP432P401R_initADC(void);
171 /*!
172  *  @brief  Initialize the general board specific settings
173  *
174  *  This function initializes the general board specific settings.
175  */
176 extern void MSP_I3MSP432P401R_initGeneral(void);
178 /*!
179  *  @brief  Initialize board specific GPIO settings
180  *
181  *  This function initializes the board specific GPIO settings and
182  *  then calls the GPIO_init API to initialize the GPIO module.
183  *
184  *  The GPIOs controlled by the GPIO module are determined by the GPIO_PinConfig
185  *  variable.
186  */
187 extern void MSP_I3MSP432P401R_initGPIO(void);
189 /*!
190  *  @brief  Initialize board specific I2C settings
191  *
192  *  This function initializes the board specific I2C settings and then calls
193  *  the I2C_init API to initialize the I2C module.
194  *
195  *  The I2C peripherals controlled by the I2C module are determined by the
196  *  I2C_config variable.
197  */
198 extern void MSP_I3MSP432P401R_initI2C(void);
200 /*!
201  *  @brief  Initialize board specific PWM settings
202  *
203  *  This function initializes the board specific PWM settings and then calls
204  *  the PWM_init API to initialize the PWM module.
205  *
206  *  The PWM peripherals controlled by the PWM module are determined by the
207  *  PWM_config variable.
208  */
209 extern void MSP_I3MSP432P401R_initPWM(void);
211 /*!
212  *  @brief  Initialize board specific SDSPI settings
213  *
214  *  This function initializes the board specific SDSPI settings and then calls
215  *  the SDSPI_init API to initialize the SDSPI module.
216  *
217  *  The SDSPI peripherals controlled by the SDSPI module are determined by the
218  *  SDSPI_config variable.
219  */
220 extern void MSP_I3MSP432P401R_initSDSPI(void);
222 /*!
223  *  @brief  Initialize board specific SPI settings
224  *
225  *  This function initializes the board specific SPI settings and then calls
226  *  the SPI_init API to initialize the SPI module.
227  *
228  *  The SPI peripherals controlled by the SPI module are determined by the
229  *  SPI_config variable.
230  */
231 extern void MSP_I3MSP432P401R_initSPI(void);
233 /*!
234  *  @brief  Initialize board specific UART settings
235  *
236  *  This function initializes the board specific UART settings and then calls
237  *  the UART_init API to initialize the UART module.
238  *
239  *  The UART peripherals controlled by the UART module are determined by the
240  *  UART_config variable.
241  */
242 extern void MSP_I3MSP432P401R_initUART(void);
244 /*!
245  *  @brief  Initialize board specific Watchdog settings
246  *
247  *  This function initializes the board specific Watchdog settings and then
248  *  calls the Watchdog_init API to initialize the Watchdog module.
249  *
250  *  The Watchdog peripherals controlled by the Watchdog module are determined
251  *  by the Watchdog_config variable.
252  */
253 extern void MSP_I3MSP432P401R_initWatchdog(void);
255 /*!
256  *  @brief  Initialize board specific WiFi settings
257  *
258  *  This function initializes the board specific WiFi settings and then calls
259  *  the WiFi_init API to initialize the WiFi module.
260  *
261  *  The hardware resources controlled by the WiFi module are determined by the
262  *  WiFi_config variable.
263  *
264  *  A SimpleLink CC3100 device or module is required and must be connected to
265  *  use the WiFi driver.
266  */
267 extern void MSP_I3MSP432P401R_initWiFi(void);
269 #ifdef __cplusplus
271 #endif
273 #endif /* __MSP_I3MSP432P401R_H */