你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

IO口模拟I2C通信

[复制链接]
watercici 提问时间:2018-3-15 11:25 /
阅读主题, 点击返回1楼
收藏 评论24 发布时间:2018-3-15 11:25
24个回答
Inc_brza 回答时间:2018-3-15 18:42:22
我是没加,不过我也支持加了能让程序变得更加谨慎

评分

参与人数 1蝴蝶豆 +2 收起 理由
zero99 + 2

查看全部评分

Angel_YY_ST 回答时间:2018-3-15 19:24:18
提示: 作者被禁止或删除 内容自动屏蔽
watercici 回答时间:2018-3-16 10:35:14
Angel_YY 发表于 2018-3-15 19:24
超时是一定要加的,IIC的时序是比较严格的,要按IIC的时序进行。
而PEC则可以不用的。一般用的模拟IIC都没 ...

知道了,谢谢!
watercici 回答时间:2018-3-16 10:42:38

我还想问一下,等ACK用中断吗,中断可是必须的吗
watercici 回答时间:2018-3-16 10:43:13
watercici 发表于 2018-3-16 10:42
我还想问一下,等ACK用中断吗,中断可是必须的吗

如果用硬件I2C的话,等ACK是一定要用中断的吗
watercici 回答时间:2018-3-18 20:51:53
dsjsjf 发表于 2018-3-15 16:20
发一个我在用的IO模拟IIC程序给你,不需要判断超时
static void I2c_delay_us(uint32_t i)
{

亲,您这个是没有中断的是吗?

watercici 回答时间:2018-3-18 21:21:43
watercici 发表于 2018-3-15 16:59
亲,有两个问题,(1)为什么起始信号中,对SDA有两次拉低,而SCLK拉高一次就不管了呢,我看别的例程就是 ...

请问,用IO模拟I2C在读写数据之前用检测总线是否忙吗,我在您的程序中没有看到这个判断
maxtch 回答时间:2018-3-18 22:53:34
这两个功能一般不需要:这都是 SMBus 特有的功能,一般 I2C 用不到。对于超时检测,只要一个字节传输完收不到 ACK 就直接判定失败就可以了。

评分

参与人数 1蝴蝶豆 +3 收起 理由
zero99 + 3

查看全部评分

watercici 回答时间:2018-3-19 08:14:06
maxtch 发表于 2018-3-18 22:53
这两个功能一般不需要:这都是 SMBus 特有的功能,一般 I2C 用不到。对于超时检测,只要一个字节传输完收不 ...

哦,好的,谢谢您的回复
埃斯提爱慕 回答时间:2018-3-19 17:52:12
提示: 作者被禁止或删除 内容自动屏蔽
12

所属标签

相似问题

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
STM32Cube扩展软件包
意法半导体边缘AI套件
ST - 理想汽车豪华SUV案例
ST意法半导体智能家居案例
STM32 ARM Cortex 32位微控制器
关注我们
st-img 微信公众号
st-img 手机版