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.

[参考译文] AM2634:MCRC 代码中存在疑问

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

https://e2e.ti.com/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/1522074/am2634-doubts-in-mcrc-code

器件型号:AM2634

工具/软件:

嗨、jagadish、

我将 CRC 类型更新为  SAE J1850 、更改了  数据位大小  中导出  64 位至 8 位 、设置 params.dataBitSize  1. 、并更改了  gMCRC 数据缓冲区大小  中导出  400 简化为 1 、指定值  35  直接如下图所示。 我用了一个  调试日志打印语句  以读取  SectSign 寄存器值 、如下所示。

执行之后  硬件复位 、我转储了这个代码并得到了一个结果  160  第一次。 然后我点击了重置选项,然后开始图标,以便从开始再次运行代码 ;这一次,我得到了一个新的结果  225
告诉我哪里出了问题。 我是否需要在代码开始时包含任何 API 来重置 MCRC 模块? 因为只是在做了之后  硬件复位  我是否获得了预期值

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

    尊敬的 Sravya:

    您能否在调试模式下共享您的 MCRC 寄存器? 我想验证一次 MCRC 寄存器的值? 将 35 写入签名寄存器后、您只需共享这些值。

    --

    此致、
    Jagadish。

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

    尊敬的 Jagadish:  

       我在调试时检查了 secSignVal.regH 和 secSignVal.regL 值。 以下是观察结果、
     
      重置后、

          secSignVal.regH  = 1 (0x70050180)  。 此处 0x70050180 可能是调试时显示的存储器位置。
          secSignVal.regL  = 1879396645  (0x7005017C)。

       执行硬件重置后第一次运行代码、  

          secSignVal.regH  = 0  、
          secSignVal.regL = 160。

      执行 软件重置后第二次运行代码、这次不执行硬件重置。  
     
           secSignVal.regH = 0、
           secSignVal.regL = 225 。

    此致、  
    K.Sravya.
           

       

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

    您能否提供一次 MCRC 所有寄存器的屏幕截图?

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

    尊敬的 Sravya:

    我正在通过以下方式查找寄存器:

    更新您的 CCS 并重新启动 CCS、然后在将数据写入签名寄存器之前尝试访问 MCRC 寄存器并共享此寄存器值。

    --
    此致、
    Jagadish。

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

    尊敬的 Sravya:

    我将 CRC 类型更新为  SAE J1850 、更改了  数据位大小  中导出  64 位至 8 位 、设置 params.dataBitSize  1. 、并更改了  gMCRC 数据缓冲区大小  中导出  400 简化为 1 、指定值  35  直接如下图所示。 我用了一个  调试日志打印语句  以读取  SectSign 寄存器值 、如下所示。

    我了解了此问题的根本原因。

    我在驱动程序库中发现了一个小错误、  

    目前、您可以使用以下解决方法来解决该问题:

    将此上面突出显示的掩码值从 0x00000001 更改为 0xFFFFFFFF、如下所示。

    更改此值后、从 cmd 窗口完成库构建、如下所示:

    执行上述构建后、现在您 需要再次从 CCS 清理工程:

    执行此操作后、您可以再次启动调试:

    进行上述修改后、现在即使 CPU 复位也会提供与我在下面测试的结果相同的结果。

    --

    此致、
    Jagadish。

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

    尊敬的 Sravya:

    关于定期测试、每次要生成新的 CRC 时、您都只需调用以下 API:

    此 API 将重置签名值并使用新配置再次启动。 您只需确保我在上一条评论中建议的解决方法。

    --
    此致、
    Jagadish。

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

    尊敬的 Jagadish:  

       目前、我使用的是 CCS 12.8.1 版。 您希望我更新到 CCS 版本 12.20、还是专门更新 CCS 12.8-1 中的任何软件包?

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

    尊敬的 Sravya:

    目前、我使用的是 CCS 版本 12.8.1。 您希望我更新到 CCS 版本 12.20、还是专门更新 CCS 12.8.1 中的任何封装?

    CCS 12.8.1 正常。

    [引述 userid=“524805" url="“ url="~“~/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/1522074/am2634-doubts-in-mcrc-code/5858930 #5858930“]

    我了解了此问题的根本原因。

    我在驱动程序库中发现了一个小错误、  

    目前、您可以使用以下解决方法来解决该问题:

    [/报价]

    我建议的权变措施不依赖于 CCS 版本、它只取决于 SDK 源文件。

    您可以找到我在这里提到的文件:

    在此文件中进行我建议的修改并 按照我提到的过程构建 SDK。

    --

    此致、
    Jagadish。

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

    尊敬的 Jagadish:  

    我尝试在命令提示符下运行该命令、但显示该命令gmake无法识别。 但是、我已经安装了该gmake文件。 您可以在 CCS 文件夹中看到它、我在下面添加了一个片段以供参考。
    您能否验证我是否正确使用了该命令?

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

    尊敬的 Sravya:

    尝试根据您安装的 CCS 路径将上述路径添加到环境变量中。

    --
    此致、
    Jagadish。

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

    嗨、jagadish、  

      我已经在我的环境变量中提到了路径、但它仍然显示出相同的问题。

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

    尊敬的 Sravya:

    添加环境变量后、您是否重新启动了 PC? 尝试重新启动一次、看看是否仍然存在问题、然后我会尝试进一步调试。

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

    尊敬的 Jagadish:  

      重新启动我的 PC 后,它是有效的。