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.

[参考译文] TMS570LS3137:TMS570引导加载程序- YMODEM_Receive

Guru**** 2477065 points


请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/687444/tms570ls3137-tms570-bootloader---ymodem_receive

器件型号:TMS570LS3137

您好!

我正在  Hercules_MCU_Bootloader.zip ( processors.wiki.ti.com/.../TMS570_Hercules_MCU_Bootloader)上工作

YMODE_Receive ()仅当我在 YMODE_Receive ()内的以下行内放置断点时才有效:

===========================

oReturnCheck = Fapi_BlockErase (ucBank、FlashDestination、size);//此处为 brkpoint 或

//如果发生访问冲突,则返回错误。
if (oReturnCheck)

UART_txByte (sci、CAN);
UART_txByte (sci、CAN);
返回-2;

UART_txByte (sci、ACK);//或此处为 brkpoint
UART_txByte (sci、CRC);

===========

否则,YMODEM_Receive()返回0。

我正在使用 Teraterm。 TeraTerm =>文件=>传输=> YMODE=>发送。

#define UART_BAUDRATE   115200、8位数据、无奇偶校验、1位停止、这正是引导加载程序所期望的。

这看起来像是时序问题。 我尝试导致延迟而不是断点。 延迟没有产生影响, YMODEM_Receive()返回0。

任何帮助都很好。

谢谢、

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好!

    请使用 TeraTerm -> File->Transfer->YMODEM--> SEND,然后选择二进制文件(不要使用.out 文件)

    我在不同的电路板上进行了测试、没有发现任何问题。