主题中讨论的其他器件:TIDA-00650、 CC2650STK、 Z-STACK
大家好、
PREABLE: Thread https://e2e.ti.com/support/wireless-connectivity/zigbee-and-thread/f/158/p/854841/3161491#3161491 现已解决!
问题是由于读取电压数据(RDATA)的过程不正确、因此无法正常工作、因为我执行了以下两条指令:
// RDATA():读取数据命令 命令 SPI = 0x10;
bspSpiWrite (&commandSPI、sizeof (commandSPI))
//读取数据(24位) VoltagePT100[0]= 0x00; VoltagePT100[1]= 0x00; VoltagePT100[2]= 0x00; bspSpiWriteRead (VoltagePT100、sizeof (VoltagePT100[0])、 sizeof (VoltagePT100))
由于 BSP_SPI 库在内部管理 SPI 接口的引脚、并且...因此、在执行第一条指令(RDATA)时、芯片选择值会变为高电平:
nCS_ADC -->高电平
交易已完成!
而是在单个语句中执行以下操作:
/*步骤6 - RDATA:读取数据:命令+读取数据*/ VoltagePT100[0]= 0x10;// RDATA ()命令:write1字节(命令= 0x10)、读取数据:读取3个字节(数据) VoltagePT100[1]= 0x00; VoltagePT100[2]= 0x00;bspsizagePT100 (命令= 0x10)、voltagePT100 (24)、voltsizePT100 (0)(voltagePT100 (voltsizeSpits)(voltagePT100)(voltsizeSpits)、voltagePT100 (24)(voltagePT100 (voltagePT100) 数据的 MS 字节+数据的中央字节+数据的 LS 字节
当前问题:如何配置电路板 DevPack 引脚?
我不明白为什么一旦 TIDA-00650板通过 DevPack 连接到 CC2650STK 板、当该板未通电时、我会看到持续消耗约5mA 的电流!
我的 PIN 配置如下:
从 main.c 调用:
PIN_Config BoardGpioInitTable[]={ Board_LED1 | PIN_GPIO_OUTP_EN | PIN_GPIO_LOW | PIN_DGPushPull | PIN_DRVSTR_MAX、// LED 最初关闭*/ Board_LED2 | PIN_GPIO_OUTPUT_EN | PIN_GPIO_PULL | PIN_PushPull | PIN_DRVSTR_MAX | PIN_BOVSTR_ON | PIN_LED_RPM_ON | PIN_ON | PIN_PORT_TRUS_ON /*按钮为低电平有效*/ Board_key_right | PIN_INPUT_EN | PIN_PULLUP | PIN_IRQ_BOTHEDGES | PIN_迟滞,/*按钮为低电平有效*/ Board_RELAY | PIN_INPUT_EN | PIN_PULLU_INPUT | PIN_ING_INT_INTRU_INT_INTRUDIO | PIN_INT_INTRU_INTRU_IND | PIN_INTRU_ING_INTRU_INTRU_INP| PIN_INT_INTRU_INTRU_INTRU_IND /* MPU_INT 低电平有效*/ Board_TMP_RDY | PIN_INPUT_EN | PIN_PULLUP | PIN_迟滞,/* TMP_RDY 为高电平有效*/ Board_蜂 鸣器| PIN_GPIO_OUTP_EN | PIN_GPIO_PUT_LOW | PIN_PushPUT_MAX | PIN_DRVSTL_MAX /* MPU 最初开启*/ Board_MPU_POWER | PIN_GPIO_OUTPUT _EN | PIN_GPIO_LOW | PIN_PushPull | PIN_DRVUL_MIN、// MPU 最初关闭*// Board_MIC_POWER | PIN_GPIO_OUTP_EN | PIN_GPIO_HIGH | PIN_PushPull | PIN_DRVMIC_MAX | PIN_POST_ON * | PIN_POST_POST_ON * /* MIC 最初关闭*/ Board_SPI_FLASH_CS | PIN_GPIO_OUTPUT_EN | PIN_PushPull | PIN_DRVSTR_MIN,/*外部闪存芯片选择*/ Board_SPI_DEVPK_CS | PIN_GPIO_OUTPUT_EN | PIN_STR_HIGH | PIN_DRVSTR_RESULT | PIN_PACK | PIN_PUT /*音频 DI */ Board_AUDIODO | PIN_GPIO_OUTPUT_EN | PIN_GPIO_HIGH | PIN_PushPull | PIN_DRVSTR_MIN、/*音频数据输出* / Board_DP2 | PIN_INPUT_EN | PIN_NOPULL、 /* DevPack - nDRDY_ADC -未使用*/ Board_DP1 | PIN_GPIO_OUTP_EN | PIN_GPIO_LOW | PIN_PushPull | PIN_DRVSTR_MAX、 // Board_DP0 | PIN_GPIO_OUTPUT EN | PIN_GPIO_LOW | PIN_PushPull | PIN_DRVSTR_MAX、 /* DevPack - LED (绿色)-未使用*/ Board_DP3 | PIN_GPIO_OUTP_EN | PIN_GPIO_LOW | PIN_PushPull | PIN_DRVSTR_MAX、 /* DevPack - TIDA-00650 PWR_UP_CHIP*/ Board_DP4_UARTRX | PIN_INPUT_EN | PIN_PULLUP、 /* DevPack */ Board_DP5_UARTTX | PIN_INPUT_EN | PIN_PULLUDOWN、 /* DevPack */ //Board_DEVPK_ID | PIN_INPUT_EN | PIN_NOPULL、 /*设备包 ID -外部 PU */ PIN_TERMINATE };
然后在 sensortagapp.c 中、我配置以下引脚以检查 TIDA-00650板:
#if defined (TIDA_00650) // TIDA-00650 静态 PIN_Config TIDA00650_PinTable[]= { // Devpack 接口 Board_DP3 | PIN_GPIO_OUTPUT_EN | PIN_GPIO_LOW | PIN_PushPull | PIN_DRVSTR_MAX、// DevPack:TIDA-00650_IN_OUTP_EN | PIN_IN_IN_DPW-2* | PIN_IN_DPW_ D_IN_NOW_ UD650_IN_DPW_| PIN_IN_IN_IN_NOWTO_IN_IN_DPW| PIN_DPW_| PIN_IN_IN_IN_IN_IN_DPW >低电平,未使用*/ PIN_TERMINATE /*终止列表*/ };
问题可能出在哪呢? 我希望获得以下行为:
超时到期时:
- PIN_setOutputValue (hGpioPin、Board_DP3、1); // TIDA-00650 | PWR_UP_CHIP -->高电平
- 配置 ADC 寄存器并读取电压值...
- PIN_setOutputValue (hGpioPin、Board_DP3、0); // TIDA-00650 | PWR_UP_CHIP -->低电平
TIDA-00650之前和之后未通电(通过引脚"Board_DP3")、因此不应消耗任何电量!?
感谢大家!