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.
工具/软件:Code Composer Studio
大家好、TI 论坛、
我还有另一个问题我自己无法解决、我正在寻求帮助。
所以。 我的问题是以下代码:
void writeData (axis_t* l_axis、uint8_t* data、uint8_t len) //将数据写入 SPI、Datawidth 设置为8位; { int i; 对于(i=0;i latchpinBase、l_axis->latchpin、0);//启用 SPI 模块 SysCtlDelay (50);//每个字节传输后有125ns 的暂停; SSIDataPut (l_axis->SPI_base、(uint32_t) data[i]); while (SSIBusy (l_axis->SPI_base)); GPIOPinWrite (l_axis->latchpinBase、l_axis->latchpin、l_axis->latchpin);//禁用 SPI 模块<--- 这一行 SysCtlDelay (50);//每个字节发送后有625ns 暂停; } }
使用 GPIO_PORT_D GPIO_PIN_3作为目标时、会中止/锁定微控制器。 使用其他端口/引脚有效。
端口和引脚使用进行配置
MAP_GPIOPinTypeGPIOOutput (GPIO_PORTD_BASE、GPIO_PIN_1);
MAP_GPIOPinWrite (GPIO_PORTD_BASE、GPIO_PIN_1、GPIO_PIN_1);
MAP_GPIOPadConfigSet (GPIO_PORTD_base、GPIO_PIN_1、GPIO_Strength _2mA、GPIO_PIN_TYPE_STD);
至于 pinmuxtool 的输出、我添加了 padConfigSet、希望它可以解决该问题。
问题是、该代码的前几次工作正常(可靠)、但使用某些 USB/命令处理程序发出的此命令时、它会失败。
我使用 TivaC Launchpad、调试器被解连接。 如果不使用调试器、微控制器就会变得无响应(从 USB 看到)、需要重新启动。 因此、我不能只读出错误数据、告诉您 uController 是否在某些 ISR 中。 为另一个(在这种情况下通常会有所帮助)更改 Launchpad 在此处不起作用。
我把它煮到了生产线上
HWREG (ui32Port +(GPIO_O_DATA +(ui8引脚<< 2)))= ui8Val;
那么、有什么问题吗? 您是否遇到过类似的问题? 您能不能让我指向某个方向、因为我对我现在可以做的事情感到有点不清楚。
我在 Windows 10上使用 ccs7、
TivaWare 2.1.178 driverlib 和 usblib、针对 TM4C123GH6PM 重新编译
PD1也是我在这里使用的 SSI 模块的 FSS 信号、但 FSS 使用 TIPinMux 被禁用。
在 SPI mode3中使用 SSI、并使用 INIT
SysCtlPeripheralEnable (SYSCTL_Periph_SSI1); while (!SysCtlPeripheralReady (SYSCTL_Periph_SSI1)); SSIConfigSetExpClk (SSI1_base、SysCtlClockGet ()、SSI_FRF_MOTO_MOTO_MODE_3、// Moto fmt、极性1、 阶段1、 SSI_MODE_MASTER、SPI_FREQ、8); // //启用 SSI0模块。 // SSIEnable (SSI1_base);
也不应启用相应的 FSS 引脚。
大多数论坛 GPIO 相关主题都是关于不正确设置引脚、但在我的案例中、它会重置整个 uController。
我使用观察点来检查_stack_top、但它没有被写入、因此我认为它不是 stackoverflow 错误。
所以... 希望您的想法和意见
Olli
我无法重新创建您的问题。
[引用用户="Oliver Schwanke"]使用 GPIO_PORT_D GPIO_PIN_3时,中止/锁定微控制器[/引用]
通过"中止/锁定"、您意味着 JTAG 访问丢失了吗?
您能否使用 EK-TM4C123GXL 提供显示此问题的项目?