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.

[参考译文] LP5562:不了解 LP5562上的分支指令位字段

Guru**** 2442090 points


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

https://e2e.ti.com/support/power-management-group/power-management/f/power-management-forum/700900/lp5562-not-understanding-branch-instruction-bit-field-on-lp5562

器件型号:LP5562

您好!

这可能只是一个迹象、我应该放弃一天的时间、回家以便我的大脑可以休息、但当我将数据表与示例和行为进行比较时、发动机控制中的分支指令毫无意义。 此外、位字段有两种不同的定义方式。

来自 SNVS820B 的表14:
分支1 0 1循环计数(6位) X X X 步进数(4位)

从 SNVS820B 的图43中:
分支1 0 1循环计数(6位) X 步进数(6位)

 

也许这两个额外的位指定了要跳转到的发动机编号? (0、1、2?)  数据表中是否缺少该信息?

无论如何、由于这在引擎1上、我希望最后一条指令0xA001无限循环回第二条指令。 我没有看到这种行为、因此请告知我的理解在哪里。

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

    步骤编号应为4位数据、值为0至15、如表15中所示。

    您是否会提供说明?

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

    图43具有不同的定义。 怎么回事? 也许可以更新数据表和编译器以避免混淆?

    以下是命令编译器输出的示例、显示它将额外的位加入无关区域、但我假设我"无关"。
     1      #发动机1部分起动
     2 00      .ENGINE1
     3 00 E080     触发 W1
     4        JUMP1:
     5 01 5A00     等待400
     6 02 3313     斜坡 500、20
     7 03 1431     斜坡 500、50
     8 04 0831     斜坡 200、50
     9 05 0431     斜坡 100、50
     10 06 0831     斜坡 200、50
     11 07 0C31     斜坡 300、50
     12 08 0CB1     斜坡 300、-50
     13 09 E002     触发器1
     14 0A A001     分支0、JUMP1
     15 0B A081     分支1、JUMP1
     16 0C A101     分支2、JUMP1
     17.    
     18    
     19      #发动机2部分起动
     20 10      .ENGINE2
     21 10 E080     触发 W1
     22        日-日美第2次会议:
     23 11 5A00     等待400
     24 12 3313     斜坡 500、20
     25 13 1431     斜坡 500、50
     26 14 0831     斜坡 200、50
     27 15 0431     斜坡 100、50
     28 16 0831     斜坡 200、50
     29 17 0C31     斜坡 300、50
     30 18 0CB1     斜坡 300、-50
     31 19 E002     触发器1
     32 1A A011     分支0、JUMP2
     33 1B A091     分支1、JUMP2
     34 1C A111     分支2、JUMP2

    不过、我解决了我的问题、在分支指令之前创建命令时出现错误、导致它显然被视为一个结束命令。  睡得很好。

    谢谢!