你好,我最近在做一个数据采集板,用GPIOD控制采集芯片,GPIOD既负责发送控制命令,又负责采集数据,这就需要对GPIOD做控制,使其能够在发命令时方向为out,读取数据时方向为in。 但是,现在出现一个问题,我发完读取数据的命令后,读到的数据和发送的命令是一样的,也就是说,又将GPDATA的数据读了回来,外部数据并没有通过GPIO更新GPDATA。 请问应该如何解决?谢谢!
int hdb(void)
{
rGPDCON = (rGPDCON & ~0xffffffff|0x0);//GPD0-GPD15:input
int d = rGPDDAT;
return d;
} |