智能车制作

标题: 调试程序的一个问题 [打印本页]

作者: 共和国之辉    时间: 2009-4-11 09:38
标题: 调试程序的一个问题
源代码出错的部分如下:

#include <hidef.h>      /* common defines and macros */
#include <mc9s12dg128.h>     /* derivative information */
#pragma LINK_INFO DERIVATIVE "mc9s12dg128b"

#define Mid ROW_MAX/2
#define spd_Kderror 0.007
#define ROW_MAX 3

float exspeed ;
float spd_derror;//速度决定D
unsigned char black_x[ROW_MAX];

void ctr_speed(){
spd_derror=(black_x[ROW_MAX]-Mid)*spd_Kderror;
}

void main(){
ctr_speed();
}

运行之后出现如下错误:
Link Error   : L1822: Symbol _FSFLOAT in file D:\song\fasecale程序\test\test_Data\TBDML\ObjectCode\main.c.o is undefined

Link Error   : L1822: Symbol _FMUL in file D:\song\fasecale程序\test\test_Data\TBDML\ObjectCode\main.c.o is undefined

Link Error   : Link failed
莫名其妙,我自己检测之后觉得可能是数据类型不匹配的问题,但不知道怎么改。
如果我将(black_x[ROW_MAX]-Mid)改为一个数字,编译就可以通过。
借问高手这到底是怎么一回事?
作者: rocky    时间: 2009-4-11 09:38
呵呵,我来帮你解决,你在建工程的时候把数据类型设置为float型,保证OK!
作者: 50833713    时间: 2009-4-11 13:43
提示: 作者被禁止或删除 内容自动屏蔽
作者: 共和国之辉    时间: 2009-4-11 18:37
谢谢,果然可以。另外借问一下,我新建一个工程,当添加的头文件和.c文件稍多时就不让加了,这又是怎么回事? 2# rocky
作者: yangbenhe    时间: 2009-6-28 10:47
我也是这个问题,解决了,厉害!
作者: jwauto    时间: 2010-6-17 18:54
HAO
作者: sajoenklgfja    时间: 2011-3-14 21:15
为什么我按你们说的就不行呢




欢迎光临 智能车制作 (http://111.231.132.190/) Powered by Discuz! X3.2