static int kxud9_i2c_read(u8 addr, u8 *data, int len),,
};err = i2c_transfer(ud9->client->adapter, msgs, 2);
if(err != 2)
dev_err(&ud9->client->dev, "read transfer error\n");
else
err = 0;
return err;
}static int kxud9_i2c_write(u8 addr, u8 *data, int len),};
buf[0] = addr;
for (i = 0; i < len; i++)
buf[i + 1] = data[i];
err = i2c_transfer(ud9->client->adapter, msgs, 1);
if(err != 1)
dev_err(&ud9->client->dev, "write transfer error\n");
else
err = 0;
return err;
}
I2C讀寫問題
a.完全不能進行讀寫 1 通訊協議不正確 有很多的i2c裝置,並不支援所有的i2c協議,同時也不是乙個比較標準的i2c裝置 軟體的通訊時序不正確。2 i2c裝置位址不正確 有很多的i2c裝置的位址是可以通過硬體設定的 也有器件資料提供的資料是錯誤的。3 i2c通訊線上沒有加上拉電阻 由於i2c的從裝...
I2C讀寫EEPROM EEPROM簡介
eeprom 是一種掉電後資料不丟失的儲存器,常用來儲存一些配置資訊,以便系統重新上電的時候載入之。eepom 晶元最常用的通訊方式就是 i 2c 協議,本小節以 eeprom 的讀寫實驗為大家講解如何使用 stm32 軟體模擬產生 i 2c 協議進行通訊。本實驗板中的 eeprom 晶元 型號 a...
I2C驅動(2) 讀寫eeprom
include include include include include include include include include static unsigned short ignore static unsigned short normal addr 位址值是7位 改為0x60的話...