This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

[参考译文] CCS/CC1310:CAN't 获取程序以在定制硬件4x4 RSM 上运行

Guru**** 2551110 points
Other Parts Discussed in Thread: CC1310

请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/wireless-connectivity/sub-1-ghz-group/sub-1-ghz/f/sub-1-ghz-forum/868802/ccs-cc1310-can-t-get-program-to-run-on-custom-hardware-4x4-rsm

器件型号:CC1310

工具/软件:Code Composer Studio

您好!

我使用的是 CC1310 RSM 封装4x4mm。

在该板上、我尝试运行 EasyLinkTx 示例。

该板通过2线 JTAG (TCK、TMS、RESET、GND 和3V3)连接到 Launchpad 上的 XDS110调试探针。

当我在 SmartRF Studio 中使用该板时、它工作正常。 软件会检测到它、我可以发送和接收数据包。

当我将程序刷写到定制板上时、不会发生任何情况。 我通过实验室电源以3.3V 电压为其加电、它显示了大约6mA 的电流消耗。

因此、我假设电路板加电、但不执行任何射频操作、因为电流非常稳定、而且我无法使用 SmartRF Studio 接收任何内容。

我已经根据定制硬件指南修改了板级配置文件。 将未使用的引脚设置为"PIN_UNLOAD"。

编辑:也许值得一提的是、我的定制板上没有32kHz 晶体。

/*
版权所有(c) 2015-2019、德州仪器(TI)公司
*保留所有权利。
*
*
只要
符合以下条件*、允许以源代码和二进制形式重新分发和使用:
*
*源代码的重新分发必须保留上述版权
声明*、此条件列表和以下免责声明。
*
***二进制形式的再发行必须在

*随发行提供的文档和/或其他材料中复制上述版权声明、本条件列表和以下免责声明。
*
***未经

事先书面许可、不得使用德州仪器公司的名称或*其贡献者的名称认可或推广从本软件衍生的产品*。
*
*本软件由版权所有者和贡献者"按原样"提供
*、

不承担任何明示或暗示的保证、包括但不限于*适销性和特定用途适用性的暗示保证*。 在任何情况下、版权所有者或
*贡献者都不对任何直接、间接、偶然、特殊、
*模范、 或相应的损害(包括但不限于
*采购替代产品或服务;丧失使用、数据或利润;
*或业务中断)、但出于任何责任理论
、*无论是在合同中、严格责任还是由于
使用本软件而以任何方式产生的侵权行为(包括疏忽或*其他)
、*即使已获悉可能会发生此类损坏。
*/
**================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================
*@文件 CC1310_LAUNCHXL.h
*
*@简介 CC1310 LaunchPad 特定于电路板的头文件。
*
*应用程序中应包含 CC1310_LAUNCHXL 头文件
,如下所示:
*@code
*#include "CC1310_LAUNCHXL.h"
*@endcode
*
*================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================
//
#ifndef __CC1310_LAUNCHXL_Board_H__
#define __CC1310_LAUNCHXL_Board_H__

#ifdef __cplusplus
extern "C"{
#endif

/*包括*/
#include 
#include 

/* extern */
extern const PIN_Config BoardGpioInitTable[];

/*定义*/
#define CC1310_LAUNCHXL/*

使用通用板别名将引脚映射到板信号
* 
*/

/* 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 未分配#define
CC1310_LAUNCHXL_DIO28_ANALOG 未分配#define
CC1310_LAUNCHXL_DIO29_ANALOG 未分配#define
CC1310_LAUNCHXL_DIO30_ANALOG PIN_UNLOADD/*

数字 IO */
#define CC1310_LAUNCHXL_DIO0 ioID_8
#define CC1310_LAUNCHXL_DIO1 ioID_9
#define CC1310_LAUNCHXL_DIO12 PIN_UNLOADD
#define CC1310_LAUNCHXL_DIO15 PIN_UNLOADD
#define CC1310_LAUNCHXL_DIO16_TDO PIN_UNLOADD
#define CC1310_LAUNCHXL_DIO17_TDI PIN_UNLOADD
#define CC1310_LAUNCHXL_DIO21 PIN_UNLOADD
#define CC1310_LAUNCHXL_DIO22 PIN_UNLOADD/*

离散输入*/
#define CC1310_LAUNCHXL_PIN_BTN1 ioID_22
#define CC1310_LAUNCHXL_PIN_BTN2 PIN_UNLOADD/*

GPIO */
#define CC1310_LAUNCHXL_GPIO_LED_ON 1
#define CC1310_LAUNCHXL_GPIO_LED_OFF 0

/* I2C */
#define CC1310_LAUNCHXL_I2C0_SCL0 PIN_UNLOADed
#define CC1310_LAUNCHXL_I2C0_SDA0 PIN_UNLOADD/*

I2S */
#define CC1310_LAUNCHXL_I2S_ADO PIN_UNDESIGGLE#define
CC1310_LAUNCHXL_I2S_ADI PIN_UNLOADed
#define CC1310_LAUNCHXL_I2S_BCLK PIN_UNLOADed
#define CC1310_LAUNCHXL_I2S_MCLK PIN_UNLOADed
#define CC1310_LAUNCHXL_I2S_WCLK PIN_UNLOADD/*

LED */
#define CC1310_LAUNCHXL_PIN_LED_ON 1
#define CC1310_LAUNCHXL_PIN_LED_OFF 0
#define CC1310_LAUNCHXL_PIN_RLED ioID_16
#define CC1310_LAUNCHXL_PIN_GLED PIN_UNLOADD/*

PWM 输出*/
#define CC1310_LAUNCHXL_PWMPIN0 CC1310_LAUNCHXL_PIN_RLED
#define CC1310_LAUNCHXL_PWMPIN1 PIN_UNLOADed
#define CC1310_LAUNCHXL_PWMPIN2 未分配的引脚
#define CC1310_LAUNCHXL_PWMPIN3 PIN_UNLOADed
#define CC1310_LAUNCHXL_PWMPIN4 PIN_UNLOADed
#define CC1310_LAUNCHXL_PWMPIN5 PIN_UNLOADed
#define CC1310_LAUNCHXL_PWMPIN6 PIN_UNLOADed
#define CC1310_LAUNCHXL_PWMPIN7 PIN_UNLOADD/*

SPI */
#define CC1310_LAUNCHXL_SPI_FLASH_CS PIN_UNLOADed
#define CC1310_LAUNCHXL_FLASH_CS_ON 0
#define CC1310_LAUNCHXL_FLASH_CS_OFF 1

/* SPI 板*/
#define CC1310_LAUNCHXL_SPI0_MISO 未分配的 PIN_REGLED /* RF1.20 */
#define CC1310_LAUNCHXL_SPI0_MOSI 未分配的 PIN_REGLED /* RF1.18 */
#define CC1310_LAUNCHXL_SPI0_CLK 未分配的 PIN_REGLED /* RF1.16 */
#define CC1310_LAUNCHXL_SPI0_CSn PIN_UNLOADD
#define CC1310_LAUNCHXL_SPI1_MISO PIN_UNLOADed
#define CC1310_LAUNCHXL_SPI1_MOSI PIN_UNLOADed
#define CC1310_LAUNCHXL_SPI1_CLK 未分配的引脚
#define CC1310_LAUNCHXL_SPI1_CSn PIN_UNLOADD/*

UART 板*/
#define CC1310_LAUNCHXL_UART_RX 未分配的 PIN_REGLED /* RXD */
#define CC1310_LAUNCHXL_UART_TX 未分配的 PIN_REGLED /* TXD */
#define CC1310_LAUNCHXL_UART_CTS 未分配的 PIN_REGLED /* CTS */
#define CC1310_LAUNCHXL_UART_RTS 未分配的 PIN_REGLED /* RTS */*

!
*@简要初始化通用板特定设置
*
*此函数初始化通用板特定设置。
//
void CC1310_LAUNCHXL_initGeneral (void);

//!
*@简要关闭 LaunchPad 上的外部闪存
*
/
void CC1310_LAUNCHXL_shutDownExtFlash (void);

/*!
*@简要唤醒板级配置文件上的外部闪存
*
*此函数切换芯片选择所需的时间
*以唤醒芯片。
*/
void CC1310_LAUNCHXL_wakeUpExtFlash (void);

/*!
*@def CC1310_LAUNCHXL_ADCBufName
*@ADCBufs 的简要枚举
*/
typedef enum CC1310_LAUNCHXL_ADCBufName{
CC1310_LAUNCHXL_ADCBUF0 = 0、

CC1310_LAUNCHXL_ADCBUFCOUNT
}CC1310_LAUNCHXL_ADCBBufName;

/*!
*@def CC1310_LAUNCHXL_ADCBuf0SourceName
*@ADCBuf 通道的简要枚举
*/
typedef 枚举 CC1310_LAUNCHXL_ADCBuf0ChannelName{
CC1310_LAUNCHXL_ADCBUF0CHANNEL0 = 0、
CC1310_LAUNCHXL_ADCBUF0CHANNEL1、
CC1310_LAUNCHXL_ADCBUF0CHANNEL2、
CC1310_LAUNCHXL_ADCBUF0CHANNEL3、
CC1310_LAUNCHXL_ADCBUF0CHANNEL4、
CC1310_LAUNCHXL_ADCBUF0CHANNEL5、
CC1310_LAUNCHXL_ADCBUF0CHANNEL6、
CC1310_LAUNCHXL_ADCBUF0CHANNEL7、
CC1310_LAUNCHXL_ADCBUF0CHANNELVDDS、
CC1310_LAUNCHXL_ADCBUF0CHANNELDCOUPL、
CC1310_LAUNCHXL_ADCBUF0CHANNELVSS、

CC1310_LAUNCHXL_ADCBUF0CHANNELCOUNT
}CC1310_LAUNCHXL_ADCBuf0ChannelName;

/*!
*@def CC1310_LAUNCHXL_ADCName
*@ADC 的简要枚举
*/
typedef 枚举 CC1310_LAUNCHXL_ADCName{
CC1310_LAUNCHXL_ADC0 = 0、
CC1310_LAUNCHXL_ADC1、
CC1310_LAUNCHXL_ADC2、
CC1310_LAUNCHXL_ADC3、
CC1310_LAUNCHXL_ADC4、
CC1310_LAUNCHXL_ADC5、
CC1310_LAUNCHXL_ADC6、
CC1310_LAUNCHXL_ADC7、
CC1310_LAUNCHXL_ADCDCOUPL、
CC1310_LAUNCHXL_ADCVSS、
CC1310_LAUNCHXL_ADCVDDS、

CC1310_LAUNCHXL_ADCCOUNT
}CC1310_LAUNCHXL_ADCName;

//!
*@def CC1310_LAUNCHXL_CryptoName
*@Crypto name 的简要枚举
*/
typedef enum CC1310_LAUNCHXL_CryptoName{
CC1310_LAUNCHXL_CRYPTO0 = 0、

CC1310_LAUNCHXL_CRYPTOCOUNT
}CC1310_LAUNCHXL_CryptoName;

//!
*@def CC1310_LAUNCHXL_AESCMName
*@AESCMCM 名称的简短枚举
*/
typedef enum CC1310_LAUNCHXL_AESCMName{
CC1310_LAUNCHXL_AESCM0 = 0、

CC1310_LAUNCHXL_AESCMCOUNT
}CC1310_LAUNCHXL_AESCMName;

/*!
*@def CC1310_LAUNCHXL_AESGCMName
*@AESGCM 名称的简短枚举
*/
typedef enum CC1310_LAUNCHXL_AESGCMName{
CC1310_LAUNCHXL_AESGCM0 = 0、

CC1310_LAUNCHXL_AESGCMCOUNT
}CC1310_LAUNCHXL_AESGCMName;

/*!
*@def CC1310_LAUNCHXL_AESCBCCName
*@AESCBC 名称的简短枚举
*/
typedef enum CC1310_LAUNCHXL_AESCBCMName{
CC1310_LAUNCHXL_AESCMBC0 = 0、

CC1310_LAUNCHXL_AESCCBCCOUNT
}CC1310_LAUNCHXL_AESBCName;

/*!
*@def CC1310_LAUNCHXL_AESCTRName
*@AESTR 名称的简短枚举
*/
typedef enum CC1310_LAUNCHXL_AESCTRName{
CC1310_LAUNCHXL_AESCTR0 = 0、

CC1310_LAUNCHXL_AESCTRCOUNT
}CC1310_LAUNCHXL_AESCTRName;

//!
*@def CC1310_LAUNCHXL_AESECBName
*@AESECB 名称的简短枚举
*/
typedef enum CC1310_LAUNCHXL_AESECBName{
CC1310_LAUNCHXL_AESECB0 = 0、

CC1310_LAUNCHXL_AESECBCOUNT
}CC1310_LAUNCHXL_AESECBName;

/*!
*@def CC1310_LAUNCHXL_AESCTRDRBGName
*@AESCTRDRBG 名称的简短枚举
*/
typedef enum CC1310_LAUNCHXL_AESCTRDRBGName{
CC1310_LAUNCHXL_AESCTRDRBG0 = 0、

CC1310_LAUNCHXL_AESCTRDRBGCOUNT
}CC1310_LAUNCHXL_AESCTRDRBGName;

/*!
*@def CC1310_LAUNCHXL_TRNGName
*@TRNG 名称的简短枚举
*/
typedef enum CC1310_LAUNCHXL_TRNGName{
CC1310_LAUNCHXL_TRNG0 = 0、

CC1310_LAUNCHXL_TRNGCOUNT
}CC1310_LAUNCHXL_TRNGName;

//!
*@def CC1310_LAUNCHXL_GPIOName
*@GPIO 名称的简短枚举
*/
typedef 枚举 CC1310_LAUNCHXL_GPIOName{
CC1310_LAUNCHXL_GPIO_S1 = 0、
CC1310_LAUNCHXL_GPIO_S2、
CC1310_LAUNCHXL_SPI_MASTER_READY、
CC1310_LAUNCHXL_SPI_SLAVE_READY、
CC1310_LAUNCHXL_GPIO_LED_GREEN、
CC1310_LAUNCHXL_GPIO_LED_RED、
CC1310_LAUNCHXL_GPIO_TMP116_EN、
CC1310_LAUNCHXL_GPIO_SPI_FLASH_CS、
CC1310_LAUNCHXL_SDSPI_CS、
CC1310_LAUNCHXL_GPIO_LCD_CS、
CC1310_LAUNCHXL_GPIO_LCD_POWER、
CC1310_LAUNCHXL_GPIO_LCD_ENABLE、
CC1310_LAUNCHXL_GPIOCOUNT
}CC1310_LAUNCHXL_GPIOName;

//!
*@def CC1310_LAUNCHXL_GPTimerName
*@GPTimer 部件的简要枚举
*/
typedef 枚举 CC1310_LAUNCHXL_GPTimerName{
CC1310_LAUNCHXL_GPTIMER0A = 0、
CC1310_LAUNCHXL_GPTIMER0B、
CC1310_LAUNCHXL_GPTIMER1A、
CC1310_LAUNCHXL_GPTIMER1B、
CC1310_LAUNCHXL_GPTIMER2A、
CC1310_LAUNCHXL_GPTIMER2B、
CC1310_LAUNCHXL_GPTIMER3A、
CC1310_LAUNCHXL_GPTIMER3B、

CC1310_LAUNCHXL_GPTIMERPARTSCOUNT
}CC1310_LAUNCHXL_GPTimerName;

/*!
*@def CC1310_LAUNCHXL_GPTimers
*@GPTimers 的简要枚举
*/
typedef enum CC1310_LAUNCHXL_GPTimers{
CC1310_LAUNCHXL_GPTIMER0 = 0、
CC1310_LAUNCHXL_GPTIMER1、
CC1310_LAUNCHXL_GPTIMER2、
CC1310_LAUNCHXL_GPTIMER3、

CC1310_LAUNCHXL_GPTIMERCOUNT
}CC1310_LAUNCHXL_GPTimers;

//!
*@def CC1310_LAUNCHXL_I2CName
*@I2C 名称的简短枚举
*/
typedef 枚举 CC1310_LAUNCHXL_I2CName{
CC1310_LAUNCHXL_I2C0 = 0、

CC1310_LAUNCHXL_I2CCOUNT
}CC1310_LAUNCHXL_I2CName;

//!
*@def CC1310_LAUNCHXL_I2SName
*@I2S 名称的简短枚举
*/
typedef enum CC1310_LAUNCHXL_I2SName{
CC1310_LAUNCHXL_I2S0 = 0、

CC1310_LAUNCHXL_I2SCOUNT
}CC1310_LAUNCHXL_I2SName;

/*!
*@def CC1310_LAUNCHXL_NVSName
*@NVS 名称的简短枚举
*/
typedef enum CC1310_LAUNCHXL_NVSName{
#ifndef Board_exclude_NVS_INTERNAL_FLASH
CC1310_LAUNCHXL_NVSCC26XX0 = 0、
#endif
#ifndef Board_exclude_NVS_EXTERNAL_FLASH
CC1310_LAUNCHXL_NVSSPI25X0、
#endif

CC1310_LAUNCHXL_NVSCOUNT
}CC1310_LAUNCHXL_NVSName;

/*!
*@def CC1310_LAUNCHXL_PWM
*@PWM 输出的简要枚举
*/
typedef enum CC1310_LAUNCHXL_PWMName{
CC1310_LAUNCHXL_PWM0 = 0、
CC1310_LAUNCHXL_PWM1、
CC1310_LAUNCHXL_PWM2、
CC1310_LAUNCHXL_PWM3、
CC1310_LAUNCHXL_PWM4、
CC1310_LAUNCHXL_PWM5、
CC1310_LAUNCHXL_PWM6、
CC1310_LAUNCHXL_PWM7、

CC1310_LAUNCHXL_PWMCOUNT
}CC1310_LAUNCHXL_PWMName;

/*!
*@def CC1310_LAUNCHXL_SDName
*@SD 名称的简短枚举
*/
typedef enum CC1310_LAUNCHXL_SDName{
CC1310_LAUNCHXL_SDSPI0 = 0、

CC1310_LAUNCHXL_SDCOUNT
}CC1310_LAUNCHXL_SDName;

/*!
*@def CC1310_LAUNCHXL_SPIName
*@SPI 名称的简短枚举
*/
typedef 枚举 CC1310_LAUNCHXL_SPIName{
CC1310_LAUNCHXL_SPI0 = 0、
CC1310_LAUNCHXL_SPI1、

CC1310_LAUNCHXL_SPICOUNT
}CC1310_LAUNCHXL_SPIName;

/*!
*@def CC1310_LAUNCHXL_UARTName
*@UART 的简要枚举
*/
typedef 枚举 CC1310_LAUNCHXL_UARTName{
CC1310_LAUNCHXL_UART0 = 0、

CC1310_LAUNCHXL_UARTCOUNT
}CC1310_LAUNCHXL_UARTName;

//!
*@def CC1310_LAUNCHXL_UDMAName
*@DMA 缓冲器的简要枚举
*/
typedef 枚举 CC1310_LAUNCHXL_UDMAName{
CC1310_LAUNCHXL_UDMA0 = 0、

CC1310_LAUNCHXL_UDMACOUNT
}CC1310_LAUNCHXL_UDMAName;

//!
*@def CC1310_LAUNCHXL_WatchdogName
*@观察狗的简要枚举
*/
typedef enum CC1310_LAUNCHXL_WatchdogName{
CC1310_LAUNCHXL_WATCHDOG0 = 0、

CC1310_LAUNCHXL_WATCHDOGCOUNT
}CC1310_LAUNCHXL_WatchdogName;


#ifdef __cplusplus
}
#endif

#endif /*__CC1310_LAUNCHXL_Board_H_*

/*
版权所有(c) 2015-2019、德州仪器(TI)公司
*保留所有权利。
*
*
只要
符合以下条件*、允许以源代码和二进制形式重新分发和使用:
*
*源代码的重新分发必须保留上述版权
声明*、此条件列表和以下免责声明。
*
***二进制形式的再发行必须在

*随发行提供的文档和/或其他材料中复制上述版权声明、本条件列表和以下免责声明。
*
***未经

事先书面许可、不得使用德州仪器公司的名称或*其贡献者的名称认可或推广从本软件衍生的产品*。
*
*本软件由版权所有者和贡献者"按原样"提供
*、

不承担任何明示或暗示的保证、包括但不限于*适销性和特定用途适用性的暗示保证*。 在任何情况下、版权所有者或
*贡献者都不对任何直接、间接、偶然、特殊、
*模范、 或相应的损害(包括但不限于
*采购替代产品或服务;丧失使用、数据或利润;
*或业务中断)、但出于任何责任理论
、*无论是在合同中、严格责任还是由于
使用本软件而以任何方式产生的侵权行为(包括疏忽或*其他)
、*即使已获悉可能会发生此类损坏。
*/

/*
========================= CC1310_LAUNCHXL.c ================================================
*此文件负责为
* CC1310_LAUNCHXL 板设置特定于电路板的项目。
*/

#include 
#include 
#include 

#include 
#include 
#include 
#include 

#include "CC1310_LAUNCHXL.h"

/*
======================================== ADCBuf ================================================
*/
#include 
#include 

ADCBufCC26XX_Object adcBufCC26xxObjects[CC1310_LAUNCHXL_ADCBUFCOUNT];

//
*此表将虚拟 ADC 通道转换为 dio 和内部模拟
*输入信号。 此表是 adcBuf
*驱动程序运行所必需的。 注释掉未使用的条目以保存闪存。 DIO 和内部信号
*对硬接线。 不要在表中重新映射它们。 您可以对整个
*条目重新排序。 dio 和内部信号的映射取决于封装。
//
const ADCBufCC26XX_AdcChannelLutEntry ADCBufCC26XX_adcChannelLutlut[CC1310_LAUNCHXL_ADCBUF0CHANNELCOUNT]={
//{CC1310_LAUNCHXL_DIO23_ANALOG、ADC_COMPB_IN}、AUX7}
{CC1310_LAUNCHXL_DIO24_ANALOG、ADC_COMPB_IN_AUXIO6}、
{CC1310_LAUNCHXL_DIO25_ANALOG、ADC_COMPB_IN_AUXIO5}、
{CC1310_LAUNCHXL_DIO26_ANALOG、ADC_COMPB_IN_AUXIO4}、
{CC1310_LAUNCHXL_DIO27_ANALOG、ADC_COMPB_IN_AUXIO3}、
{CC1310_LAUNCHXL_DIO28_ANALOG、ADC_COMPB_IN_AUXIO2}、
{CC1310_LAUNCHXL_DIO29_ANALOG、ADC_COMPB_IN_AUXIO1}、
{CC1310_LAUNCHXL_DIO30_ANALOG、ADC_COMPB_IN_AUXIO0}、*/
{PIN_Unassigned、ADC_COMPB_IN_VDDS}、
{PIN_Unassigned、ADC_COMPB_IN_DCOUPL}、
{PIN_UNLOADD、ADC_COMPB_IN_VSS}、
};

const ADCBBufCC26XX_HWAttrs adcBufCC26xxHWAttrs[CC1310_LAUNCHXL_ADCBUFCOUNT]={
{
.intPriority =~0、
.wiPriority = 0、
.adcChannelLut = ADCBufCC26XX_adcChannelLut
、}
};

const ADCBuf_Config ADCBuf_config[CC1310_LAUNCHXL_ADCBUFCOUNT]={
{
ADCBufCC26XX_fxnTable (&A)、
&adcBufCC26xx 对象[CC1310_LAUNCHXL_ADCBUF0]、
adcBufCC26xxHWAttrs[CC1310_LAUNCHXL_ADCBUF0]
}、
};

const uint_least8_t ADCBBuf_count = CC1310_LAUNCHXL_ADCBUFCOUNT;

/*
================================================= ADC ================================================
*/
#include 
#include 

ADCCC26XX_Object adcCC26xxObjects[CC1310_LAUNCHXL_ADCCOUNT];


const ADCCC26XX_HWAttrs adcCC26xxHWAttrs[CC1310_LAUNCHXL_ADCCOUNT]={
{
.adcDIO = CC1310_LAUNCHXL_DIO23_ANALOG、
.adcCompBInput = ADC_COMPB_IN_AUXIO7、
.refSource = ADCCC26XX_fixed_reference、
.samplingDuration = ADCCC26XX_SAMPLING_DURAY_2P7_US、
.inputScalingEnabled = true、
.triggerSource = ADCCC26XX_TRIGGER_MANUAL、
.returnAdjustedVal = false
}、
{
.adcDIO = CC1310_LAUNCHXL_DIO24_ANALOG、
.adcCompBInput = ADC_COMPB_IN_AUXIO6、
.refSource = ADCCC26XX_fixed_reference、
.samplingDuration = ADCCC26XX_SAMPLING_DURAY_2P7_US、
.inputScalingEnabled = true、
.triggerSource = ADCCC26XX_TRIGGER_MANUAL、
.returnAdjustedVal = false
}、
{
.adcDIO = CC1310_LAUNCHXL_DIO25_ANALOG、
.adcCompBInput = ADC_COMPB_IN_AUXIO5、
.refSource = ADCCC26XX_fixed_reference、
.samplingDuration = ADCCC26XX_SAMPLING_DURAY_2P7_US、
.inputScalingEnabled = true、
.triggerSource = ADCCC26XX_TRIGGER_MANUAL、
.returnAdjustedVal = false
}、
{
.adcDIO = CC1310_LAUNCHXL_DIO26_ANALOG、
.adcCompBInput = ADC_COMPB_IN_AUXIO4、
.refSource = ADCCC26XX_fixed_reference、
.samplingDuration = ADCCC26XX_SAMPLING_DURAY_2P7_US、
.inputScalingEnabled = true、
.triggerSource = ADCCC26XX_TRIGGER_MANUAL、
.returnAdjustedVal = false
}、
{
.adcDIO = CC1310_LAUNCHXL_DIO27_ANALOG、
.adcCompBInput = ADC_COMPB_IN_AUXIO3、
.refSource = ADCCC26XX_fixed_reference、
.samplingDuration = ADCCC26XX_SAMPLING_DURAY_2P7_US、
.inputScalingEnabled = true、
.triggerSource = ADCCC26XX_TRIGGER_MANUAL、
.returnAdjustedVal = false
}、
{
.adcDIO = CC1310_LAUNCHXL_DIO28_ANALOG、
.adcCompBInput = ADC_COMPB_IN_AUXIO2、
.refSource = ADCCC26XX_fixed_reference、
.samplingDuration = ADCCC26XX_SAMPLING_DURAY_2P7_US、
.inputScalingEnabled = true、
.triggerSource = ADCCC26XX_TRIGGER_MANUAL、
.returnAdjustedVal = false
}、
{
.adcDIO = CC1310_LAUNCHXL_DIO29_ANALOG、
.adcCompBInput = ADC_COMPB_IN_AUXIO1、
.refSource = ADCCC26XX_fixed_reference、
.samplingDuration = ADCCC26XX_SAMPLING_DURAY_2P7_US、
.inputScalingEnabled = true、
.triggerSource = ADCCC26XX_TRIGGER_MANUAL、
.returnAdjustedVal = false
}、
{
.adcDIO = CC1310_LAUNCHXL_DIO30_ANALOG、
.adcCompBInput = ADC_COMPB_IN_AUXIO0、
.refSource = ADCCC26XX_fixed_reference、
.samplingDuration = ADCCC26XX_SAMPLING_DURAY_10P9_MS、
.inputScalingEnabled = true、
.triggerSource = ADCCC26XX_TRIGGER_MANUAL、
.returnAdjustedVal = false
}、
{
.adcDIO = PIN_Unassigned、
.adcCompBInput = ADC_COMPB_IN_DCOUPL、
.refSource = ADCCC26XX_fixed_reference、
.samplingDuration = ADCCC26XX_SAMPLING_DURAY_2P7_US、
.inputScalingEnabled = true、
.triggerSource = ADCCC26XX_TRIGGER_MANUAL、
.returnAdjustedVal = false
}、
{
.adcDIO = PIN_Unassigned、
.adcCompBInput = ADC_COMPB_IN_VSS、
.refSource = ADCCC26XX_fixed_reference、
.samplingDuration = ADCCC26XX_SAMPLING_DURAY_2P7_US、
.inputScalingEnabled = true、
.triggerSource = ADCCC26XX_TRIGGER_MANUAL、
.returnAdjustedVal = false
}、
{
.adcDIO = PIN_Unassigned、
.adcCompBInput = ADC_COMPB_IN_VDDS、
.refSource = ADCCC26XX_fixed_reference、
.samplingDuration = ADCCC26XX_SAMPLING_DURAY_2P7_US、
.inputScalingEnabled = true、
.triggerSource = ADCCC26XX_TRIGGER_MANUAL、
返回调整值= false
}
};

const ADC_Config ADC_CONFIG[CC1310_LAUNCHXL_ADCCOUNT]={
{&ADCCC26XX_fxnTable、&adcCC26xx 对象[CC1310_LAUNCHXL_ADC0]、&adcCC26xxHWAttrs[CC1310_LAUNCHXL_ADC0]}、
{&ADCCC26XX_fxnTable、&adcCC26xx 对象[CC1310_LAUNCHXL_ADC1]、&adcCC26xxHWAttrs[CC1310_LAUNCHXL_ADC1]}、
{&ADCCC26XX_fxnTable、&adcCC26xx 对象[CC1310_LAUNCHXL_ADC2]、&adcCC26xxHWAttrs[CC1310_LAUNCHXL_ADC2]}、
{&ADCCC26XX_fxnTable、&adcCC26xx 对象[CC1310_LAUNCHXL_ADC3]、&adcCC26xxHWAttrs[CC1310_LAUNCHXL_ADC3]}、
{&ADCCC26XX_fxnTable、&adcCC26xx 对象[CC1310_LAUNCHXL_ADC4]、&adcCC26xxHWAttrs[CC1310_LAUNCHXL_ADC4]}、
{&ADCCC26XX_fxnTable、&adcCC26xx 对象[CC1310_LAUNCHXL_ADC5]、&adcCC26xxHWAttrs[CC1310_LAUNCHXL_ADC5]}、
{&ADCCC26XX_fxnTable、&adcCC26xx 对象[CC1310_LAUNCHXL_ADC6]、&adcCC26xxHWAttrs[CC1310_LAUNCHXL_ADC6]}、
{&ADCCC26XX_fxnTable、&adcCC26xx 对象[CC1310_LAUNCHXL_ADC7]、&adcCC26xxHWAttrs[CC1310_LAUNCHXL_ADC7]}、
{&ADCCC26XX_fxnTable、&adcCC26xxObjects[CC1310_LAUNCHXL_ADCDCOUPL]、&adcCC26xxHWAttrs[CC1310_LAUNCHXL_ADCDCOUPL]}、
{&ADCCC26XX_fxnTable、&adcCC26xx 对象[CC1310_LAUNCHXL_ADCVSS]、&adcCC26xxHWAttrs[CC1310_LAUNCHXL_ADCVSS]}、
{&ADCCC26XX_fxnTable、&adcCC26xxObjects[CC1310_LAUNCHXL_ADCVDDS]、&adcCC26xxHWAttrs[CC1310_LAUNCHXL_ADCVDDS]}、
};

const uint_least8_t ADC_COUNT = CC1310_LAUNCHXL_ADC===*=============================ADC=========================.&;=&=


Crypto ================================================
//
/*#include 

CryptoCC26XX_Object cryptoCC26XX Objects[CC1310_LAUNCHXL_CRYPTOCOUNT];

const CryptoCC26XX_HWAttrs cryptoCC26XXHWAttrs[CC1310_LAUNCHXL_CRYPTOCOUNT]={
{
baseAddr = crypto_BASE、
powerMngrId = PowerCC26XX_Periph_crypto、
.intNum = INT_crypto_result_ave_IRQ、
.intPriority =~0、
}
};

const CryptoCC26XX_Config CryptoCC26XX_config[CC1310_LAUNCHXL_CRYPTOCOUNT]={
{
.object =加密 CC26XX 对象[CC1310_LAUNCHXL_CRYPTO0]、
hwAttrs =&cryptoCC26XXXXHWAttrs[CC1310_LAUNCHXL_CRYPTO0]
}
};
*/

/*
============ AESCM=========================================
*/
#include 
#include 

AESCMCC26XX_Object aesccmCC26XX Objects[CC1310_LAUNCHXL_AESCMCOUNT];

const AESCMCC26XX_HWAttrs aesccmCC26XXHWAttrs[CC1310_LAUNCHXL_AESCMCOUNT]={
{
.intPriority =~0
、}
};

const AESCM_Config AESCM_CONFIG[CC1310_LAUNCHXL_AESCMCOUNT]={
{
.object = aesccmCC26XX 对象[CC1310_LAUNCHXL_AESCM0]、
hwAttrs =&aesccmCC26XXXXHWAttrs[CC1310_LAUNCHXL_AESCM0]
}、
};

const uint_least8_t AESCM_COUNT = CC1310_LAUNCHXL_AESCMCOUNT;


/*
================================================= AESGCM =========================================
*/
#include 
#include 

AESGCMCC26XX_Object aesgcmCC26XX Objects[CC1310_LAUNCHXL_AESGCMCOUNT];

const AESGCMCC26XX_HWAttrs aesgcmCC26XXXHWAttrs[CC1310_LAUNCHXL_AESGCMCOUNT]={
{
.intPriority =~0
、}
};

const AESGCM_Config AESGCM_CONFIG[CC1310_LAUNCHXL_AESGCMCOUNT]={
{
.object = aesgcmCC26XX 对象[CC1310_LAUNCHXL_AESGCM0]、
hwAttrs =&aesgcmCC26XXXXHWAttrs[CC1310_LAUNCHXL_AESGCM0]
},
};

const uint_least8_t AESGCM_COUNT = CC1310_LAUNCHXL_AESGCMCOUNT;

/*
========================================================= AESCBC ================================================
*/
#include 
#include 

AESCBCCC26XX_Object aesccCC26XX Objects[CC1310_LAUNCHXL_AESCBCOUNT];

CONST AESCBCCC26XX_HWAttrs aescbCC26XXXHWAttrs[CC1310_LAUNCHXL_AESCMCUNT]={
{
.intPriority =~0
、}
};

const AESCBC_Config AESCBC_CONFIG[CC1310_LAUNCHXL_AESCBCOUNT]={
{
.object = aescbcCC26XX 对象[CC1310_LAUNCHXL_AESCBC0]、
hwAttrs =&aescbcCC26XXXXHWAttrs[CC1310_LAUNCHXL_AESCB0]
}、
};

const uint_least8_t AESCBC_COUNT = CC1310_LAUNCHXL_AESCBCCOUNT;

/*
================================================= AESCTR ========================================
*/
#include 
#include 

AESCTRCC26XX_Object aesctrCC26XX Objects[CC1310_LAUNCHXL_AESCTRCOUNT];

const AESCTRCC26XX_HWAttrs aesctrCC26XXHWAttrs[CC1310_LAUNCHXL_AESCTRCOUNT]={
{
.intPriority =~0
、}
};

const AESCTR_Config AESCTR_CONFIG[CC1310_LAUNCHXL_AESCTRCOUNT]={
{
.object = aesctrCC26XX 对象[CC1310_LAUNCHXL_AESCTR0]、
hwAttrs =&aesctrCC26XXXXHWAttrs[CC1310_LAUNCHXL_AESCTR0]
}、
};

const uint_least8_t AESCTR_COUNT = CC1310_LAUNCHXL_AESCTRCOUNT;

/*
=================================== AESECB ================================================
*/
#include 
#include 

AESECBCC26XX_Object aesecbCC26XX Objects[CC1310_LAUNCHXL_AESECBCOUNT];

const AESECBCC26XX_HWAttrs aesecbCC26XXHWAttrs[CC1310_LAUNCHXL_AESECBCOUNT]={
{
.intPriority =~0
、}
};

const AESECB_Config AESECB_CONFIG[CC1310_LAUNCHXL_AESECBCOUNT]={
{
.object = aesecbCC26XX 对象[CC1310_LAUNCHXL_AESECB0]、
hwAttrs =&aesecbCC26XXXXHWAttrs[CC1310_LAUNCHXL_AESECB0]
},
};

const uint_least8_t AESECB_COUNT = CC1310_LAUNCHXL_AESECBCOUNT;

/*
================================================= AESCTRDRBG ========================================================
*/
#include 
#include 

AESCTRDRBGXX_Object aesctrdrbgXXObjects[CC1310_LAUNCHXL_AESCTRDRBGCOUNT];

const AESCTRDRBGXX_HWAttrs aesctrbgXHUBXWAttrs[CC1310_LAUNCHXL_AESCTRDESCGCUNT]={
{
a.esctrIndex = CC1310_LAUNCHXL_AESCTR0
、}
};

CONST AESCTRDRBG_Config AESCTRDRBG_CONFIG[CC1310_LAUNCHXL_AESCTRDRBGCOUNT]={
{
.object =&aesctrdrbgXX 对象[CC1310_LAUNCHXL_AESCTRDRBG0]、
hwAttrs =&aesctrdrbgXXHWAttrs[CC1310_LAUNCHXL_AESCTRDRBG0]
},
};

const uint_least8_t AESCTRDRBG_COUNT = CC1310_LAUNCHXL_AESCTRDRBGCOUNT;

/*
================================================= 培训================================================
*/
#include 
#include 

TRNGCC26XX_Object trngCC26XX Objects[CC1310_LAUNCHXL_TRNGCOUNT];

const TRNGCC26XX_HWAttrs trngCC26X2HWAttrs[CC1310_LAUNCHXL_TRNGCOUNT]={
{
.intPriority =~0、
.wiPriority = 0、
.samplesPerCycle = 240000
、}
};

const TRNG_Config TRNG_CONFIG[CC1310_LAUNCHXL_TRNGCOUNT]={
{
.object =&trngCC26XX 对象[CC1310_LAUNCHXL_TRNG0]、
hwAttrs =&trngCC26X2HWAttrs[CC1310_LAUNCHXL_TRNG0]
}、
};

const uint_least8_t TRNG_COUNT = CC1310_LAUNCHXL_TRNGCOUNT;

/*
========================================== Display ===========================================
*/
#include 
#include 
#include 

#ifndef Board_display_uart_stRBUF_size
#define Board_display_uart_stRBUF_size 128
#endif

//可以将此值更改为96,以便与430BOOST-SHARP96 BoosterPack 配合使用。 */
#define Board_display_shared_size 128

DisplayUart_Object displayUartObject;
DisplaySharpObject displaySharpObject;

static char uartStringBuf[Board_display_UART_STRBUF_size];
static uint_least8_t DisplayBuf[Board_display_sharp_size * Board_display_sharp_size / 8];

const DisplayUart_HWAttrs Uarts ={display_sharpSize}
uartIdx = CC1310_LAUNCHXL_UART0、
波特率 = 115200、
.mutexTimeout =(unsigned int)(-1)、
strBuf = uartStringBuf、
strBufLen = Board_display_UART_STRBUF_size、
};

const DisplaySharp HWAttrsV1 displaySharpHWattrs ={
spiIndex = CC1310_LAUNCHXL_SPI0、
csPin = CC1310_LAUNCHXL_GPIO_LCD_CS、
powerPin = CC1310_LAUNCHXL_GPIO_LCD_POWER、
.enablePin = CC1310_LAUNCHXL_GPIO_LCD_ENABLE、
像素宽度= Board_display_sharp_size、
像素高度= Board_display_sharp_size、
.ddisplayBuf = sharpDisplayBuf、
};

#ifndef Board_display_use_UART
#define Board_display_use_UART 1
#endif
#ifndef Board_display_use_uart_ansi
#define Board_display_use_uart_ansi 0
#endif
Board_display_use_lcd
#define Board_display_use_neldif*




****如果需要使用 IAR 编译器#define *#define LCD_display_use_ise_unifdifdifndef *或#endif *。 IAR 编译器不喜欢空数组
*初始化。 (IAR Error[Pe1345])
*/
#if (Board_display_use_UART || Board_display_use_LCD)

const Display_Config Display_config[]={
#if (Board_display_use_UART)
{
# if (Board_display_use_uart_ansi)
.fxnTablePtr =&DisplayUartAnsi_fxnTable、
# else //默认为最小 UART,无光标放置*/
.fxnTablePtr =&DisplayUartMin_fxnTable
、# endif
.object =显示 UartObject (&D)、
hwAttrs =显示 UartHWAttrs (&D)、
}、
#endif
#if (Board_display_use_LCD)
{
.fxnTablePtr =&DisplaySharp_fxnTable、
.object =显示共享对象(&D)、
hwAttrs =显示 SharpHWattrs (&D)
}、
#endif
};

const uint_least8_t Display_count = sizeof (Display_config)/ sizeof (Display_Config);

#else

const Display_Config * Display_config = NULL;
const uint_least8_t Display_count = 0;

#endif //(Board_display_use_display_use_=/=/=*=*=*==*===/====*=====/=uart=======|_display_count


GPIO ===========================================
*/
#include 
#include 

/*
引脚配置数组
*注意:引脚配置的顺序必须与之前
的顺序一致* 在 CC1310_LAUNCHXL.h 中定义
*注意:不用于中断的引脚应放置在
*的末尾 数组。 回调数组到
*的回调条目可以省略 减少内存使用。
*/
GPIO_PinConfig gpioPinConfigs[]={
/*输入引脚*/
GPIOCC26XX_DIO_13 | GPIO_DO_NOT _CONFIG、/*按钮0 */
GPIOCC26XX_DIO_14 | GPIO_DO_NOT _CONFIG、/*按钮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 *

/*输出引脚*/
GPIOCC26XX_DIO_07 | GPIO_DO_NOT _CONFIG、/*绿色 LED *
GPIOCC26XX_DIO_06 | GPIO_DO_NOT _CONFIG、/*红色 LED *
GPIOCC26XX_DIO_30 | GPIO_DO_NOT _CONFIG、// TMP116_EN *

/* SPI 闪存 CSn *
GPIOCC26XX_DIO_20 | GPIO_DO_NOT _CONFIG、

/* SD CS */
GPIOCC26XX_DIO_21 | GPIO_DO_NOT _CONFIG、

/* Sharp Display - GPIO 配置将在 Display 文件中完成*/
GPIOCC26XX_DIO_24 | GPIO_DO_NOT _CONFIG、/* SPI 芯片选择*
GPIOCC26XX_DIO_22 | GPIO_DO_NOT _CONFIG、/* LCD 电源控制*
GPIOCC26XX_DIO_23 | GPIO_DO_NOT_CONFIG、/* LCD enable */

};

//
*回调函数指针数组
*注意:引脚配置的顺序必须与之前
的顺序一致* 在 CC1310_LAUNCH.h 中定义
*注意:不用于中断的引脚可从回调数组中省略至
* 减少内存使用(如果放置在 gpioPinConfigs 数组的末尾)。
*/
GPIO_CallbackFxn gpioCallbackFunctions[]={
空,/*按钮0 */
空,/*按钮1 */
空、// CC1310_LAUNCHXL_SPI_MASTER_READY */
空、//* CC1310_LAUNCHXL_SPI_SLAVE_READY */
};

const GPIOCC26XX_Config GPIOCC26XX_CONFIG ={
.pinConfigs =(GPIO_PinConfig *) gpioPinConfigs、
.callback =(GPIO_CallbackFxn *) gpioCallbackFuncions、
numberOfPinConfigs = CC1310_LAUNCHXL_GPIOCOUNT、
numberOfCallbacks = sizeof (gpioCallbackFuncions)/sizeof (GPIO_CallbackFxn)、
.intPriority =(~0)
};

/*
========================================= GPTimer ================================================
*删除 Board.c 和 Board.h
中未使用的条目以减少闪存的使用*/
#include 

GPTimerCC26XX_Object gptimerCC26XX 对象[CC1310_LAUNCHXL_GPTIMERCOUNT];

const GPTimerCC26XX_HWAttrs gptimerCC26xxHWAttrs[CC1310_LAUNCHXL_GPTIMERPARTSCOUNT]={
{.baseAddr = GPT0_BASE、.intNum = INT_GPT0A、.intPriority =(~0)、.powerMngrId = PowerCC26XX_Periph_GPT0、.pinMux = GPT_PIN_0A、 }、
{.baseAddr = GPT0_BASE、.intNum = INT_GPT0B、.intPriority =(~0)、.powerMngrId = PowerCC26XX_Periph_GPT0、.pinMux = GPT_PIN_0B、 }、
{.baseAddr = gp1_BASE、.intNum = INT_GPT1A、.intPriority =(~0)、.powerMngrId = PowerCC26XX_Periph_GPT1、.pinMux = GPT_PIN_1A、 }、
{.baseAddr = gp1_BASE、.intNum = INT_GPT1B、.intPriority =(~0)、.powerMngrId = PowerCC26XX_Periph_GPT1、.pinMux = GPT_PIN_1B、 }、
{.baseAddr = GPT2_base、.intNum = INT_GPT2A、.intPriority =(~0)、.powerMngrId = PowerCC26XX_Periph_GPT2、.pinMux = GPT_PIN_2A、 }、
{.baseAddr = GPT2_base、.intNum = INT_GPT2B、.intPriority =(~0)、.powerMngrId = PowerCC26XX_Periph_GPT2、.pinMux = GPT_PIN_2B、 }、
{.baseAddr = GPT3_base、.intNum = INT_GPT3A、.intPriority =(~0)、.powerMngrId = PowerCC26XX_Periph_GPT3、.pinMux = GPT_PIN_3A、 }、
{.baseAddr = GPT3_base、.intNum = INT_GPT3B、.intPriority =(~0)、.powerMngrId = PowerCC26XX_Periph_GPT3、.pinMux = GPT_PIN_3B、 }、
};

const GPTimerCC26XX_Config GPTimerCC26XX_CONFIG[CC1310_LAUNCHXL_GPTIMERPARTSCOUNT]={
{&gptimerCC26XX 对象[CC1310_LAUNCHXL_GPTIMER0]、&gptimerCC26xxHWAttrs[CC1310_LAUNCHXL_GPTIMER0A]、GPT_A}、
{&gptimerCC26XX 对象[CC1310_LAUNCHXL_GPTIMER0]、&gptimerCC26xxHWAttrs[CC1310_LAUNCHXL_GPTIMER0B]、GPT_B}、
{&gptimerCC26XX 对象[CC1310_LAUNCHXL_GPTIMER1]、&gptimerCC26xxHWAttrs[CC1310_LAUNCHXL_GPTIMER1A]、GPT_A}、
{&gptimerCC26XX 对象[CC1310_LAUNCHXL_GPTIMER1]、&gptimerCC26xxHWAttrs[CC1310_LAUNCHXL_GPTIMER1B]、GPT_B}、
{&gptimerCC26XX 对象[CC1310_LAUNCHXL_GPTIMER2]、&gptimerCC26xxHWAttrs[CC1310_LAUNCHXL_GPTIMER2A]、GPT_A}、
{&gptimerCC26XX 对象[CC1310_LAUNCHXL_GPTIMER2]、&gptimerCC26xxHWAttrs[CC1310_LAUNCHXL_GPTIMER2B]、GPT_B}、
{&gptimerCC26XX 对象[CC1310_LAUNCHXL_GPTIMER3]、&gptimerCC26xxHWAttrs[CC1310_LAUNCHXL_GPTIMER3A]、GPT_A}、
{&gptimerCC26XX 对象[CC1310_LAUNCHXL_GPTIMER3]、&gptimerCC26xxHWAttrs[CC1310_LAUNCHXL_GPTIMER3B]、GPT_B}、
};

/*
*=================== I2C ================================================
*/
#include 
#include 

I2CCC26XX_Object i2cCC26xxObjects[CC1310_LAUNCHXL_I2CCOUNT;

const I2CCC26XX_HWAttrsV1 i2cCC26xxHWAttrs[CC1310_LAUNCHXL_I2CCOUNT ={
{
baseAddr = I2C0_BASE、
powerMngrId = PowerCC26XX_Periph_I2C0、
.intNum = INT_I2C_IRQ、
.intPriority =~0、
.wiPriority = 0、
sdaPin = CC1310_LAUNCHXL_I2C0_SDA0、
.sclPin = CC1310_LAUNCHXL_I2C0_SCL0
、}
};

const I2C_Config I2C_CONFIG[CC1310_LAUNCHXL_I2CCOUNT ={
{
.fxnTablePtr =&I2CCC26XX_fxnTable、
.object =&i2cCC26xx 对象[CC1310_LAUNCHXL_I2C0]、
hwAttrs =&i2cCC26xxHWAttrs[CC1310_LAUNCHXL_I2C0]
}
};

const uint_least8_t I2C_count = CC1310_LAUNCHXL_I2CCOUNT;

//
*=========================== I2S ========================================================
*/
#include 
#include 

I2SCC26XX_Object i2sCC26XX Objects[CC1310_LAUNCHXL_I2SCOUNT];

const I2SCC26XX_HWAttrs i2sCC26XXHWAttrs[CC1310_LAUNCHXL_I2SCOUNT]={
{
pinSD1 = CC1310_LAUNCHXL_I2S_ADI、
pinSD0 = CC1310_LAUNCHXL_I2S_ADO、
引脚 SCK = CC1310_LAUNCHXL_I2S_BCLK、
引脚 MCLK = CC1310_LAUNCHXL_I2S_MCLK、
.pinWS = CC1310_LAUNCHXL_I2S_WCLK、
.intPriority =~0、
}
};

const I2S_Config I2S_CONFIG[CC1310_LAUNCHXL_I2SCOUNT]={
{
.object =&i2sCC26XX 对象[CC1310_LAUNCHXL_I2S0]、
hwAttrs =&i2sCC26XXXHWAttrs[CC1310_LAUNCHXL_I2S0]
}、
};

const uint_least8_t I2S_count = CC1310_LAUNCHXL_I2SCOUNT;

/*
================================================= NVS ================================================
*/
#include 
#include 
#include 

#define NVS_REGESS_BASE 0x1A000
#define SECTORSIZE 0x1000
#define REGIZE (SECTORSIZE * 4)

#ifndef Board_exclude_NVS_INTERNAL_FLASH

//
*通过在
所需的闪存地址放置一个未初始化的字节*数组来保留用于 NVS 驱动程序的闪存扇区。
//
#if defined (__TI_Compiler_version__)

//
*将未初始化的数组放置在 NVS_REGESS_BASE
*/
#pragma LOCATION (flashBuf、NVS_REGESS_BASE);
#pragma NOINIT (init_Buf);
static char flashIZBUF[REGINVBuE];

#elif defined (__OS_RESSION_STATES_SION_STATES_SION_RESSION_STATES_SION_RESSION_RESSION_RESSION_RESSION_RESSION_RESSION_RESSION_RESSION_RESSION_RESSION_RATION_




@

#elif defined (__GNU__)

//*
将闪存缓冲区放置在在 gcc 链接器文件中创建的.NVS 段中。
*.NVS 段在扇区边界上强制对齐、但
可以*放置在闪存中的任何位置。 如果需要、
可以通过更改 gcc 链接器文件中的以下内容将.NVS 段*设置为固定地址:
*
.NVS (fixed_flash_ADDR)(NoLoad):at (fixed_flash_ADDR){
* *(.NVS)
*}> region_text
*/
__attribute__(((section (".NVS")))
static char flashBuf[REGIZE];

#endif

//为 NVS 内部区域分配对象*/
NVSCC26XX_Object nvsCC26xxObjects[1];

// NVCC26xx_Attres1
的硬件属性= NVCC26xx/NVCC26xx_NVCC26xx_NVS 内部区域*
{
regionBase =(void *) flashBuf、
regionSize = REGIZE、
}、
};

#endif // Board_exclude_NVS_internal_flash */

#ifndef Board_exclude_NVS_EXTERNAL_FLASH

#define SPISECTORSIVERZE 0x1000
#define SPIREGISTORIZE (SPISECGIZE * 32)
#define NVIFYBUFSI64

static uint8_t 0x1000 #define SPIREGIFTS[SPIENDRVENTS_CLUS_ENTIVEST_ENDRESS1]***对象[SPIENIFVENIFVICEST_NVSIONZ]

* 2 * 2 * 2 * 2 * 2 * 2 * 2 * 1 * 1 * 1 * 1 * 1 * 1 *


1 *为对象分配 NVIFNVIFVINDIFFIWRUSTRIPSIONIFTS[SPIEN

{
regionBaseOffset = 0、
.ONSSIZE = SPIREGIZIZE、
sectorSize = SPISECTORSIZE、
verifyBuf = verifyBuf、
verifyBufSize = VERIFYBUFSIZE、
.spiHandle = NULL、
spiIndex = 0、
spiBitRate = 4000000、
spiCsnGpioIndex = CC1310_LAUNCHXL_GPIO_SPI_FLASH_CS、
.statusPollDelayU = 100、
}、
};

#endif // Board_exclude_NVS_EXTERNAL_FLASH *//

////* NVS 区域索引0和1分别指 NVS 和 NVS SPI */
const NVS_Config NVS_CONFIG[CC1310_LAUNCHXL_NVSCOUNT]={
#ifndef Board_exclude_NVS_internal_FLASH
{
.fxnTablePtr =&NVSCC26XX_fxnTable、
.object =_nvsCC26xx 对象[0]、
hwAttrs =&nvsCC26xxHWAttrs[0]、
}、
#endif
#ifndef Board_exclude_NVS_EXTERNAL_FLASH
{
.fxnTablePtr =&NVSSPI25X_fxnTable、
.object =_nvsSPI25XObjects[0]、
hwAttrs =&nvsSPI25XHOWAttrs[0]、
}、
#endif
};

const uint_least8_t NVS_count = CC1310_LAUNCHXL_NVSCOUNT;

/*
==== Pin ========================================================
*/
#include 
#include 

const PIN_Config BoardGpioInitTable[]={

CC1310_LAUNCHXL_PIN_RLED | PIN_GPIO_OUTP_EN | PIN_GPIO_LOW | PIN_PushPull | PIN_DRVSTR_MAX、 /* LED 最初关闭 *
CC1310_LAUNCHXL_PIN_GLED | PIN_GPIO_OUTP_EN | PIN_GPIO_LOW | PIN_PushPull | PIN_DRVSTR_MAX、 /* LED 最初关闭 *
CC1310_LAUNCHXL_PIN_BTN1 | PIN_INPUT_EN | PIN_PULLUP | PIN_IRQ_BOTHEDGES | PIN_迟滞、 /*按钮为低电平有效 *
CC1310_LAUNCHXL_PIN_BTN2 | PIN_INPUT_EN | PIN_PULLUP | PIN_IRQ_BOTHEDGES | PIN_迟滞、 /*按钮为低电平有效 *
CC1310_LAUNCHXL_SPI_FLASH_CS | PIN_GPIO_OUTP_EN | PIN_GPIO_HIGH | PIN_PushPull | PIN_DRVSTR_MIN、/*外部闪存芯片选择*
CC1310_LAUNCHXL_UART_RX | PIN_INPUT_EN | PIN_PUL拉、 /*通过调试器反向通道的 UART RX */
CC1310_LAUNCHXL_UART_TX | PIN_GPIO_OUTP_EN | PIN_GPIO_LOW | PIN_PushPull、 /*通过调试器反向通道的 UART TX */
CC1310_LAUNCHXL_SPI0_MOSI | PIN_INPUT_EN | PIN_PULLDOWN、 /* SPI 主器件输出-从器件输入*/
CC1310_LAUNCHXL_SPI0_MISO | PIN_INPUT_EN | PIN_PULLDOWN、 /* SPI 主器件输入-从器件输出*/
CC1310_LAUNCHXL_SPI0_CLK | PIN_INPUT_EN | PIN_PULLDOWN、 /* SPI 时钟*/

PIN_TERMINATE
};

const PINCC26XX_HWAttrs PINCC26XX_hwAttrs ={
.intPriority =~0、
.wiPriority = 0
};

/*
========================================= 电源================================================
*/
#include 
#include 

CONST PowerCC26XX_Config PowerCC26XX_CONFIG ={
策略 InitFxn =空、
policyFxn =&PowerCC26XX_standbyPolicy、
.calibrateFxn =&PowerCC26XX_CALIBRATE、
.enablePolicy = true、
.calibrateRCOSC_LF = true、
.calibrateRCOSC_HF = true、
};

/*
=================================== PWM ================================================
*删除 Board.c 和 Board.h
中未使用的条目以减少闪存的使用*/
#include 
#include 

PWMTimerCC26XX_Object pwmtimerCC26xxObjects[CC1310_LAUNCHXL_PWMCOUNT];

const PWMTimerCC26XX_HwAttrs pwmtimerCC26xxHWAttrs[CC1310_LAUNCHXL_PWMCOUNT]={
{.pwmPin = CC1310_LAUNCHXL_PWMPIN0、.gpTimerUnit = CC1310_LAUNCHXL_GPTIMER0A}、
{.pwmPin = CC1310_LAUNCHXL_PWMPIN1、.gpTimerUnit = CC1310_LAUNCHXL_GPTIMER0B}、
{.pwmPin = CC1310_LAUNCHXL_PWMPIN2、.gpTimerUnit = CC1310_LAUNCHXL_GPTIMER1A}、
{.pwmPin = CC1310_LAUNCHXL_PWMPIN3、.gpTimerUnit = CC1310_LAUNCHXL_GPTIMER1B}、
{.pwmPin = CC1310_LAUNCHXL_PWMPIN4、.gpTimerUnit = CC1310_LAUNCHXL_GPTIMER2A}、
{.pwmPin = CC1310_LAUNCHXL_PWMPIN5、.gpTimerUnit = CC1310_LAUNCHXL_GPTIMER2B}、
{.pwmPin = CC1310_LAUNCHXL_PWMPIN6、.gpTimerUnit = CC1310_LAUNCHXL_GPTIMER3A}、
{.pwmPin = CC1310_LAUNCHXL_PWMPIN7、.gpTimerUnit = CC1310_LAUNCHXL_GPTIMER3B}、
};

const PWM_Config PWM_CONFIG[CC1310_LAUNCHXL_PWMCOUNT]={
{&PWMTimerCC26XX_fxnTable、&pwmtimerCC26xx 对象[CC1310_LAUNCHXL_PWM0]、&pwmtimerCC26xxHWAttrs[CC1310_LAUNCHXL_PWM0]}、
{&PWMTimerCC26XX_fxnTable、&pwmtimerCC26xx 对象[CC1310_LAUNCHXL_PWM1]、&pwmtimerCC26xxHWAttrs[CC1310_LAUNCHXL_PWM1]}、
{&PWMTimerCC26XX_fxnTable、&pwmtimerCC26xx 对象[CC1310_LAUNCHXL_PWM2]、&pwmtimerCC26xxHWAttrs[CC1310_LAUNCHXL_PWM2]}、
{&PWMTimerCC26XX_fxnTable、&pwmtimerCC26xx 对象[CC1310_LAUNCHXL_PWM3]、&pwmtimerCC26xxHWAttrs[CC1310_LAUNCHXL_PWM3]}、
{&PWMTimerCC26XX_fxnTable、&pwmtimerCC26xx 对象[CC1310_LAUNCHXL_PWM4]、&pwmtimerCC26xxHWAttrs[CC1310_LAUNCHXL_PWM4]}、
{&PWMTimerCC26XX_fxnTable、&pwmtimerCC26xx 对象[CC1310_LAUNCHXL_PWM5]、&pwmtimerCC26xxHWAttrs[CC1310_LAUNCHXL_PWM5]}、
{&PWMTimerCC26XX_fxnTable、&pwmtimerCC26xx 对象[CC1310_LAUNCHXL_PWM6]、&pwmtimerCC26xxHWAttrs[CC1310_LAUNCHXL_PWM6]}、
{&PWMTimerCC26XX_fxnTable、&pwmtimerCC26xxObjects[CC1310_LAUNCHXL_PWM7]、&pwmtimerCC26xxHWAttrs[CC1310_LAUNCHXL_PWM7]}、
};

const uint_least8_t PWM_==*======LAUNCHXL_======COUNT=======================_PWM1310=_PWM=_PWM=_PWM=.=.=.=.=.=.=.=.=.=


射频驱动程序========================================
*/
#include 

const RFCC26XX_HWAttrsV2 RFCC26XX_hwAttrs ={
.hwiPriority =~0、 /*最低 HWI 优先级*/
.wiPriority = 0、 /*最低 SWI 优先级*/
.xoscHfAlwaysNeeded = true、 /*在待机状态下保持 XOSC 依赖性*/
globalCallback =空、 /*无特定于电路板的回调*/
globalEventMask = 0 /*没有订阅的事件*/
};

/*
========================================= sd ================================================
*/
#include 
#include 

SDSPI_Object sdspiObjects[CC1310_LAUNCHXL_SDCOUNT];

const SDSPI_HWAttrs sdspiHWAttrs[CC1310_LAUNCHXL_SDCOUNT]={
{
spiIndex = CC1310_LAUNCHXL_SPI0、
spiCssGpioIndex = CC1310_LAUNCHXL_SDSPI_CS
}
};

const SD_Config SD_config[CC1310_LAUNCHXL_SDCOUNT]={
{
.fxnTablePtr =&SDSPI_fxnTable、
.object =&sdspiObjects[CC1310_LAUNCHXL_SDSPI0]、
hwAttrs =&sdspiHWAttrs[CC1310_LAUNCHXL_SDSPI0]
}、
};

const uint_least8_t sd_count = CC1310_LAUNCHXL_SDCOUNT;

//
*================================================= SPI DMA ================================================
*/
#include 
#include 

SPICC26XXDMA_Object spiCC26XXDMAObjects[CC1310_LAUNCHXL_SPICOUNT];

//
*注意:SD 驱动程序可使用以下 SPI 实例
通过 SPI 与 SD 卡进行通信*。 下面的'DEFaultTxBufValue'字段被设定为0xFF
*以满足 SDSPI 驱动程序要求。
*/
const SPICC26XXDMA_HWAttrsV1 spiCC26XXDMAHWAttrs[CC1310_LAUNCHXL_SPICOUNT]={
{
baseAddr = SSI0_BASE、
.intNum = INT_SSI0_comb、
.intPriority =~0、
.wiPriority = 0、
powerMngrId = PowerCC26XX_Periph_SSI0、
defaultTxBufValue = 0xFF、
.rxChannelBitMask = 1<<UDMA_CHAN_SSI0_RX,
txChannelBitMask = 1<<UDMA_CHAN_SSI0_TX,
MOSIPin = CC1310_LAUNCHXL_SPI0_MOSI、
MISO 引脚 = CC1310_LAUNCHXL_SPI0_MISO、
clkPin = CC1310_LAUNCHXL_SPI0_CLK、
.csn 引脚 = CC1310_LAUNCHXL_SPI0_CSn、
.minDmaTransferSize = 10
}、
{
baseAddr = SSI1_base、
.intNum = INT_SSI1_COMB、
.intPriority =~0、
.wiPriority = 0、
powerMngrId = PowerCC26XX_Periph_SSI1、
defaultTxBufValue = 0xFF、
.rxChannelBitMask = 1<<UDMA_CHAN_SSI1_RX,
txChannelBitMask = 1< 
#include 

UARTCC26XX_Object uartCC26XX Objects[CC1310_LAUNCHXL_UARTCOUNT];

uint8_t uartCC26XXRingBuffer[CC1310_LAUNCHXL_UARTCOUNT][32];

const UARTCC26XX_HWAttrsV2 uartCC26XHATTRXHUNT[UART_LAUNCTX10_UART]
{
baseAddr = UART0_BASE、
powerMngrId = PowerCC26XX_Periph_UART0、
.intNum = INT_UART0_COMB、
.intPriority =~0、
.wiPriority = 0、
txPin = CC1310_LAUNCHXL_UART_TX、
.rxPin = CC1310_LAUNCHXL_UART_RX、
ctsPin = PIN_Unassigned、
rtsPin = PIN_Unassigned、
.ringBufPtr = uartCC26XXRingBuffer[CC1310_LAUNCHXL_UART0]、
.ringBufSize = sizeof (uartCC26XXRingBuffer[CC1310_LAUNCHXL_UART0])、
TxIntFifoThr = UARTCC26XX_FIFO_THRESHOLD_1_8、
.rxIntFifoThr = UARTCC26XX_FIFO_THRESHOLD_4_8、
errorFxn =空
}
};

const UART_Config UART_CONFIG[CC1310_LAUNCHXL_UARTCOUNT]={
{
.fxnTablePtr =&UARTCC26XX_fxnTable、
.object = uartCC26XX 对象[CC1310_LAUNCHXL_UART0]、
hwAttrs = uartCC26XXXHUWAttrs[CC1310_LAUNCHXL_UART0]
}、
};

const uint_least8_t UART_count = CC1310_LAUNCHXL_UARTCOUNT;

/*
================================================= uDMA ================================================
*/
#include 

UDMACC26XX_Object udmaObjects[CC1310_LAUNCHXL_UDMACOUNT];

const UDMACC26XX_HWAttrs udmaHWAttrs[CC1310_LAUNCHXL_UDMACOUNT]={
{
baseAddr = UDMA0_BASE、
powerMngrId = PowerCC26XX_Periph_UDMA、
.intNum = INT_DMA_ERR、
.intPriority =~0
}
};

const UDMACC26XX_Config UDMACC26XX_CONFIG[CC1310_LAUNCHXL_UDMACOUNT]={
{
.object =&udmaObjects[CC1310_LAUNCHXL_UDMA0]、
hwAttrs =&udmaHWAttrs[CC1310_LAUNCHXL_UDMA0]
}、
};

/*
========================================= 看门狗=========================================
*/
#include 
#include 

WatchdogCC26XX_Object WatchdogCC26XX Objects[CC1310_LAUNCHXL_WATCHDOGCOUNT];

const WatchdogCC26XX_HWAttrs watchdogCC26XHWAITtrs[CC1310_LAUNCHXL_WATCHDOGCOUNT]={
{
baseAddr = WDT_BASE、
.reloadValue = 1000 //重新加载值(以毫秒为单位)*/
}、
};

const Watchdog_Config Watchdog_config[CC1310_LAUNCHXL_WATCHDOGCOUNT]={
{
fxnTablePtr =&WatchdogCC26XX_fxnTable、
.object =&watchdogCC26XX 对象[CC1310_LAUNCHXL_WATCHDOG0]、
hwAttrs =&watchdogCC26XXHWAttrs[CC1310_LAUNCHXL_WATCHDOG0]
}、
};

const uint_least8_t Watchdog_count = CC1310_LAUNCHXL_WATCHDOGCOUNT;

//
*特定于电路板的初始化函数以禁用外部闪存。
*此函数在文件 CC1310_LAUNCHXL_Fxns.c
中定义*/
extern void Board_initHook (void);

/*
=== CC1310_LAUNCHXL_initGeneral ===
*/
void CC1310_LAUNCHXL_initGeneral (void)
{
power_init();

if (PIN_init (BoardGpioInitTable)!= PIN_SUCCESS){
/* PIN_init 错误*/
while (1);
}

/*执行特定于电路板的初始化*/
Board_initHook();
}

/*
==== Board_init ====
*/
void Board_init (void)
{
CC1310_LAUNCHXL_initGeneral();
}

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尊敬的 Karim:

    正因为如此、我正确地理解了、CC1310 4x4位于定制板上、定制板通过2引脚 JTAG 连接(TMS、TCK)连接到 LaunchPad 上的调试器。

    您是否尝试调试器件? 如果是、它会在哪里崩溃?

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    你(们)好。

    是的、您对我的理解正确、电路板通过双线 JTAG 连接到 launchpad 上的调试器。

    我的定制板没有32kHz 晶体。

    程序挂起在 board.c 文件(CC1310_LAUNCHXL.c)的以下部分

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    如果您有4x4、则必须从板级配置文件中删除引用4x4上不存在的 IOID 的行。  

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    3个板级配置文件中的哪个文件?

    请举个例子吗?

    我认为将其标记为"PIN_RELOAD"已足够

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    CC1310_LAUNCHXL.h

    要从您正在使用的文件中的第一行开始:

    #define CC1310_LAUNCHXL_DIO23_ANALOG         IOID_23

    ioID_23在4x4上不存在、因此您必须更改包含4x4上不存在的 IOID 的所有行。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    感谢您的快速回复。

    现在、该程序会进一步运行几个步骤、但它会挂起

    仅出于测试目的、我将所有引脚设置为"PIN_RELOAD"

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    如果您定义一个引脚、会发生什么情况?  

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    我定义了一个引脚、没有任何变化

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    卡里姆

    您需要后退一步、有条不紊地完成这一过程、而不是尝试和错误。

    首先、需要编辑 CC1310_LAUNCHXL.c 中的 BoardGpioInitTable 阵列、以移除 CC1310 4x4上不存在的所有引脚。

    然后、您应该浏览 CC1310_LAUNCHXL.h 中的所有引脚并重新分配所有引脚。 当我说所有引脚时、我是指所有引脚。 CC1310 4x4上不存在的引脚应设置为 PIN_RELOADed。

    然后在调试时、如果遇到调用 PIN API 返回 PIN_NO_ACCESS 的情况、则需要查看具体尝试访问的 PIN、并查看 CC1310_LAUNCHXL.h 中分配的引脚 如果是 PIN_Unassigned、则需要分配一个引脚;如果已分配、请确保它是 CC1310 4x4上的有效引脚。

    需要做这项工作,而不是我们。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    Severin、您好!

    感谢您的答案。

    我试过它、但它不起作用。 我在 pinID 上设置一个表达式观察、它始终为0。 因此、我无法确定是哪个引脚导致了这种情况。

    此致

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您需要进行调试并告诉我们崩溃的位置。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    它只是在同一个点停止。

    如果我在 Launchpad 上使用相同的板级配置文件运行相同的程序、则可以正常运行、但如果我尝试在自定义板上运行、则始终会在"PIN_NO_ACCESS"处停止。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    我之前已经告诉过您:如果您看到 PIN_NO_ACCESS、请检查 PIN_ID 是什么。 然后、验证 PIN 最重要的是有效、并且 PIN 已在应用程序的 BoardGpioInitTable 或本地 PIN 表中初始化。

    例如、在屏幕截图中、您可以看到 pinId 为0。 CC1310 4x4上不存在 DIO_0。 因此、您需要从该 PIN 声明源自的任何位置(BoardGpioInitTable 或 Local PIN 表)完全删除该声明。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    首先、4x4封装上有一个 DIO_0。

    第二件事是、我删除了两个文件中4x4不可用的所有引脚。

    请不要给我这种态度。 我希望使用您的芯片开发产品、因此我希望得到您的支持。

    很抱歉我说得不好,但我认为你应该更加冷静。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    卡里姆

    正确、CC1310 4x4上确实存在 DIO_0。 CC1310 7x7 (RGZ)上不存在 DIO_0、因此我匆忙得出了错误的结论。  我很抱歉、我在这里有一些草率的评论。

    现在、您是否已经完成了我关于检查 BoardGpioInitTable 和本地 PIN 表的所说的内容?

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    Severin、您好!

    感谢您的理解。

    我从 BoardGpioInitTable 中删除了该引脚、但我不知道本地引脚表是什么意思。 在主程序中、只有包含在 CC1310_LAUNCHXL.h 中声明的引脚的表格

    以下是我当前的板级配置文件。

    e2e.ti.com/.../6232.CC1310_5F00_LAUNCHXL.ce2e.ti.com/.../1581.CC1310_5F00_LAUNCHXL.h

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    如果从 BoardGpioInitTable 中删除所有引脚并仅保留 PIN_TERMINATE、则在 PIN_init()期间是否仍会出现错误?

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    我从表中删除了除 PIN_TERMINATE 之外的所有内容

    会发生同样的情况

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您能否截取一张 callstack 的屏幕截图。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    需要删除作为 Board_initHook()函数一部分的外部闪存过程,如调用栈中所示。