临沂网站哪家好,网站 关键词 多少个,张家口网站网站建设,国内做外卖的网站有哪些# re: Linux I2C 驱动阅读的碰到的一些网上没有提到的东西 回复 更多评论2009-04-11 13:39 by 初学都楼主#xff0c;你好。我看了你那篇《Linux I2C核心、总线与设备驱动[转]》#xff0c;让我明白了不少#xff0c;不过我还是有些不明白的地方#xff0c;想请教一下。我…# re: Linux I2C 驱动阅读的碰到的一些网上没有提到的东西 回复 更多评论2009-04-11 13:39 by 初学都楼主你好。我看了你那篇《Linux I2C核心、总线与设备驱动[转]》让我明白了不少不过我还是有些不明白的地方想请教一下。我挂的I2C设备是只可以写的不能读所以只有一个写从机地址可是当我调用内核的I2C驱动时发现写操作执行后在示波器上看到在开始信号之后它先发送完从机地址并接收到应答信号可之后立即出现了一个停止信号(我后面还有数据要发的呀)然后又开始发送从机地址并在收到应答后又出现一个停止位如此反复在我下面的程序运行时只在示波器上抓到四组这样“开始—从机地址—应答—停止”的信号却没有看到我接下来要发数据同时还打印出“Remote I/O error”的错误我先把我的程序贴一下希望能得到你的指点谢谢#define I2C_TENBIT 0x704#define I2C_SLAVE 0x703#define CHIP_ADDR 0x30 1 // 7 bits for fm31256 address#define IO_DEV /dev/i2c-0main(int argc, char *argv[]){unsigned char REG_WRITE0X30; /*写地址*/unsigned char data0xf4int ret;ret0;if ((fd open(IO_DEV, O_RDWR)) 0)perror(open i2c_adpter error);else //设置I2C访问模式{if(ioctl(fd,I2C_TENBIT,0))perror(set i2c 7bits address mode error);if(ioctl(fd,I2C_SLAVE,CHIP_ADDR))perror(set device address error);}if((ret write (fd, REG_WRITE, 1))! 1)//发从机地址{perror(set address error); //这里打印Remote I/O error}else{if (write (fd, data, 1))! 1)//发送数据但在示波器上没有 看到date的值perror(write date error); //这里打印Remote I/O error}return 0;}