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.
器件型号:TI-RTOS
工具/软件:TI-RTOS
尊敬的先生:
我正在尝试在 microSD 卡上写入一些数据。 我使用 MSP432p401R Launchpad 作为主处理器、并从 ADS1298获取数据。
我无法跟踪导致该问题的说法。 我编写的源代码在编写数据供单次使用时工作正常。 但是、如果我多次写入并在线程之间多次切换。 它提供了精确或不精确的 BUSFault 误差。
仅在本周、我就开始使用 TI-RTOS。
HwiStack 还有一个问题是溢出。
欢迎提出任何建议。 提前100万美元致谢。
此致
Anurag Tamboli
您好 Todd、
感谢您回复。 我尚未将矢量表设置为 TI-RTOS 中的初学者。 我想不要太乱。
矢量表配置仅为默认配置。 我不明白您说" 您是使用 driverlib 调用插入中断、还是使用 TI-RTOS 中的 Hwi 模块? "
实际上、我修改了 SPI 通信和 FatFs 文件系统示例的示例代码、更改/修改了例程以访问数据或将数据写入 SD 卡。
如果源代码流仅打开 SD 卡、写入数据并关闭文件、则一切都正常。 但是、如果我保持文件打开并切换线程、在经过一些处理后、我会尝试将其关闭。 它抛出"强制总线故障:PRECISERR 或 IMPERSIERR"。
如果您想浏览、我可以向您发送一份代码副本。
此致
Anurag Tamboli
Anurag、您好!
如果 Hwi 堆栈溢出、它将导致内存损坏、这可能导致总线故障或其他奇数错误。 首先要做的是增加为此堆栈分配的数量。
在上面显示的 Hwi 模块设置图形视图中、可以将"系统(Hwi 和 Swi)堆栈大小"从2048增大到更大的值、然后保存文件并重新构建和重新加载程序。 您应该能够看到 ROV 工具中显示的更高的堆栈大小(在“Hwi”模块的“Module”选项卡的“hwiStackSize”列中)。
如果你增加足够大的空间来避免 Hwi 堆栈溢出、总线故障是否会消失?
谢谢、
Scott