找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 2566|回复: 6
打印 上一主题 下一主题
收起左侧

关于MCU软件模拟IIC的时序 求分析

[复制链接]
跳转到指定楼层
楼主
8黑币
首先感谢关注
我的问题首先第一个问题就是在软件模拟IIC的时候时钟信号的一个问题

上图是24C02的时序图,然后根据时序图我理解的是:一个时钟周期(T高+T低>8.7us)必须大于8.7us(不算上升沿和下降沿的过渡时间)
但是我在学习资料中看到传送数据函数的一个时钟周期,高电平才延迟2us,低电平也是2us,这样能行么?


上面的SDA_OUT()就是配置数据线为输出模式,IIC_SCL和IIC_SDA就是I/O口输出。这里我想不通,希望前辈指教。
最后就是IIC的SCL线上的时钟周期是不是并不是咱们传统意义(以固定频率精准的发送脉冲)上的时钟周期呀,这个所谓的“时钟周期”就是指的是一个低电平+高电平,然后呢高低电平会有最小持续时间,但是最大时间不限制,也就是说,在发送数据的时候(数据没发完)如果时钟信号不变了,是不是数据发送也就暂停了,这恰好可以解释“接收器件可以将SCL线拉成低电平,从而使主机处于等待状态。直到接收器件准备好接收下一个字节时,再释放SCL线使之为高电平,从而使数据传送可以继续进行。”这句话。

最佳答案

查看完整内容

首先是传输频率,表格里边有两种,不同的电压,他们的传输频率最大值是不一样的,1.8V左右的时候最大不能超过100KHZ,从而也限制了高低电平的最小持续时间。5V左右的时候,最大传输频率也可达到400khz;也就是说在不同大电压情况下,在保证24C02能正常工作的情况下,还决定了数据传输的最高频率。 你说的8.7us是在某一个电压区间的值。随着电压这个周期值是变化的。 在5V左右的时候,其实理想情况1.8us就够了。 例程中delay_us ...
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖 顶 踩
回复

使用道具 举报

沙发
ID:191511 发表于 2020-3-22 13:56 | 只看该作者
首先是传输频率,表格里边有两种,不同的电压,他们的传输频率最大值是不一样的,1.8V左右的时候最大不能超过100KHZ,从而也限制了高低电平的最小持续时间。5V左右的时候,最大传输频率也可达到400khz;也就是说在不同大电压情况下,在保证24C02能正常工作的情况下,还决定了数据传输的最高频率。
你说的8.7us是在某一个电压区间的值。随着电压这个周期值是变化的。
在5V左右的时候,其实理想情况1.8us就够了。
例程中delay_us(x)函数一般实现延时都不是绝对的xus,而是有多少的变化的。因为一般都用软件延时,延时并不精确,具体时间可以用示波器或者逻辑分析仪去判断。
IIC的传输时钟周期,这个时钟并不是标准的方波,简单点说是pwm波,不通的编程方式,这个时钟的波形是稍有差别的。并且多数串行数据通信都是要检测边沿信号来进行数据改变和锁存的。
回复

使用道具 举报

板凳
ID:94031 发表于 2020-3-22 15:13 | 只看该作者
首先不能加在一起算,而是分别2.5v供电时 T高>4us,T低>4.7us,4.5-5.5供电时 T高>0.6us,T低>1.2us,这也解答了你别人为什么是2us,因为别人是4.5-5.5供电。
回复

使用道具 举报

地板
ID:687694 发表于 2020-3-22 17:03 | 只看该作者
告诉你个小技巧,在proteus里面建个mcu然后加载HEX文件,用仿真示波器观察i2c数据线上的波形判断是否正常。
回复

使用道具 举报

5#
ID:474802 发表于 2020-3-22 19:39 | 只看该作者
xuyaqi 发表于 2020-3-22 15:13
首先不能加在一起算,而是分别2.5v供电时 T高>4us,T低>4.7us,4.5-5.5供电时 T高>0.6us,T低>1.2us,这也 ...

但这是3.3V的电压该怎么算呢?
回复

使用道具 举报

6#
ID:474802 发表于 2020-3-22 19:47 | 只看该作者
xuyaqi 发表于 2020-3-22 15:13
首先不能加在一起算,而是分别2.5v供电时 T高>4us,T低>4.7us,4.5-5.5供电时 T高>0.6us,T低>1.2us,这也 ...

弄懂了,谢谢
回复

使用道具 举报

7#
ID:474802 发表于 2020-3-22 19:52 | 只看该作者
wo4fisher 发表于 2020-3-22 13:56
首先是传输频率,表格里边有两种,不同的电压,他们的传输频率最大值是不一样的,1.8V左右的时候最大不能超 ...

感谢回答
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表