工程build时选fpu32选项可以编译通过,但float类型的精度不足,如果用long float定义则变量的值明显不对;如果build时改为fpu64选项,则链接报错,具体如下
—————————— SCI.pjt – Debug ——————————
[Linking…] "C:\CCStudio_v3.3\C2000\cgtools\bin\cl2000" -@"Debug.lkf"
<Linking>
>> error: linking files for incompatible targets (file
'F:\\MEMS_GPS_BOARD\\DSP28335\\Debug\\DSP2833x_ADC_cal.obj')
>> error: linking files for incompatible targets (file
'F:\\MEMS_GPS_BOARD\\DSP28335\\Debug\\DSP2833x_CodeStartBranch.obj')
>> error: linking files for incompatible targets (file
'F:\\MEMS_GPS_BOARD\\DSP28335\\Debug\\DSP2833x_CpuTimers.obj')
>> error: linking files for incompatible targets (file
'F:\\MEMS_GPS_BOARD\\DSP28335\\Debug\\DSP2833x_DefaultIsr.obj')
>> error: linking files for incompatible targets (file
'F:\\MEMS_GPS_BOARD\\DSP28335\\Debug\\DSP2833x_GlobalVariableDefs.obj')
>> error: linking files for incompatible targets (file
'F:\\MEMS_GPS_BOARD\\DSP28335\\Debug\\DSP2833x_PieCtrl.obj')
>> error: linking files for incompatible targets (file
'F:\\MEMS_GPS_BOARD\\DSP28335\\Debug\\DSP2833x_PieVect.obj')
>> error: linking files for incompatible targets (file
'F:\\MEMS_GPS_BOARD\\DSP28335\\Debug\\DSP2833x_Sci.obj')
>> error: linking files for incompatible targets (file
'F:\\MEMS_GPS_BOARD\\DSP28335\\Debug\\DSP2833x_Spi.obj')
>> error: linking files for incompatible targets (file
'F:\\MEMS_GPS_BOARD\\DSP28335\\Debug\\DSP2833x_SysCtrl.obj')
>> error: linking files for incompatible targets (file
'F:\\MEMS_GPS_BOARD\\DSP28335\\Debug\\DSP2833x_usDelay.obj')
>> error: linking files for incompatible targets (file
'F:\\MEMS_GPS_BOARD\\DSP28335\\Debug\\DSP2833x_Xintf.obj')
>> error: linking files for incompatible targets (file
'F:\\MEMS_GPS_BOARD\\DSP28335\\Debug\\SCI.obj')
>> Compilation failure
——————————————————————————————————————————————
是哪块设置不对吗,还是28335根本不能使用双精度浮点数
mangui zhang:
F28335 FPU的指令集只支持32位的浮点运算,因此也没有64位的浮点运算库
工程build时选fpu32选项可以编译通过,但float类型的精度不足,如果用long float定义则变量的值明显不对;如果build时改为fpu64选项,则链接报错,具体如下
—————————— SCI.pjt – Debug ——————————
[Linking…] "C:\CCStudio_v3.3\C2000\cgtools\bin\cl2000" -@"Debug.lkf"
<Linking>
>> error: linking files for incompatible targets (file
'F:\\MEMS_GPS_BOARD\\DSP28335\\Debug\\DSP2833x_ADC_cal.obj')
>> error: linking files for incompatible targets (file
'F:\\MEMS_GPS_BOARD\\DSP28335\\Debug\\DSP2833x_CodeStartBranch.obj')
>> error: linking files for incompatible targets (file
'F:\\MEMS_GPS_BOARD\\DSP28335\\Debug\\DSP2833x_CpuTimers.obj')
>> error: linking files for incompatible targets (file
'F:\\MEMS_GPS_BOARD\\DSP28335\\Debug\\DSP2833x_DefaultIsr.obj')
>> error: linking files for incompatible targets (file
'F:\\MEMS_GPS_BOARD\\DSP28335\\Debug\\DSP2833x_GlobalVariableDefs.obj')
>> error: linking files for incompatible targets (file
'F:\\MEMS_GPS_BOARD\\DSP28335\\Debug\\DSP2833x_PieCtrl.obj')
>> error: linking files for incompatible targets (file
'F:\\MEMS_GPS_BOARD\\DSP28335\\Debug\\DSP2833x_PieVect.obj')
>> error: linking files for incompatible targets (file
'F:\\MEMS_GPS_BOARD\\DSP28335\\Debug\\DSP2833x_Sci.obj')
>> error: linking files for incompatible targets (file
'F:\\MEMS_GPS_BOARD\\DSP28335\\Debug\\DSP2833x_Spi.obj')
>> error: linking files for incompatible targets (file
'F:\\MEMS_GPS_BOARD\\DSP28335\\Debug\\DSP2833x_SysCtrl.obj')
>> error: linking files for incompatible targets (file
'F:\\MEMS_GPS_BOARD\\DSP28335\\Debug\\DSP2833x_usDelay.obj')
>> error: linking files for incompatible targets (file
'F:\\MEMS_GPS_BOARD\\DSP28335\\Debug\\DSP2833x_Xintf.obj')
>> error: linking files for incompatible targets (file
'F:\\MEMS_GPS_BOARD\\DSP28335\\Debug\\SCI.obj')
>> Compilation failure
——————————————————————————————————————————————
是哪块设置不对吗,还是28335根本不能使用双精度浮点数
mangui zhang:
http://www.deyisupport.com/question_answer/microcontrollers/c2000/f/56/t/60345.aspx