日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程资源 > 编程问答 >内容正文

编程问答

DSA通讯协议

發(fā)布時(shí)間:2023/12/10 编程问答 52 豆豆
生活随笔 收集整理的這篇文章主要介紹了 DSA通讯协议 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

1.DSA-接口規(guī)范

DSA總線是一個(gè)異步,雙向的,內(nèi)部設(shè)計(jì)用于在一組兩個(gè)微處理器之間的通信總線。

它有三個(gè)雙向線:

DATA -啟動(dòng)同步和數(shù)據(jù)傳輸

STB -數(shù)據(jù)選通(當(dāng)STB為低電平時(shí)數(shù)據(jù)是有效的)

ACK -啟動(dòng)同步,數(shù)據(jù)傳輸,確認(rèn)及通信應(yīng)答?

?

2.通訊說(shuō)明

每個(gè)數(shù)據(jù)通信包括三個(gè)階段:

開(kāi)始同步 同步發(fā)射器和接收器數(shù)據(jù)傳輸

數(shù)據(jù)傳輸 通過(guò)數(shù)據(jù)選通和應(yīng)答信號(hào)傳輸所有的數(shù)據(jù)位。

通信應(yīng)答 接收器可以讓發(fā)射機(jī)知道通信是否異常,如果通信沒(méi)有出現(xiàn)錯(cuò)誤,有 可能重復(fù)它,直到它是確定

?

處理器被稱為發(fā)射器,當(dāng)它想傳輸數(shù)據(jù)。它從一個(gè)同步階段開(kāi)始,傳輸數(shù)據(jù),并要求收到最后的通信應(yīng)答。

其他處理器自動(dòng)成為接收器。

?

2.1同步啟動(dòng)?

發(fā)射器拉低數(shù)據(jù)線,讓對(duì)方知道它要發(fā)送一些數(shù)據(jù)。然后它開(kāi)始等待,直到ACK線被拉低接收到一個(gè)來(lái)自接收方確認(rèn)信號(hào),確認(rèn)接受傳輸請(qǐng)求和準(zhǔn)備好接受數(shù)據(jù)。

然后發(fā)送方拉高DATA信號(hào),等待ACK線被拉高,如果ACK被拉高則表示同步結(jié)束,發(fā)送方和接收方都準(zhǔn)備好了數(shù)據(jù)傳輸。

?

有可能兩個(gè)處理器要在同時(shí)傳輸他們的數(shù)據(jù),同時(shí)拉低DATA線然后等待ACK線上的應(yīng)答信號(hào)。因此,有必要在同步開(kāi)始的時(shí)候在軟件中添加超時(shí)發(fā)送。超過(guò)超時(shí)時(shí)間時(shí),伺服處理器,伺服處理器拉高DATA線,然后檢測(cè)用戶處理器是否有發(fā)起同步信號(hào)。如果是,他先接受數(shù)據(jù),然后伺服處理器可以再拉低數(shù)據(jù)線再次傳輸數(shù)據(jù)。

伺服處理器不能通過(guò)同步階段當(dāng)它已經(jīng)有新數(shù)據(jù)要發(fā)送的時(shí)候,舊的數(shù)據(jù)將被覆蓋。

?

2.2數(shù)據(jù)傳輸

在這部分的通信的所有數(shù)據(jù)位都從發(fā)射機(jī)傳送到接收機(jī),根據(jù)位變發(fā)射機(jī)設(shè)置數(shù)據(jù)被發(fā)送。當(dāng)數(shù)據(jù)線變穩(wěn)定后,發(fā)射機(jī)拉低STB線來(lái)告訴接收機(jī)在數(shù)據(jù)線上的信息是有效的。當(dāng)STB線的低電平狀態(tài)被是識(shí)別后,接收器開(kāi)始讀DATA先的信息。然后接收機(jī)拉低ACK線來(lái)告訴發(fā)送機(jī)數(shù)據(jù)已經(jīng)被讀好了。當(dāng)發(fā)送方檢測(cè)到ACK變低后,將STB腳拉高,當(dāng)接收方檢測(cè)到STB變高后,將ACK拉高,完整的1bit的數(shù)據(jù)就結(jié)束了。

如果伺服處理器不能在(TTRF)傳輸16位數(shù)據(jù),它拉高DATA線和STB線,并拉低ACK線進(jìn)入通信階段。

?

2.3通信應(yīng)答?

總線上的尖峰可能會(huì)導(dǎo)致發(fā)射器和接收器出來(lái)的同步。此時(shí)接收器應(yīng)該已經(jīng)收到指定的位計(jì)數(shù)準(zhǔn)確,如果接收方的位計(jì)數(shù)器不等于這個(gè)指定的計(jì)數(shù)時(shí),接收器清除數(shù)據(jù)線,否則此線保持高,在此之后,接收器清除STB線。這意味著對(duì)于發(fā)射機(jī),該比較結(jié)果是在DATA線上有效。發(fā)射器讀取數(shù)據(jù)線,然后設(shè)置ACK線高。這意味著為接收器的數(shù)據(jù)線是由發(fā)送器讀取。當(dāng)接收器識(shí)別到的ACK線為高時(shí),它設(shè)置兩者的DATA和STB線高。現(xiàn)在,所有的通信都完成,在DSA-總線再次空閑。如果通信沒(méi)有發(fā)生錯(cuò)誤,變送器應(yīng)重復(fù)(僅一次)進(jìn)行最后一次通信開(kāi)始同步階段

如果接收方不在范圍內(nèi)TCOM通信應(yīng)答階段作出適當(dāng)?shù)姆磻?yīng),伺服處理器(=變送器)將此解釋為一個(gè)通信錯(cuò)誤,并設(shè)置高的所有行。

?

在使用該通訊協(xié)議的時(shí)候,需要注意一下幾點(diǎn):?

1.在總線空閑的時(shí)候,用戶處理器和伺服處理器都處于讀數(shù)據(jù)的狀態(tài)。當(dāng)某一方需要發(fā)送數(shù)據(jù)的時(shí)候,再把它設(shè)置為寫狀態(tài)。

2.在同步或是數(shù)據(jù)傳輸?shù)碾A段,如果超時(shí)沒(méi)有接到相應(yīng)的應(yīng)答,發(fā)送方應(yīng)將狀態(tài)轉(zhuǎn)為讀狀態(tài)。主要是為了處理雙方同時(shí)需要傳輸數(shù)據(jù)

3.DSA總線是一個(gè)異步,雙向的,內(nèi)部設(shè)計(jì)用于在一組兩個(gè)微處理器之間的通信總線。 4.每傳輸一個(gè)比特位都需要再同步。且每次只能傳輸一個(gè)比特位。

?

?

轉(zhuǎn)載于:https://www.cnblogs.com/WenLee/p/4019495.html

總結(jié)

以上是生活随笔為你收集整理的DSA通讯协议的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。