今天,在调试一个模块,CC2500,只是无线的数据收发,环境已经搭好了,各种功能正常,SPI传输,LED显示,SD卡的读取,问题就是在于那个CC2500(感觉我废话有点多)
-------------------------------------------------------上面是情况简介,我是分割线---------------------------------------------------------------------------------------------------------------------------------------------------
那个CC2500是一个模块来的,带有.h和.c文件,不过小弟是个菜,对于STM-32来说是菜吧。
/*变量*/extern U16 SendNum;
extern U16 RevNum;
extern U8 RevBage;
extern U8 TRXFlag;
/*函数*/
extern U8 SPI_Tran(U8 data8);
extern void CC2500WStrobe(U8 data8);
extern void CC2500W1BYTE(U8 ADDR,U8 data8);
extern U8 CC2500R1BYTE(U8 ADDR);
extern void CC2500WFIFO(U8 *buf,U8 buflength);
extern U8 CC2500RFIFO(U8 *buf,U8 buflength);
extern void CC2500_RST(void);
extern void CC2500_Init(void);
extern void CC2500_SEND(void);
extern void CC2500_REV(void);
上面是.h的一些定义,我编译不过去,然后把extern给删了,把上面那些定义都全部弄到.c那里,
/*变量*/
U16 SendNum;
U16 RevNum;
U8 RevBage;
U8 TRXFlag;
/*函数*/
U8 SPI_Tran(U8 data8);
void CC2500WStrobe(U8 data8);
void CC2500W1BYTE(U8 ADDR,U8 data8);
U8 CC2500R1BYTE(U8 ADDR);
void CC2500WFIFO(U8 *buf,U8 buflength);
U8 CC2500RFIFO(U8 *buf,U8 buflength);
void CC2500_RST(void);
void CC2500_Init(void);
void CC2500_SEND(void);
void CC2500_REV(void);
可编译还是有问题,1行给我出现1个警告1个错误。
..\HARDWARE\CC2500\CC2500.c(13): warning: #64-D: declaration does not declare anything
..\HARDWARE\CC2500\CC2500.c(13): error: #77-D: this declaration has no storage class or type specifier
上面说,我声明了,没有分配空间,为啥呢?
没有引用的话,倒是真的,我main();还没有写呢!
新手求解答...
|