IAR 同一个函数在不同的地方调用,其返回值不一样
开发工具:IAR;芯片:CC2530;代码:
uint8 SpiReadEth(uint8 addr)
{
uint8 value;
SCL_L;
SCL_DELAY;
CS_L;
SCL_DELAY;
SpiWriteByte(addr);
value = SpiReadByte();
SCL_L;
SCL_DELAY;
CS_H;
SCL_DELAY;
return value;
}
这是一段读取enc28j60网络芯片的代码,在不同的.C文件中调用这个函数,有的地方会返回正确的值,有的地方就不行。
请问这个是什么问题,是不是什么配置不对,或者是代码写得不够规范,在优化的时候,出问题了?