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.

[参考译文] TMS570LS0714:TMS570LS0714启动加载程序失败

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

https://e2e.ti.com/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/1286012/tms570ls0714-tms570ls0714-bootloader-failed

器件型号:TMS570LS0714

大家好、

客户有问题需要您的帮助:

您好:

    我想为 TMS570LS0714APZ 制作一个引导加载程序。 如果我使用相同的程序但不同的 IC、我会发现有些程序可以成功编程、但有些会失败。 下面是我测试过的情况。

1.虽然调整 SYS_CLK_FREQ 可以解决不同 IC 编程失败的问题、但 SYS_CLK_FREQ 是固定的、不能在大规模生产期间为每个 IC 进行调整、因此不能使用该方法。

2.刻录失败后,读取刻录内容,发现有一个现象,即每次16字节的值是0xFF,即写入不成功。 问题似乎是 Fapi_Block é n é n é girl é girl é  改进了、但仍然会出现错误。

uint32_t Fapi_Block (uint32_t Bank、uint32_t Flash_Address、uint32_t Data_Address、uint32_t SizeInBytes)
{
寄存器 uint32_t src = Data_Address;
寄存器 uint32_t dst = Flash_Address;
uint32_t 字节;

IF (SizeInBytes < 16)
字节=大小 InBytes;
否则
字节= 16;

如果((Fapi_initializeFlashBanks ((uint32_t) SYS_CLK_FREQ))= Fapi_Status_Success)

{
  (void)Fapi_setActiveFlashBank((((event)Bank); Fapi_Flash
  (void) Fapi_enableMainBankSectors (0x0FFF);/*用于 API 2.01*/

否则{
返回(1);

while ( fapi_check_FSM_ready_busy != Fapi_Status_Fsm )
while ( fapi_get_FSM_status != Fapi_Status_Success );

while (SizeInBytes > 0)
{
Fapi_issueProgrammingCommand ((uint32_t *) dst、
                             (uint8_t *) src、
                             (uint32_t)字节、
                             0、
                             0、
                             Fapi_Auto E.ccGeneration);

while ( fapi_check_fsm_ready_busy == Fapi_Status_Fsm o );
while (fapi_get_FSM_status!= Fapi_Status_Success);
while ( fapi_check_FSM_ready_busy != Fapi_Status_Fsm )


src +=字节;
dst +=字节;
SizeInBytes ->字节;
if (SizeInBytes < 16){
字节=大小 InBytes;


返回(0);

 我想问的问题如下:

1.如何在每次烧录16个字节后确认编程是否成功?

2.如果我  每次刻录16个字节后执行 Flash_Program_Check (),我需要先设置或检查什么状态,还是需要延迟一段时间?

3.目前,每次我收到2048字节的数据,我开始刻录。 此临时存储区域的大小是否有限制? 我之所以提出这个问题、是因为在接收到2048字节的数据后、我将继续进行写入、直到烧录。 完成后、接收下一个2048字节

4.  应将多高的频率设置为 SYS_CLK_FREQ? 它当前设置为64MHZ。

5.调整    SYS_CLK_FREQ 为什么会影响编程的成功率(调整范围为32MHz ~ 80MHz)  

谢谢。此致、

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

    尊敬的 Ben:

    我们 已开始处理您的问题、并将尽快提供更新。

    --

    谢谢。此致、
    Jagadish。

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

    尊敬的 Ben:

    昨天是我们在印度的假期、因此无法解决您的问题、我已经开始处理您的问题、并将提供更新。

    在以下链接中找到了针对同一问题的新主题:

    (+) TMS570LS0714:引导加载程序-处理器论坛-处理器- TI E2E 支持论坛

    我将在上面的主题中提供更新、我将关闭该主题以避免重复。

    --
    谢谢。此致、
    Jagadish。