I2C总线

[复制链接]
2320|10
 楼主| 12089044 发表于 2012-9-24 11:02 | 显示全部楼层 |阅读模式
I2C总线的ACK信号是谁给出来的,例如我用FPGA接一个I2C端口扩展芯片,芯片上面没有ACK这个管脚啊,那怎么送ACK给FPGA,假设是FPGA发送数据给I2C扩展芯片
joyme 发表于 2012-9-24 11:19 | 显示全部楼层
ACK是应答信号,是第九个CLK时,接受方拉低SDA(数据线)表示接收方工作正常,没有专门的硬件管脚
 楼主| 12089044 发表于 2012-9-24 14:32 | 显示全部楼层
是指接收方接到ACK信号就把sda拉低的意思吗 ? 2# joyme
3htech 发表于 2012-9-24 15:51 | 显示全部楼层
1Byte

本帖子中包含更多资源

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

×
 楼主| 12089044 发表于 2012-9-24 16:09 | 显示全部楼层
那是不是在写程序时候到第九个CLK时把sda拉低就OK了,还是说这个ACK受其他控制的 2# joyme
abandawu 发表于 2012-9-24 19:50 | 显示全部楼层
zhang_2000 发表于 2012-9-24 21:09 | 显示全部楼层
协议没看明白   怎么设计
jeaper 发表于 2012-9-26 09:46 | 显示全部楼层
ACK是从器件发出的,在接收完数据后将数据线拉低,主器件检测到后可以发送下一字节。
chenyu988 发表于 2012-9-28 08:34 | 显示全部楼层
ACK 并不是只有从机在接收完数据时才发出
joyme 发表于 2012-9-28 10:47 | 显示全部楼层
是指接收方接到ACK信号就把sda拉低的意思吗 ? 2# joyme

发送方发完8位数据,在第九个CLK,将SDA设置为输入口,接收方在第九个CLK拉低SDA(这就是ACK),发送方检测到低就是检测到了ACK信号。无所谓主从,ACK是由接收方控制,发送方负责检测
chenyu988 发表于 2012-9-28 13:39 | 显示全部楼层
STM32 I2C 从机将主机发送的地址与自己的地址比较,相同时也会发出ACK应答信号
您需要登录后才可以回帖 登录 | 注册

本版积分规则

3

主题

26

帖子

0

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