大学生
最后登录1970-1-1
在线时间 小时
注册时间2017-7-29
|
本帖最后由 纸he 于 2017-10-14 23:19 编辑
只要有一套可用的I2C时序就可以了,野火提供的代码左一个I2C代码,右一个I2C代码,太乱了,不方便自己使用,我整合一下,喜欢的拿走吧
ps:其中CI2CSoft_me是我自己按照时序写(暂时没发现问题。。),CI2CSoft_other是抄改别人的
他们都向外提供函数,使用I2C其实可以不用了解时序,懂得使用以下函数即可!!!
u8 Read_nByte(u8 SlaveAddress,u8 REG_Address,u8 *buf,uint16_t len);
u8 Write_nByte(u8 SlaveAddress,u8 REG_Address,u8 *buf,uint16_t len);
uint8_t WaitForWriteEnd(uint8_t SlaveAddress,uint16_t t);
u8 Read_1Byte(u8 SlaveAddress,u8 REG_Address,u8 *REG_data);
u8 Write_1Byte(u8 SlaveAddress,u8 REG_Address,u8 REG_data);
测试代码
软硬切换
还有main函数I2C初始化代码
ps:由于EEPROM和MPU6050共用一个I2C,软硬要一起改
效果图
注意:我那个附件默认使用SRAM_Debug,不会使用的可以看Doc中的说明文档或者切换Flash_Debug
附件
I2C实验.rar
(605.3 KB, 下载次数: 175)
|
|