Thread 中讨论的其他器件:C2000WARE
工具与软件:
我们需要通过 ESP 32通过 SPI 对 DSP 进行更新和编程。
首先、DSP 中内置了 SPI 引导加载程序、可将程序保存到 RAM 中。 我们首先转移我们的闪存内核,一旦运行,它会将我们的实际工作程序保存到闪存中。 闪存内核与 SCI 闪存内核示例非常相似、但对于具有校验和的 SPI、我们甚至在 SPI 逐字节传输之间添加了我们自己的延迟。
引导加载程序的问题是、由于它是内置的、因此我们无法向它添加功能、也无法逐步对它进行调试。 它还面向 SPI EEPROM 闪存而不是 ESP 等微控制器。 引导加载程序的时序与 ESP 是很难匹配的。 ESP 错过了时序、传输失败。 我们唯一成功的方法是将整个文件缓冲区加载到一个数组中并通过 ESP 发送。 如果 ESP 在处理过程中甚至延迟了一微秒、则传输失败。
也不存在校验和或任何使我们知道 DSP 已成功编程的确认。
闪存内核约为15-16 KB、如果我们使一个较小的 SPI 缓冲区(例如16字节)并继续重新加载、它将错过时序。
我们的另一个想法是将 SPI 闪存内核作为我们主程序的一部分。 但如果它破坏了,我们没有办法在现场更新它。
是否有更好的方法利用 SPI 引导加载程序? 使用 ESP 32设置它的正确方法是什么?