void Read_ID(u8 (*HLID)[4],u8 ID_num,u16 start_add) 
{ 
        u8 Send_Times; 
        u8 IDcount; 
        u32 i; 
        for(IDcount=0;IDcount<ID_num;IDcount++) 
        { 
                for(Send_Times=0;Send_Times<3;Send_Times++) 
                {                 
                        Uart2RebuildlongDate(0x03,start_add+2*IDcount,2,9); 
                        Uart2_Send_Arry(Uart2Sendbuff,8); 
                        RC2IE = 1;//enable recieve interrupt 
                        i=100000;                       //60ms 
                        while((!Uart2CommEndFlag)&&(i--)); 
                        RC2IE = 0;//disable recieve interrupt 
                        if(Uart2CommEndFlag)//数据接收完成 
                        { 
                                Uart2CommEndFlag=0; 
                                *(*(HLID+IDcount)+0)=Uart2Recdate[5]; 
                                *(*(HLID+IDcount)+1)=Uart2Recdate[6]; 
                                *(*(HLID+IDcount)+2)=Uart2Recdate[3]; 
                                *(*(HLID+IDcount)+3)=Uart2Recdate[4]; 
                                Uart1_Send_Arry(*(HLID+IDcount),4); 
                                break;         
                        } 
                        else 
                        { 
                                continue; 
                        } 
                }         
        } 
} 
把这个函数放在main.c文件里,编译没问题;但吧这个函数放在其他的.c文件编译出现这样的错误。 
Error   [1098] F:\CODE\RF-TVPO\RF-TVPO_v2.0\uart2cmd.h; 12. conflicting declarations for variable "F2643" (F:\CODE\RF-TVPO\RF-TVPO_v2.0\uart2cmd.h:12) 
Error   [1098] F:\CODE\RF-TVPO\RF-TVPO_v2.0\uart2cmd.c; 142. conflicting declarations for variable "_Read_ID" (F:\CODE\RF-TVPO\RF-TVPO_v2.0\uart2cmd.h:12) 
在uart2cmd.h也做了声明 
#ifndef _UART2CMD_H 
#define _UART2CMD_H 
 
#define H_START_ADD 0x0bb9 
#define L_START_ADD 0x0bD9 
 
#include "config.h" 
 
u16 CRC_Test(u8* puchMSG, u8 usDataLen); 
void Uart2RebuildDate(u8 Function,u8 AddressH,u8 AddressL,u8 DateH,u8 DateL); 
void Uart2RebuildlongDate(u8 Function,u16 Address,u16 Date,u8 Re_len); 
void Read_ID(u8 (*HLID)[4],u8 ID_num,u16 start_add); 
 
#endif 
实在是找不到问题出在哪里,但是如果把这个函数的u8 (*HLID)[4]这个参数去掉就可以编译通过 
请各位帮忙分析一下问题出在哪里 
 
 |   
     
  
 |