[国产单片机] 菜鸟问一个简单的I2C问题

[复制链接]
1763|13
 楼主| cactus0117 发表于 2018-1-5 16:45 | 显示全部楼层 |阅读模式
本帖最后由 cactus0117 于 2018-1-5 16:46 编辑

我现在用的单片机周期是0.125us,进中断时间是1.25us,那么能不能实现写I2C从机频率接近400K?

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

×
 楼主| cactus0117 发表于 2018-1-5 16:49 | 显示全部楼层
图片现在实现的频率是100K
xyz549040622 发表于 2018-1-6 07:32 | 显示全部楼层
你用的IO模拟还是硬件I2C呢?400k的频率就是2.5us,如果是IO模拟的话,只要一个SCL的频率控制在20个指令周期内,理论是可以达到的,实际需要用示波器测量看看。硬件的话,需要看你的数据手册了。
ningling_21 发表于 2018-1-6 09:23 | 显示全部楼层
cactus0117 发表于 2018-1-5 16:49
图片现在实现的频率是100K

试试就知道
 楼主| cactus0117 发表于 2018-1-6 09:25 | 显示全部楼层
xyz549040622 发表于 2018-1-6 07:32
你用的IO模拟还是硬件I2C呢?400k的频率就是2.5us,如果是IO模拟的话,只要一个SCL的频率控制在20个指令周 ...

现在用的是IO模拟
xyz549040622 发表于 2018-1-6 09:45 | 显示全部楼层
cactus0117 发表于 2018-1-6 09:25
现在用的是IO模拟

拿示波器抓SCL的波形吧。
 楼主| cactus0117 发表于 2018-1-6 11:53 | 显示全部楼层
xyz549040622 发表于 2018-1-6 09:45
拿示波器抓SCL的波形吧。

不行 通信频率400K时 开头信号才1us 也不到
 楼主| cactus0117 发表于 2018-1-6 11:54 | 显示全部楼层

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

×
山东电子小菜鸟 发表于 2018-1-6 13:06 | 显示全部楼层
软件模拟的话用8M频率,单任务的话理论可以达到,多任务悬
xyz549040622 发表于 2018-1-6 19:41 | 显示全部楼层
cactus0117 发表于 2018-1-6 11:53
不行 通信频率400K时 开头信号才1us 也不到

那就是达不到了。
 楼主| cactus0117 发表于 2018-1-6 22:21 | 显示全部楼层
877049204 发表于 2018-1-7 10:37 | 显示全部楼层
改延时时间2.5us就行了
ayb_ice 发表于 2018-1-8 08:42 | 显示全部楼层
差不多可以实现

不过没有关系,不超过极限值都是可以的
zqx1000 发表于 2018-4-10 21:22 | 显示全部楼层
您需要登录后才可以回帖 登录 | 注册

本版积分规则

13

主题

321

帖子

1

粉丝
快速回复 在线客服 返回列表 返回顶部