主题中讨论的其他器件:CC3100
工具/软件:TI-RTOS
大家好、
提供有关我尝试实现的目标的简要信息
我有 TM4C129X 开发板、并尝试将 cc3100 wifi 模块与其集成。 IM 使用 simplelink 库并成功与示例 wifi 示例进行通信
现在、当按照我的原型板修改 SPI 引脚时、我遇到了成功完成"WiFi_open (Board_wifi、Board_WiFi_SPI、NULL、&wifParams)"函数调用后出现的问题、接下来、当它调用"sl_Start"时、系统挂起、并且由于"sl_Start"是库、我无法进一步调试、 我假设"sl_Start"内有一些例程、它正在等待来自 Wifi 芯片的一些 ACK。
我还观察到、如果我将 IRQ 引脚从端口 M.3更改为其他引脚、例如端口 P.0 (其他引脚保持不变)、固件会再次无限循环等待
下面是我的初始化代码
WiFiCC3100_Object wiCC3100Objects[EK_TM4C129EXL_WIFICOUNT];
const WiFiCC3100_HWAttrs wFiCC3100HWAttrs[EK_TM4C129EXL_WIFICOUNT]={
{
.irqPort = GPIO_PORTM_BASE、
.irqPin = GPIO_PIN_3、
.irqIntNum = INT_GPIOM、
csPort = GPIO_PORTB_BASE、
csPin = GPIO_PIN_4、
.enPort = GPIO_PORTP_BASE、
.ENPin = GPIO_PIN_1
}
};
const WiFi_Config WiFi_config[]={
{
.fxnTablePtr =&WiFiCC3100_fxnTable、
.object = wiCC3100Objects[0]、
hwAttrs =&wFiCC3100HWAttrs[0]
}、
{NULL、NULL、NULL}、
};
/*
*==== EK_TM4C129EXL_initWiFi ===
*
void EK_TM4C129EXL_initWiFi (void)
{
/*配置 EN 和 CS 引脚以禁用 CC3100 */
GPIOPinTypeGPIOOutput (GPIO_PORTB_BASE、GPIO_PIN_4);
GPIOPinTypeGPIOOutput (GPIO_PORTP_BASE、GPIO_PIN_1);
GPIOPinWrite (GPIO_PORTB_BASE、GPIO_PIN_4、GPIO_PIN_4);
GPIOPinWrite (GPIO_PORTP_BASE、GPIO_PIN_1、0);
/*为 CC3100配置 SSI2 */
SysCtlPeripheralEnable (SYSCTL_Periph_SSI1);
GPIOPinConfigure (GPIO_PB5_SSI1CLK);
GPIOPinConfigure (GPIO_PE4_SSI1XDAT0);
GPIOPinConfigure (GPIO_PE5_SSI1XDAT1);
GPIOPinTypeSSI (GPIO_Porte _BASE、GPIO_PIN_4 | GPIO_PIN_5);
GPIOPinTypeSSI (GPIO_PORTB_BASE、GPIO_PIN_5);
/*配置 IRQ 引脚*/
GPIOPinTypeGPIOInput (GPIO_PORTM_BASE、GPIO_PIN_3);
GPIOPadConfigSet (GPIO_PORTM_BASE、GPIO_PIN_3、GPIO_Strength _2mA、
GPIO_PIN_TYPE_STD_WPD);
GPIOIntTypeSet (GPIO_PORTM_BASE、GPIO_PIN_3、GPIO_RISE_EDGE);
spi_init();
EK_TM4C129EXL_initDMA ();
WIFI_INIT();
}
提前感谢
-Prajnith