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.

[参考译文] TMS320F280025C:处理十六进制数据后无法对齐和对齐

Guru**** 2429790 points


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

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/1079269/tms320f280025c-unable-to-pad-and-align-after-processing-hex-data

部件号:TMS320F280025C

尊敬的团队:

由于硬件问题,客户只能通过 C2Prog 进行编程。

在我的客户将 sincos 函数添加到项目后,他发现无法使用 C2Prog 对程序进行编程,并出现错误:

处理十六进制数据后无法填充和对齐

在不调用 sincos 函数的情况下使用 C2Prog 编程没有问题。

程序代码如下:

#ifndef C28X_FPU_FAST_RTS_H
#define C28X_FPU_FAST_RTS_H


#ifdef __cplusplus
extern "C" {
#endif

//-----------------------------------------------------------------------------
// Standard C28x Data Types
//-----------------------------------------------------------------------------


#ifndef DSP28_DATA_TYPES
#define DSP28_DATA_TYPES
typedef int int16;
typedef long int32;
typedef long long int64;
typedef unsigned int Uint16;
typedef unsigned long Uint32;
typedef unsigned long long Uint64;
typedef float float32;
typedef long double float64;
#endif


//-----------------------------------------------------------------------------
// Function Prototypes
//-----------------------------------------------------------------------------
float32 sqrt(float32 X);
float32 isqrt(float32 X);
//float32 atan2(float32 y, float32 x);
void sincos(float32 radian, float32* PtrSin, float32* PtrCos);

//-----------------------------------------------------------------------------
//
//-----------------------------------------------------------------------------

#ifdef __cplusplus
}
#endif /* extern "C" */

#endif // - end of C28X_FPU_FAST_RTS_H

//===========================================================================
// End of file.
//===========================================================================

cmd:

BOOTROM : origin = 0x003F0000, length = 0x00001402
IQTABLES : origin = 0x003F1402, length = 0x0000166D /* IQ Math Tables in Boot ROM */
FPUTABLES : origin = 0x003F2A70, length = 0x0000081A /* FPU Tables in Boot ROM */
BOOTROM_EXT : origin = 0x003F8000, length = 0x00007FC0
RESET : origin = 0x003FFFC0, length = 0x00000002

   FPUmathTables    : > FPUTABLES, ALIGN(8)

请问原因是什么?

此致