找回密碼
 立即注冊(cè)

QQ登錄

只需一步,快速開(kāi)始

搜索
查看: 1991|回復(fù): 4
打印 上一主題 下一主題
收起左側(cè)

硬件I2C通信中從機(jī)是如何知道數(shù)據(jù)結(jié)束可發(fā)送NACK

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:1043477 發(fā)表于 2022-9-20 13:08 | 只看該作者 回帖獎(jiǎng)勵(lì) |倒序?yàn)g覽 |閱讀模式
在IIC通信中,主機(jī)每發(fā)一個(gè)數(shù)據(jù),從機(jī)就會(huì)回一個(gè)ACK,最后一個(gè)數(shù)據(jù)就好發(fā)NACK,然后主機(jī)發(fā)送STOP信號(hào),但是從機(jī)接收數(shù)據(jù)時(shí)時(shí)怎么知道時(shí)最后一個(gè)數(shù)據(jù),在接收最后一個(gè)數(shù)據(jù)之后就發(fā)NACK
分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復(fù)

使用道具 舉報(bào)

沙發(fā)
ID:624769 發(fā)表于 2022-9-20 14:27 | 只看該作者
理解有誤,標(biāo)準(zhǔn)的IIC通訊來(lái)講。
主機(jī)發(fā)送數(shù)據(jù)給從機(jī),從機(jī)接受成功 發(fā) ACK, 接收失敗發(fā) NAK,  控制權(quán)在主機(jī),主機(jī)發(fā)送停止信號(hào)了,從機(jī)就知道發(fā)送結(jié)束了。

主機(jī)從從機(jī)接受數(shù)據(jù),接收完一個(gè),主機(jī)發(fā)出ACK, 讓從機(jī)發(fā)下一個(gè), 當(dāng)主機(jī)發(fā)出 NAK 就是讓從機(jī)不要發(fā)了,最后一個(gè)了。

當(dāng)然,如果是某些特殊芯片,用的是雙線通訊,協(xié)議時(shí)序類似IIC, 但是從頭到尾沒(méi)說(shuō)自己是IIC協(xié)議的。比如某驅(qū)動(dòng)芯片,他BUF被寫(xiě)滿后發(fā)送 NAK 也是有的,其實(shí)和 IIC 通訊接受失敗的意思類似,都是不要再發(fā)了。再發(fā)就出錯(cuò)了的意思。
回復(fù)

使用道具 舉報(bào)

板凳
ID:401564 發(fā)表于 2022-9-21 01:34 | 只看該作者
IIC應(yīng)答系統(tǒng)非常的簡(jiǎn)單

主機(jī)寫(xiě)入數(shù)據(jù)的時(shí)候,應(yīng)答信號(hào)由從機(jī)給出,表示從機(jī)已經(jīng)正確接收到一個(gè)8位的數(shù)據(jù)
如果從機(jī)沒(méi)有應(yīng)答信號(hào),就表示從機(jī)沒(méi)有正確的接收到數(shù)據(jù),主機(jī)自己決定接下來(lái)要干嘛

主機(jī)讀取數(shù)據(jù)的時(shí)候,應(yīng)答信號(hào)由主機(jī)給出,表示主機(jī)已經(jīng)讀取到一個(gè)8位的數(shù)據(jù),從機(jī)會(huì)在下一個(gè)時(shí)鐘會(huì)繼續(xù)輸出數(shù)據(jù)
如果主機(jī)沒(méi)有給出應(yīng)答符號(hào),就表示不再讀取數(shù)據(jù),從機(jī)不再輸出數(shù)據(jù)

看一下IIC的時(shí)序圖就知道了,如果不會(huì)看時(shí)序圖,那就先學(xué)會(huì)看時(shí)序圖
回復(fù)

使用道具 舉報(bào)

地板
ID:1034262 發(fā)表于 2022-9-21 11:18 | 只看該作者
IIC通訊總是由接收數(shù)據(jù)方(主機(jī)從機(jī)均是)發(fā)送ACK和NACK,區(qū)別是從機(jī)在接收錯(cuò)誤時(shí)才發(fā)NACK,但主機(jī)是可以主動(dòng)發(fā)NACK表示讀取結(jié)束,從機(jī)接收數(shù)據(jù)是不知道結(jié)束的,由主機(jī)發(fā)STOP結(jié)束。
回復(fù)

使用道具 舉報(bào)

5#
ID:123289 發(fā)表于 2022-9-21 16:30 | 只看該作者
用雙方約定的通訊協(xié)議來(lái)確認(rèn)。
例如:約定連續(xù)數(shù)據(jù)發(fā)送間隔時(shí)間為10ms。那么超過(guò)10ms就可以認(rèn)定:上一個(gè)收到的數(shù)據(jù),就是最后一個(gè)。
回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表