前面SWS, POS阶段都能正确的接收到DSP的的应答。但是到了OS阶段,没有收到应答。
我发送opcode的方式是:先发送opcode,接着发送后面的数据;发完数据后循环发送opcode并且读SPI,但是一直没有独到opcode应答。
不知道还我这样发送的opcde方式是否是正确的?我看了SPRABB1C.pdf,上面没有说清楚后面opcode synchronization阶段该怎么发送。
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.
前面SWS, POS阶段都能正确的接收到DSP的的应答。但是到了OS阶段,没有收到应答。
我发送opcode的方式是:先发送opcode,接着发送后面的数据;发完数据后循环发送opcode并且读SPI,但是一直没有独到opcode应答。
不知道还我这样发送的opcde方式是否是正确的?我看了SPRABB1C.pdf,上面没有说清楚后面opcode synchronization阶段该怎么发送。
试试加长host发opcode之间的时间间隔。
NOTE: SPI slave boot modes suffer from a bug during Opcode Synchronization. The bootloader will
hang if an opcode is sent by the host before the bootloader is ready to receive it (for
example., if the bootloader is still processing the previous opcode). Therefore, in SPI slave
boot modes, the host should insert sufficient delay between opcodes that the bootloader is
ready to receive the next opcode. This bug does not affect other slave boot modes (I2C,
UART, etc.).
http://www.ti.com/lit/an/sprabb1c/sprabb1c.pdf
master发送opcode给DSP, 等待接收RECV opcode,如果收不到RECV opcode, 再发送opcode给DSP,直到收到RECV opcode为止。
应该是我理解错了,opcode后面的参数需要收到应答后才发送。
8.3 The AIS_Util.cs Source Code
The UART Boot Host includes a single C# source file named AIS_Util.cs, which serves as a reference
implementation of the boot master requirements laid out in Section 7. This source file is used by the UART
Boot Host application itself, and is provided as-is with no direct support.
我在看AIS_Util.cs的代码,参照这个代码应该能有个结果。