函数 GPI_Write(DWORD dwData, LPCVOID pBuf, DWORD Len)作用是根据pBuf中的内容对具体的GPIO端口进行写操作,貌似dwData、Len都没用到。
pBuf指向的内存的第一个字节存储的是gpioNum,通过
pdatabuf = (BYTE*)pBuf;
gpioNum = *pdatabuf++;
实现。
pBuf指向的内存的第二个字节存储的是gpioState ,通过
gpioState = *pdatabuf;
实现。
if(gpioNum == 0 ) 用于判断选择的GPIO口,这里只对数值为0的情况进行了处理,gpioNum =0对应GPB5,你也可以添加
if(gpioNum == 3/4/5/6 )来处理其他GPIO口。