中断程序操作I2C问题
duapy 2009-09-27 03:24:27 在一中断程序中,调用I2C接口 DeviceIoControl();在I2C驱动中打印总线读出的值都是正确的,为啥中断中返回值不对?? 还请各位帮忙 ,谢谢 !!
。。。。。。。。。。。。。。。。。。。。。。。。。。。。。
puc = (PUCHAR)MapPtrToProcess(((PI2C_IO_DESC)pBufIn)->Data, pI2C->hProc);
{
//中断中不能访问puc,故用临时变量ptemp
DWORD size = ((PI2C_IO_DESC)pBufIn)->Count;
LPVOID ptemp = NULL;
if(size) ptemp = malloc(size);
dwErr = HW_Read(pI2C,
((PI2C_IO_DESC)pBufIn)->SlaveAddr,
((PI2C_IO_DESC)pBufIn)->WordAddr,
ptemp,
size);
RETAILMSG(1, (L" HW_Read = %x \r\n",(*(DWORD *)ptemp))); if(ptemp)
{
memcpy(puc,ptemp,size);
free(ptemp);
}
}
RETAILMSG(1, (L" HW_Read = %x \r\n",*puc)); UnMapPtr(puc);
。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。