45#ifndef __CC2650_LAUNCHXL_BOARD_H__
46#define __CC2650_LAUNCHXL_BOARD_H__
52#include "contiki-conf.h"
55#include <ti/drivers/PIN.h>
56#include <ti/devices/DeviceFamily.h>
57#include DeviceFamily_constructPath(driverlib/ioc.h)
60extern const PIN_Config BoardGpioInitTable[];
63#define CC2650_LAUNCHXL
70#define CC2650_LAUNCHXL_DIO23_ANALOG IOID_23
71#define CC2650_LAUNCHXL_DIO24_ANALOG IOID_24
72#define CC2650_LAUNCHXL_DIO25_ANALOG IOID_25
73#define CC2650_LAUNCHXL_DIO26_ANALOG IOID_26
74#define CC2650_LAUNCHXL_DIO27_ANALOG IOID_27
75#define CC2650_LAUNCHXL_DIO28_ANALOG IOID_28
76#define CC2650_LAUNCHXL_DIO29_ANALOG IOID_29
77#define CC2650_LAUNCHXL_DIO30_ANALOG IOID_30
80#define CC2650_LAUNCHXL_DIO0 IOID_0
81#define CC2650_LAUNCHXL_DIO1 IOID_1
82#define CC2650_LAUNCHXL_DIO12 IOID_12
83#define CC2650_LAUNCHXL_DIO15 IOID_15
84#define CC2650_LAUNCHXL_DIO16_TDO IOID_16
85#define CC2650_LAUNCHXL_DIO17_TDI IOID_17
86#define CC2650_LAUNCHXL_DIO21 IOID_21
87#define CC2650_LAUNCHXL_DIO22 IOID_22
90#define CC2650_LAUNCHXL_PIN_BTN1 IOID_13
91#define CC2650_LAUNCHXL_PIN_BTN2 IOID_14
94#define CC2650_LAUNCHXL_GPIO_LED_ON 1
95#define CC2650_LAUNCHXL_GPIO_LED_OFF 0
98#define CC2650_LAUNCHXL_I2C0_SCL0 IOID_4
99#define CC2650_LAUNCHXL_I2C0_SDA0 IOID_5
102#define CC2650_LAUNCHXL_I2S_ADO IOID_25
103#define CC2650_LAUNCHXL_I2S_ADI IOID_26
104#define CC2650_LAUNCHXL_I2S_BCLK IOID_27
105#define CC2650_LAUNCHXL_I2S_MCLK PIN_UNASSIGNED
106#define CC2650_LAUNCHXL_I2S_WCLK IOID_28
109#define CC2650_LAUNCHXL_PIN_LED_ON 1
110#define CC2650_LAUNCHXL_PIN_LED_OFF 0
111#define CC2650_LAUNCHXL_PIN_RLED IOID_6
112#define CC2650_LAUNCHXL_PIN_GLED IOID_7
115#define CC2650_LAUNCHXL_PWMPIN0 CC2650_LAUNCHXL_PIN_RLED
116#define CC2650_LAUNCHXL_PWMPIN1 CC2650_LAUNCHXL_PIN_GLED
117#define CC2650_LAUNCHXL_PWMPIN2 PIN_UNASSIGNED
118#define CC2650_LAUNCHXL_PWMPIN3 PIN_UNASSIGNED
119#define CC2650_LAUNCHXL_PWMPIN4 PIN_UNASSIGNED
120#define CC2650_LAUNCHXL_PWMPIN5 PIN_UNASSIGNED
121#define CC2650_LAUNCHXL_PWMPIN6 PIN_UNASSIGNED
122#define CC2650_LAUNCHXL_PWMPIN7 PIN_UNASSIGNED
125#define CC2650_LAUNCHXL_SPI_FLASH_CS IOID_20
126#define CC2650_LAUNCHXL_FLASH_CS_ON 0
127#define CC2650_LAUNCHXL_FLASH_CS_OFF 1
130#define CC2650_LAUNCHXL_SPI0_MISO IOID_8
131#define CC2650_LAUNCHXL_SPI0_MOSI IOID_9
132#define CC2650_LAUNCHXL_SPI0_CLK IOID_10
133#define CC2650_LAUNCHXL_SPI0_CSN IOID_11
134#define CC2650_LAUNCHXL_SPI1_MISO PIN_UNASSIGNED
135#define CC2650_LAUNCHXL_SPI1_MOSI PIN_UNASSIGNED
136#define CC2650_LAUNCHXL_SPI1_CLK PIN_UNASSIGNED
137#define CC2650_LAUNCHXL_SPI1_CSN PIN_UNASSIGNED
140#define CC2650_LAUNCHXL_UART_RX IOID_2
141#define CC2650_LAUNCHXL_UART_TX IOID_3
142#define CC2650_LAUNCHXL_UART_CTS IOID_19
143#define CC2650_LAUNCHXL_UART_RTS IOID_18
170typedef enum CC2650_LAUNCHXL_ADCBufName {
171 CC2650_LAUNCHXL_ADCBUF0 = 0,
173 CC2650_LAUNCHXL_ADCBUFCOUNT
174} CC2650_LAUNCHXL_ADCBufName;
180typedef enum CC2650_LAUNCHXL_ADCBuf0ChannelName {
181 CC2650_LAUNCHXL_ADCBUF0CHANNEL0 = 0,
182 CC2650_LAUNCHXL_ADCBUF0CHANNEL1,
183 CC2650_LAUNCHXL_ADCBUF0CHANNEL2,
184 CC2650_LAUNCHXL_ADCBUF0CHANNEL3,
185 CC2650_LAUNCHXL_ADCBUF0CHANNEL4,
186 CC2650_LAUNCHXL_ADCBUF0CHANNEL5,
187 CC2650_LAUNCHXL_ADCBUF0CHANNEL6,
188 CC2650_LAUNCHXL_ADCBUF0CHANNEL7,
189 CC2650_LAUNCHXL_ADCBUF0CHANNELVDDS,
190 CC2650_LAUNCHXL_ADCBUF0CHANNELDCOUPL,
191 CC2650_LAUNCHXL_ADCBUF0CHANNELVSS,
193 CC2650_LAUNCHXL_ADCBUF0CHANNELCOUNT
194} CC2650_LAUNCHXL_ADCBuf0ChannelName;
200typedef enum CC2650_LAUNCHXL_ADCName {
201 CC2650_LAUNCHXL_ADC0 = 0,
202 CC2650_LAUNCHXL_ADC1,
203 CC2650_LAUNCHXL_ADC2,
204 CC2650_LAUNCHXL_ADC3,
205 CC2650_LAUNCHXL_ADC4,
206 CC2650_LAUNCHXL_ADC5,
207 CC2650_LAUNCHXL_ADC6,
208 CC2650_LAUNCHXL_ADC7,
209 CC2650_LAUNCHXL_ADCDCOUPL,
210 CC2650_LAUNCHXL_ADCVSS,
211 CC2650_LAUNCHXL_ADCVDDS,
213 CC2650_LAUNCHXL_ADCCOUNT
214} CC2650_LAUNCHXL_ADCName;
220typedef enum CC2650_LAUNCHXL_CryptoName {
221 CC2650_LAUNCHXL_CRYPTO0 = 0,
223 CC2650_LAUNCHXL_CRYPTOCOUNT
224} CC2650_LAUNCHXL_CryptoName;
230typedef enum CC2650_LAUNCHXL_AESCCMName {
231 CC2650_LAUNCHXL_AESCCM0 = 0,
233 CC2650_LAUNCHXL_AESCCMCOUNT
234} CC2650_LAUNCHXL_AESCCMName;
240typedef enum CC2650_LAUNCHXL_AESGCMName {
241 CC2650_LAUNCHXL_AESGCM0 = 0,
243 CC2650_LAUNCHXL_AESGCMCOUNT
244} CC2650_LAUNCHXL_AESGCMName;
250typedef enum CC2650_LAUNCHXL_AESCBCName {
251 CC2650_LAUNCHXL_AESCBC0 = 0,
253 CC2650_LAUNCHXL_AESCBCCOUNT
254} CC2650_LAUNCHXL_AESCBCName;
260typedef enum CC2650_LAUNCHXL_AESCTRName {
261 CC2650_LAUNCHXL_AESCTR0 = 0,
263 CC2650_LAUNCHXL_AESCTRCOUNT
264} CC2650_LAUNCHXL_AESCTRName;
270typedef enum CC2650_LAUNCHXL_AESECBName {
271 CC2650_LAUNCHXL_AESECB0 = 0,
273 CC2650_LAUNCHXL_AESECBCOUNT
274} CC2650_LAUNCHXL_AESECBName;
280typedef enum CC2650_LAUNCHXL_AESCTRDRBGName {
281 CC2650_LAUNCHXL_AESCTRDRBG0 = 0,
283 CC2650_LAUNCHXL_AESCTRDRBGCOUNT
284} CC2650_LAUNCHXL_AESCTRDRBGName;
290typedef enum CC2650_LAUNCHXL_TRNGName {
291 CC2650_LAUNCHXL_TRNG0 = 0,
293 CC2650_LAUNCHXL_TRNGCOUNT
294} CC2650_LAUNCHXL_TRNGName;
300typedef enum CC2650_LAUNCHXL_GPIOName {
301 CC2650_LAUNCHXL_GPIO_S1 = 0,
302 CC2650_LAUNCHXL_GPIO_S2,
303 CC2650_LAUNCHXL_SPI_MASTER_READY,
304 CC2650_LAUNCHXL_SPI_SLAVE_READY,
305 CC2650_LAUNCHXL_GPIO_LED_GREEN,
306 CC2650_LAUNCHXL_GPIO_LED_RED,
307 CC2650_LAUNCHXL_GPIO_SPI_FLASH_CS,
308 CC2650_LAUNCHXL_SDSPI_CS,
309 CC2650_LAUNCHXL_GPIOCOUNT
310} CC2650_LAUNCHXL_GPIOName;
316typedef enum CC2650_LAUNCHXL_GPTimerName {
317 CC2650_LAUNCHXL_GPTIMER0A = 0,
318 CC2650_LAUNCHXL_GPTIMER0B,
319 CC2650_LAUNCHXL_GPTIMER1A,
320 CC2650_LAUNCHXL_GPTIMER1B,
321 CC2650_LAUNCHXL_GPTIMER2A,
322 CC2650_LAUNCHXL_GPTIMER2B,
323 CC2650_LAUNCHXL_GPTIMER3A,
324 CC2650_LAUNCHXL_GPTIMER3B,
326 CC2650_LAUNCHXL_GPTIMERPARTSCOUNT
327} CC2650_LAUNCHXL_GPTimerName;
333typedef enum CC2650_LAUNCHXL_GPTimers {
334 CC2650_LAUNCHXL_GPTIMER0 = 0,
335 CC2650_LAUNCHXL_GPTIMER1,
336 CC2650_LAUNCHXL_GPTIMER2,
337 CC2650_LAUNCHXL_GPTIMER3,
339 CC2650_LAUNCHXL_GPTIMERCOUNT
340} CC2650_LAUNCHXL_GPTimers;
346typedef enum CC2650_LAUNCHXL_I2CName {
347#if TI_I2C_CONF_I2C0_ENABLE
348 CC2650_LAUNCHXL_I2C0 = 0,
351 CC2650_LAUNCHXL_I2CCOUNT
352} CC2650_LAUNCHXL_I2CName;
358typedef enum CC2650_LAUNCHXL_I2SName {
359 CC2650_LAUNCHXL_I2S0 = 0,
361 CC2650_LAUNCHXL_I2SCOUNT
362} CC2650_LAUNCHXL_I2SName;
368typedef enum CC2650_LAUNCHXL_NVSName {
369#if TI_NVS_CONF_NVS_INTERNAL_ENABLE
370 CC2650_LAUNCHXL_NVSCC26XX0 = 0,
372#if TI_NVS_CONF_NVS_EXTERNAL_ENABLE
373 CC2650_LAUNCHXL_NVSSPI25X0,
376 CC2650_LAUNCHXL_NVSCOUNT
377} CC2650_LAUNCHXL_NVSName;
383typedef enum CC2650_LAUNCHXL_PWMName {
384 CC2650_LAUNCHXL_PWM0 = 0,
385 CC2650_LAUNCHXL_PWM1,
386 CC2650_LAUNCHXL_PWM2,
387 CC2650_LAUNCHXL_PWM3,
388 CC2650_LAUNCHXL_PWM4,
389 CC2650_LAUNCHXL_PWM5,
390 CC2650_LAUNCHXL_PWM6,
391 CC2650_LAUNCHXL_PWM7,
393 CC2650_LAUNCHXL_PWMCOUNT
394} CC2650_LAUNCHXL_PWMName;
400typedef enum CC2650_LAUNCHXL_SDName {
401 CC2650_LAUNCHXL_SDSPI0 = 0,
403 CC2650_LAUNCHXL_SDCOUNT
404} CC2650_LAUNCHXL_SDName;
410typedef enum CC2650_LAUNCHXL_SPIName {
411#if TI_SPI_CONF_SPI0_ENABLE
412 CC2650_LAUNCHXL_SPI0 = 0,
414#if TI_SPI_CONF_SPI1_ENABLE
415 CC2650_LAUNCHXL_SPI1,
418 CC2650_LAUNCHXL_SPICOUNT
419} CC2650_LAUNCHXL_SPIName;
425typedef enum CC2650_LAUNCHXL_UARTName {
426#if TI_UART_CONF_UART0_ENABLE
427 CC2650_LAUNCHXL_UART0 = 0,
430 CC2650_LAUNCHXL_UARTCOUNT
431} CC2650_LAUNCHXL_UARTName;
437typedef enum CC2650_LAUNCHXL_UDMAName {
438 CC2650_LAUNCHXL_UDMA0 = 0,
440 CC2650_LAUNCHXL_UDMACOUNT
441} CC2650_LAUNCHXL_UDMAName;
447typedef enum CC2650_LAUNCHXL_WatchdogName {
448 CC2650_LAUNCHXL_WATCHDOG0 = 0,
450 CC2650_LAUNCHXL_WATCHDOGCOUNT
451} CC2650_LAUNCHXL_WatchdogName;
void CC2650_LAUNCHXL_shutDownExtFlash(void)
Turn off the external flash on LaunchPads.
void CC2650_LAUNCHXL_initGeneral(void)
Initialize the general board specific settings.
void CC2650_LAUNCHXL_wakeUpExtFlash(void)
Wake up the external flash present on the board files.