使用程序为linux-3.6.5\drivers\gpio\gpio-pca953x.c(见附件)
硬件平台为博通53347 arm; 总线程序为SMBUS(兼容I2C)
操作步骤:
1、设置16口为输出,并输出低电平
2、设置I/O 0为高电平
3、读取第0口,为低电平
4、再读一次才为高电平。
总的来说,port0 port1需要读2次才是预期的值。
请问这有可能是什么原因?
xie david:
再补充一下:第一次读到的值为更新之前的的值。第二次才是正确的值
16个口如配置成输入
当有高低电平进来也要读2次才能读到正确的值
xie david:
在线等,希望牛人们回复下
WEN JAMES:
2、设置I/O 0为高电平 —— 把这步重复2次试试?