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.

5529 BSL升级代码

5529 BSL代码中发送密码的疑问,
如果第一次密码发送失败,就会擦除flash(密码也恢复到默认?),  然后再用默认密码(这个时候密码就对了?).
如果是这样,就可以轻易把密码绕过了




 // Send Password... Causes mass erase if password is wrong! 
  reply = BSL_RX_Password(pass);
  if(reply)
  {
    // Wrong password provided.
    // Memory is being mass erased. Setting a 1sec delay.
    *massErased = true;
    worker->ReportProgress(5,"Mass erase occured!\r\n");
    Sleep(2000);
 // Memory is blank now. Re-send blank password to access device.
 reply = BSL_RX_Password(blankPass);
    if(reply)
    {
      worker->ReportProgress(10,"Password FAILED!\r\n");
      e->Result = false;
      return false;
    }
  }

  worker->ReportProgress(10,"Password Sent Successfully\r\n");

 
  • TI 技术支持没人看看这个问题嘛?

  • li dong 说:
    5529 BSL代码中发送密码的疑问,
    如果第一次密码发送失败,就会擦除flash(密码也恢复到默认?),  然后再用默认密码(这个时候密码就对了?).
    如果是这样,就可以轻易把密码绕过了
    
    
    
    
    
    
    
    
     // Send Password... Causes mass erase if password is wrong! 
      reply = BSL_RX_Password(pass);
      if(reply)
      {
        // Wrong password provided.
        // Memory is being mass erased. Setting a 1sec delay.
        *massErased = true;
        worker->ReportProgress(5,"Mass erase occured!\r\n");
        Sleep(2000);
     // Memory is blank now. Re-send blank password to access device.
     reply = BSL_RX_Password(blankPass);
        if(reply)
        {
          worker->ReportProgress(10,"Password FAILED!\r\n");
          e->Result = false;
          return false;
        }
      }
    
      worker->ReportProgress(10,"Password Sent Successfully\r\n");
    

     

    擦除掉代码的MCU就没什么保密的需要了啊

  • 然后重新烧录的时候,密码是如何烧录的?