初级会员

- 积分
- 76
- 金钱
- 76
- 注册时间
- 2015-12-20
- 在线时间
- 12 小时
|

楼主 |
发表于 2018-7-12 12:37:02
|
显示全部楼层
DWARE\MY9XX1\MY9XX1.c(104): error: #167: argument of type "const u8 (*)[4]" is incompatible with parameter of type "u8 *"
SX_I2C_Write(addr,&sx_reg_val[i-1]);
错误的子函数程序:
void Init_SX(void)
{
u8 i;
u8 addr;
for(i=0;i<=INIT_FAIL_TIME;i++)//INIT_FAIL_TIME=20
{
delay_ms(20);
SX_I2C_Read(0x10,reg_val);//ID
if(reg_val[3] != SX_Chip_ID) continue;
break;
}
if(reg_val[3] != SX_Chip_ID)return; //again
for(i = 1;i <= 48; i++)
{
if(i <= 12)
addr = i-1;
else if( i <= 16)
addr = 3 + i;
else if( i <= 27)
addr = 8 + i;
else if( i <= 32)
addr = 9 + i;
else if( i <= 48)
addr = 15 + i;
SX_I2C_Write(addr,&sx_reg_val[i-1]);
}
Write_SX_U_Band_RegVal();
SX_Reset_Chip();
SX_Trigger();
}
另外一个子函数程序:
const u8 sx_reg_val[48][4] =
{
0xfC,0x4f,0x04,0x00, //REG0
.
.
.
0x00,0x0F,0x00,0x00, //REG3F
}
SX_I2C_Write的子函数程序:
void SX_I2C_Write(u8 reg,u8 *pBuf)
{
u8 i;
if(reg <= 0x0b)
{
analog_reg_val[reg][0] = pBuf[0];
analog_reg_val[reg][1] = pBuf[1];
analog_reg_val[reg][2] = pBuf[2];
analog_reg_val[reg][3] = pBuf[3];
}
IIC_Start();
IIC_Send_Byte(SX_Chip_ID);
reg = reg<<1;
IIC_Send_Byte(reg);
for(i=0;i<4;i++)
{
IIC_Send_Byte(pBuf);
}
IIC_Stop();
} |
|