为了加深对I2C总线的理解,用C语言模拟IIC总线,边看源代码边读波形:
如下图所示的写操作的时序图:


读时序的理解同理。对于时序不理解的朋友请参考“I2C总线之(二)---时序”
完整的程序如下:
#include<reg51.h> #define uchar unsigned char #define uint unsigned int #define write_ADD 0xa0 #define read_ADD 0xa1 uchar a; sbit SDA=P2^0; sbit SCL=P2^1; void SomeNop(); //短延时 void init(); //初始化 void check_ACK(void); void I2CStart(void); void<

本文通过C语言来模拟I2C通信过程,结合写操作的时序图进行讲解,帮助读者深入理解I2C总线的工作原理。对于不熟悉I2C时序的读者,建议先查阅相关时序资料。

最低0.47元/天 解锁文章
451

被折叠的 条评论
为什么被折叠?



