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.

[参考译文] TMS570LC4357:程序在运行时跳转到 HL_SYS_intvecs.asm 中的 b DataEntry

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

https://e2e.ti.com/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/1172213/tms570lc4357-program-jumps-to-b-dataentry-in-hl_sys_intvecs-asm-at-runtime

器件型号:TMS570LC4357
主题中讨论的其他器件:TMDX570LC43HDK

大家好、

以下是客户提出的问题、可能需要您的帮助:

使用开发套件 TMDX570LC43HDK。 之前的程序函数使一个包含8个连续字节的双数据的内存区域(在 RAM 中)、但当前只有一个 uinit8*指针 DataPtr 指向该内存区域。 客户希望通过执行以下操作获取浮点值:

double* ptodouble =(double*)(Dataptr);执行 double tmp =* ptodouble 时;程序跳转到 hl_sys_intvecs.asm 中的 b DataEntry。

客户想知道这是什么类型的错误、以及如何解决? 谢谢。

此致、

樱桃

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

    您好、Cherry、

    我认为客户不需要在这里使用 double、因为 double 用于以 高精度存储浮点值、但我理解客户希望将8个无符号字节的整个数组移动到64位的单个对象。

    因此、客户应该执行如下操作。

    uint64_t  ptodouble =(uint64_t *)(Dataptr);

    uint64_t  tmp =  * ptodouble;

    您能否要求客户这样做并让我们知道状态?

    --

    谢谢、此致、
    Jagadish。