gs:
小弟在au1200的板子上调试,遇到一个问题:想把GPIO_5设置为输入
我的操作是这样的
HANDLE hGPIO
hGPIO = GPIO_Init();
if(hGPIO==INVALID_HANDLE_VALUE) {
goto ErrorReturn;
}
RETAILMSG(1,(TEXT("//-luo0-//\r\n")));
GPIO_SetAsInput(pController->hGPIO, GPIO_5);
RETAILMSG(1,(TEXT("//-luo1-//\r\n")));
调试时
发现有 //-luo0-// 打印信息,没有 //-luo1-// 打印信息。跟踪发现是 寄存器 不能成功
也即:WRITE_REGISTER_ULONG((PULONG)&DeviceInstance->SysRegPtr->trioutclr, Mask); 失败。
可是问题是只对GPIO操作出现这样 的问题,其他的GPIO口都是正常的。
是否有 gs 遇到过此类问题,如何解决,小弟感激万分
你“调试时”后面的内容,我看了几次,都不能清楚的知道它的意思。
不好意思,我写出来的东西0有些跳跃,我以为玩过GPIO的人都知道这些,所以就给省略了
((PULONG)&DeviceInstance->SysRegPtr->trioutclr, Mask); 是由
GPIO_SetAsInput(pController->hGPIO, GPIO_5)这个函数里面跟踪下去的,((PULONG)&DeviceInstance->SysRegPtr->trioutclr, Mask)是对GPIO寄存器的配置。
不知道有没有看得懂的dg