- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
smbus中的应答位ACK和NACK的理解
ACK和NACK的理解
ACK和NACK的含义
ACK是acknowledge的前三个字母,含义是“告知收到”,这个词在书信中常用到。
NACK Non-ACK,就是“告知没有收到”或者“没有告知收到”。
ACK和NACK的电性本质实现
ACK是在CLK高电平期间保持低电平,NACK是在CLK高电平期间保持高电平。一个数据接收器(可以是从设备,也可以是主设备)发出ACK,从电路上看,本质是data线上的开漏MOS导通使得漏极D接地短路,从而把SMBus总线的data线的电平拉低。当然,如果发出的是NACK,从电路上看,本质是data线上的开漏MOS截止使得漏极D对地开路,释放SMBus总线的data线,让data线的电平被上拉电阻和电压置高。
可见,数据接收器发出ACK应答,该设备就会把data MOS导通拉低data线。如果数据接收器发出NACK应答,该设备就会把data MOS截止释放data线。
由于一个从设备被主设备访问时,其他从设备是没有被寻址的,所以这些设备的data 开漏MOS管都是截止的,对data线是释放的,所以这时data线的电平只能由的数据接收器(从设备或者主机)来控制。
ACK和NACK发生的条件
发送设备在与接收设备通讯时,接收设备要通过ACK或者NACK来告知数据发送设备自己当前对数据的接收状态,ACK表示接收设备已经安全地接收了发送设备传送过来的数据,NACK表示接收设备还没有完成对发送设备传送来的数据的接收。
一般地,一次通讯中,发出ACK或NACK的设备一定是数据接收设备,它可以是主设备,也可以是从设备。
从设备通常发出NACK的情况:
主设备试图寻址该从设备时,但该从设备不存在。当然该从设备不会对data 线产生拉低的效应。
由于某种原因从设备出现故障而没有对主设备的寻址作出应答,就是该从设备不知道是否接收到了主设备写入的数据,但就是没有把data 线的电平拉低,比如因为该设备data开漏MOS损坏没有导通到地。
从设备接收了来自主设备写入的数据,但是由于此时从设备处于接收忙碌状态中,此时,主设备还是可能会不断地写数据给该从设备,所以从设备在每个写入的数据后都发出NACK告诉master我还在忙碌地处理你传送来的每个数据。
这说明,NACK后面不一定是stop!
主设备发出NACK的情况:
除了从设备的以上3种情况外,主设备作为数据接收器发出NACK是在一次读取通信结束后,由该主设备直接发出一个stop来终止这次通信,就算接收完成正常也不再用ACK来告诉从设备发送器了。
由start或者repeat start开始的第一个字节,主机不论是向从设备中写数据,还是从从设备中读取数据,发ACK或者NACK的总是从设备。这是因为第一个字节是寻址从设备的,不是主设备读取的数据,也不是写给从设备的数据,必须要从设备作出应答确认从设备的存在性和准备完毕性。发出了ACK就表示该从设备告诉主设备你的寻址我收到了,在我这儿呢!
文档评论(0)