总线特点
1.非工作状态保持高
2. start bit
在scl为高时SDA由高变低
3. stop bit
在scl为高时SDA由低变高
4.data
数据位需要在低电平改变,高电平需要保持稳定。
所有的数据都在一个start 位和一个stop 位之间,数据的宽度由主设备决定。
写操作
主设备,在第1个上升沿将SDA拉底,第1个下降沿改变数据,第8个下降沿将SDA线设为输入,第9个上升沿采集从设备发送的ack信号(低电平),第9个下降沿主设备将SDA设为输出并发送下一个循环的第一个数据位,循环,最后一个下降沿将SDA由低变为长高(stop bit)
以下截图位24lc256写操作实例:
代码资源:
https://opencores.org