请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
器件型号:CC1310 下面是我的代码:
/* Analog capable DIOs */
#define CC1310_LAUNCHXL_DIO23_ANALOG IOID_23
#define CC1310_LAUNCHXL_DIO24_ANALOG IOID_24
#define CC1310_LAUNCHXL_DIO25_ANALOG IOID_25
#define CC1310_LAUNCHXL_DIO26_ANALOG IOID_26
#define CC1310_LAUNCHXL_DIO27_ANALOG IOID_27
#define CC1310_LAUNCHXL_DIO28_ANALOG IOID_28
#define CC1310_LAUNCHXL_DIO29_ANALOG IOID_29
#define CC1310_LAUNCHXL_DIO30_ANALOG IOID_30
/* Digital IOs */
#define CC1310_LAUNCHXL_DIO0 IOID_0
#define CC1310_LAUNCHXL_DIO1 IOID_1
#define CC1310_LAUNCHXL_DIO12 IOID_12
#define CC1310_LAUNCHXL_DIO15 IOID_15
#define CC1310_LAUNCHXL_DIO16_TDO IOID_16
#define CC1310_LAUNCHXL_DIO17_TDI IOID_17
#define CC1310_LAUNCHXL_DIO21 IOID_21
#define CC1310_LAUNCHXL_DIO22 IOID_22
/* Discrete Inputs */
#define CC1310_LAUNCHXL_PIN_BTN1 IOID_13
#define CC1310_LAUNCHXL_PIN_BTN2 IOID_14
/* GPIO */
#define CC1310_LAUNCHXL_GPIO_LED_ON 1
#define CC1310_LAUNCHXL_GPIO_LED_OFF 0
/* I2C */
#define CC1310_LAUNCHXL_I2C0_SCL0 IOID_4
#define CC1310_LAUNCHXL_I2C0_SDA0 IOID_5
/* I2S */
#define CC1310_LAUNCHXL_I2S_ADO IOID_25
#define CC1310_LAUNCHXL_I2S_ADI IOID_26
#define CC1310_LAUNCHXL_I2S_BCLK IOID_27
#define CC1310_LAUNCHXL_I2S_MCLK PIN_UNASSIGNED
#define CC1310_LAUNCHXL_I2S_WCLK IOID_28
/* LEDs */
#define CC1310_LAUNCHXL_PIN_LED_ON 1
#define CC1310_LAUNCHXL_PIN_LED_OFF 0
#define CC1310_LAUNCHXL_PIN_RLED IOID_6
#define CC1310_LAUNCHXL_PIN_GLED IOID_7
/* PWM Outputs */
#define CC1310_LAUNCHXL_PWMPIN0 CC1310_LAUNCHXL_PIN_RLED
#define CC1310_LAUNCHXL_PWMPIN1 CC1310_LAUNCHXL_PIN_GLED
#define CC1310_LAUNCHXL_PWMPIN2 PIN_UNASSIGNED
#define CC1310_LAUNCHXL_PWMPIN3 PIN_UNASSIGNED
#define CC1310_LAUNCHXL_PWMPIN4 PIN_UNASSIGNED
#define CC1310_LAUNCHXL_PWMPIN5 PIN_UNASSIGNED
#define CC1310_LAUNCHXL_PWMPIN6 PIN_UNASSIGNED
#define CC1310_LAUNCHXL_PWMPIN7 PIN_UNASSIGNED
/* SPI */
#define CC1310_LAUNCHXL_SPI_FLASH_CS IOID_20
#define CC1310_LAUNCHXL_FLASH_CS_ON 0
#define CC1310_LAUNCHXL_FLASH_CS_OFF 1
/* SPI Board */
#define CC1310_LAUNCHXL_SPI0_MISO IOID_8 /* RF1.20 */
#define CC1310_LAUNCHXL_SPI0_MOSI IOID_9 /* RF1.18 */
#define CC1310_LAUNCHXL_SPI0_CLK IOID_10 /* RF1.16 */
#define CC1310_LAUNCHXL_SPI0_CSN IOID_11
#define CC1310_LAUNCHXL_SPI1_MISO PIN_UNASSIGNED
#define CC1310_LAUNCHXL_SPI1_MOSI PIN_UNASSIGNED
#define CC1310_LAUNCHXL_SPI1_CLK PIN_UNASSIGNED
#define CC1310_LAUNCHXL_SPI1_CSN PIN_UNASSIGNED
/* UART Board */
#define CC1310_LAUNCHXL_UART_RX IOID_2 /* RXD */
#define CC1310_LAUNCHXL_UART_TX IOID_3 /* TXD */
#define CC1310_LAUNCHXL_UART_CTS IOID_19 /* CTS */
#define CC1310_LAUNCHXL_UART_RTS IOID_18 /* RTS */
/*
* =============================== PIN ===============================
*/
#include <ti/drivers/PIN.h>
#include <ti/drivers/pin/PINCC26XX.h>
const PIN_Config BoardGpioInitTable[] = {
CC1310_LAUNCHXL_PIN_RLED | PIN_GPIO_OUTPUT_EN | PIN_GPIO_LOW | PIN_PUSHPULL | PIN_DRVSTR_MAX, /* LED initially off */
CC1310_LAUNCHXL_PIN_GLED | PIN_GPIO_OUTPUT_EN | PIN_GPIO_LOW | PIN_PUSHPULL | PIN_DRVSTR_MAX, /* LED initially off */
CC1310_LAUNCHXL_PIN_BTN1 | PIN_INPUT_EN | PIN_PULLUP | PIN_IRQ_BOTHEDGES | PIN_HYSTERESIS, /* Button is active low */
CC1310_LAUNCHXL_PIN_BTN2 | PIN_INPUT_EN | PIN_PULLUP | PIN_IRQ_BOTHEDGES | PIN_HYSTERESIS, /* Button is active low */
CC1310_LAUNCHXL_SPI_FLASH_CS | PIN_GPIO_OUTPUT_EN | PIN_GPIO_HIGH | PIN_PUSHPULL | PIN_DRVSTR_MIN, /* External flash chip select */
CC1310_LAUNCHXL_UART_RX | PIN_INPUT_EN | PIN_PULLDOWN, /* UART RX via debugger back channel */
CC1310_LAUNCHXL_UART_TX | PIN_GPIO_OUTPUT_EN | PIN_GPIO_LOW | PIN_PUSHPULL, /* UART TX via debugger back channel */
CC1310_LAUNCHXL_SPI0_MOSI | PIN_INPUT_EN | PIN_PULLDOWN, /* SPI master out - slave in */
CC1310_LAUNCHXL_SPI0_MISO | PIN_INPUT_EN | PIN_PULLDOWN, /* SPI master in - slave out */
CC1310_LAUNCHXL_SPI0_CLK | PIN_INPUT_EN | PIN_PULLDOWN, /* SPI clock */
CC1310_LAUNCHXL_DIO21 | PIN_GPIO_OUTPUT_EN | PIN_GPIO_LOW | PIN_PUSHPULL | PIN_DRVSTR_MAX, /* LED initially off */
CC1310_LAUNCHXL_DIO22 | PIN_GPIO_OUTPUT_EN | PIN_GPIO_LOW | PIN_PUSHPULL | PIN_DRVSTR_MAX,
PIN_TERMINATE
};
GPIO_PinConfig gpioPinConfigs[] = {
/* Input pins */
GPIOCC26XX_DIO_13 | GPIO_DO_NOT_CONFIG, /* Button 0 */
GPIOCC26XX_DIO_14 | GPIO_DO_NOT_CONFIG, /* Button 1 */
GPIOCC26XX_DIO_15 | GPIO_DO_NOT_CONFIG, /* CC1310_LAUNCHXL_SPI_MASTER_READY */
GPIOCC26XX_DIO_21 | GPIO_DO_NOT_CONFIG, /* CC1310_LAUNCHXL_SPI_SLAVE_READY */
/* Output pins */
GPIOCC26XX_DIO_07 | GPIO_DO_NOT_CONFIG, /* Green LED */
GPIOCC26XX_DIO_06 | GPIO_DO_NOT_CONFIG, /* Red LED */
GPIOCC26XX_DIO_30 | GPIO_DO_NOT_CONFIG, /* TMP116_EN */
/* SPI Flash CSN */
GPIOCC26XX_DIO_20 | GPIO_DO_NOT_CONFIG,
/* SD CS */
GPIOCC26XX_DIO_21 | GPIO_DO_NOT_CONFIG,
/* Sharp Display - GPIO configurations will be done in the Display files */
GPIOCC26XX_DIO_24 | GPIO_DO_NOT_CONFIG, /* SPI chip select */
GPIOCC26XX_DIO_22 | GPIO_DO_NOT_CONFIG, /* LCD power control */
GPIOCC26XX_DIO_23 | GPIO_DO_NOT_CONFIG, /*LCD enable */
};
void *mainThread(void *arg0)
{
uint32_t currentOutputVal;
uint32_t standbyDuration = 500000;
GPIO_init();
/* Configure the control pins */
GPIO_setConfig(Board_PIN_LED0, GPIO_CFG_OUT_STD | GPIO_CFG_OUT_LOW);
GPIO_setConfig(Board_DIO22, GPIO_CFG_OUT_STD | GPIO_CFG_OUT_LOW);
while(1) {
GPIO_write(Board_PIN_LED0, Board_GPIO_LED_OFF);
GPIO_write(Board_DIO22, Board_GPIO_LED_ON);
usleep(50000);
GPIO_write(Board_PIN_LED0, Board_GPIO_LED_ON);
GPIO_write(Board_DIO22, Board_GPIO_LED_OFF);
usleep(50000);
}
}