1
我试图从用户空间通过I²C写入EEPROM。我正在使用/dev
设备文件和open
,read
,write
和ioctl
函数。阅读工作没有问题,但是当我使用相同的代码写入时(只是用写入替换读取),它失败。 EEPROM不受写保护(回显到EEPROM驱动器的设备文件中)。通过I²C写入EEPROM失败
我有的代码如下。
if ((fd = open(write_destination, O_RDWR)) < 0) {
goto error;
}
if (ioctl(fd, I2C_SLAVE_FORCE, 0x50) < 0) {
goto error_fd;
}
while((n = write(fd, self->fields[i].buf, self->fields[i].size)) != self->fields[i].size)
perror("");
我忽略了什么?