GR-SAKURA的I2C问题解决了。总结I2C的用法如下:
1】需要在在library里选上wire、并#include <Wire.h>
2】setup()里启用并配置好2线的定义:
Wire.begin();
Wire.assignSdaScl (PIN_SDA, PIN_SCL);
3】写操作:
Wire.beginTransmission (SLAVE_ADDRESS);
Wire.write (COMAND_WRITE);//写命令
Wire.endTransmission ();
4】读操作:
int i,j;
i=Wire.requestFrom(SLAVE_ADDRESS,READ_LENGTH);//开始读READ_LENGTH的返回
while(Wire.available()<READ_LENGTH){}//直到所需长度读完
for(j=0;j<READ_LENGTH;j++){
i=Wire.read();//读1byte
}
差点就拖进度了。还好,只一天就搞定了。