片機原理及應(yīng)用多機通信

片機原理及應(yīng)用多機通信

ID:40656286

大?。?57.26 KB

頁數(shù):29頁

時間:2019-08-05

片機原理及應(yīng)用多機通信_第1頁
片機原理及應(yīng)用多機通信_第2頁
片機原理及應(yīng)用多機通信_第3頁
片機原理及應(yīng)用多機通信_第4頁
片機原理及應(yīng)用多機通信_第5頁
資源描述:

《片機原理及應(yīng)用多機通信》由會員上傳分享,免費在線閱讀,更多相關(guān)內(nèi)容在教育資源-天天文庫。

1、單片機原理及應(yīng)用北京化工大學信息科學與技術(shù)學院主講教師:林偉國E-mail:linwg@mail.buct.edu,cn多機通信MCS-51系列單片機的串行通訊方式2和方式3是有多機通訊功能,可構(gòu)成多種分布式通訊系統(tǒng)。一個全雙工主從方式多機通訊系統(tǒng)的原理框圖如下:TXDRXD主機0#機1#機N#機理論上來說,一臺主機可以接256臺從機。但實際上做不到,因為其受限于串口的驅(qū)動能力。而且,上述這種接法其通訊距離<=1m。、為了實現(xiàn)遠距離通信,也為了增加驅(qū)動能力(帶負載能力),一般采用RS-485總線進行串行通訊,這時要變成半雙工通訊。不同的RS-485總線驅(qū)動芯

2、片的帶負載能力不同,有的可以帶32個從機,也有的可以帶64個從機,帶128個從機等等。上圖中,主機可以與任何一臺從機實現(xiàn)通訊,從機之間的通訊必須通過主機轉(zhuǎn)發(fā)。多機通訊的基本原理在多機通訊系統(tǒng)中,為了保證主機與從機之間能可靠通訊,串行通訊必須是具備識別能力的。在MCS-51單片機中,其串行通訊控制寄存器SCON中設(shè)有多機通訊選擇位SM2。當主機的SM2無要求時,SM0、SM1=10或11時,其工作于方式2或方式3,即多機通訊方式。主機通過對TB8的設(shè)置以區(qū)別發(fā)送的是地址幀(TB8=1)還是數(shù)據(jù)幀(TB8=0)。多機通訊的基本原理從機對接收到的RB8進行識別:當

3、從機的SM2=1時,如果接收到的RB8=1,則確認為呼叫地址幀,將該幀內(nèi)容裝入SBUF中,并置位RI,向CPU請求中斷,進行地址比較。如果RB8=0則為數(shù)據(jù)幀,將不予以理睬,接收的信息被丟棄。當從機的SM2=0時,則無論是地址幀還是數(shù)據(jù)幀均接手,并置位RI=1,向CPU請求中斷,將該幀內(nèi)容裝入SBUF中。多機通訊的過程1、置全部從機的SM2=1,處于只接收地址幀的狀態(tài);2、主機首先發(fā)送呼叫地址幀信息,將其中的TB8設(shè)置為1,以表示發(fā)送的是呼叫地址幀;3、所有從機接收到呼叫地址幀后,各自將接收到的主機呼叫的地址幀與自身的地址相比較;若比較結(jié)果相等,則為需要尋址

4、的從機,清除SM2,準備接收主機發(fā)送的數(shù)據(jù)幀,直到全部的數(shù)據(jù)傳輸完畢;多機通訊的過程4、若比較不相等,則為非尋址的從機,仍然維持SM2=1不變,對其后發(fā)送過來的數(shù)據(jù)不予以理睬,即接收到的數(shù)據(jù)幀內(nèi)容不裝入SUBF中,不置位RI=0,不會產(chǎn)生中斷請求指導正確的尋址為止。5、主機發(fā)送完呼叫地址幀之后,即?發(fā)送一連串數(shù)據(jù)幀,其中的TB8=0,以示為數(shù)據(jù)幀。6、當主機尋呼其他從機時,通過分析得知在尋呼其他從機后,維持其SM2=1,對其后主機發(fā)送的數(shù)據(jù)不予以理睬。多機通訊協(xié)議1、主從多機通訊系統(tǒng),允許配置255臺從機,各從機的地址00H~FEH.2、約定地址FFH為全部

5、從機的控制命令,命令各從機恢復SM2=1狀態(tài),準備接收主機的地址呼叫。3、主機和從機的聯(lián)絡(luò)過程約定:主機首先發(fā)送地址呼叫幀,被尋址的從機回送本機地址給主機,經(jīng)驗證地址相等后再向被尋址的從機發(fā)送命令字,被尋址的從機根據(jù)命令字要求回送本機數(shù)據(jù)及狀態(tài)多機通訊協(xié)議4、約定主機發(fā)送的命令字為:01H:要求從機發(fā)送數(shù)據(jù)塊其他:非法命令5、從機的數(shù)據(jù)格式約定:D7D6D5D4D3D2D1D0ERRCON1CON20XXXX定義:若ERR=1,從機接收到非法命令,0為正常若CON1=1,從機狀態(tài)1異常,0為正常若CON2=1,從機狀態(tài)2異常,0為正常D7D6D5D4D3D2

6、D1D0Xxxxxxxx高4位數(shù)據(jù)主機程序:呼叫從機號在60H中數(shù)據(jù)塊首地址為30H波特率為2400H禁止串口中斷FLAGBIT00HSLADDBYTE60HORG0000HAJMPMAINORG0030HMAIN:MOVSP,#70HMOVTMOD,#20H;T1方式2,8位自動重裝載MOVPCON,#80HMOVSCON,#D8H;SM0SM1SM2RENTB8RB8TIRI;11011000;SM2對主機沒有要求MOVTH1,#0F3HMOVTL1,#0F3H;波特率為2400HCLRFLAGSETBTR1NEXTLP:MOVR0,#30HMOVR6,

7、#10HLOOP:MOVR7,#02HCALLAddRJBCFLAG,NEXTSCALLRDDATAAJMPNEXTANEXTS:INCR0INCR0NEXTA:INCSLADDDJNZR6,LOOPAJMPNEXTLPADDR:MOVA,SLADD;取從機號MOVSBUF,A;發(fā)送從機號JNBTI,$;等待發(fā)送結(jié)束CLRTI;清TI標志JNBRI,$;等待從機回答本機地址CLRRI;清RI標志MOVA,SUBF;讀取從機回答地址CJNEA,SLADD,RETN;地址不符,返回CLRTB8;地址相等,清TB8準備發(fā)送命令RETRETN:SETBFLAGRET

8、RDDATA:MOVA,#01HMOVSBUF,AJ

當前文檔最多預(yù)覽五頁,下載文檔查看全文

此文檔下載收益歸作者所有

當前文檔最多預(yù)覽五頁,下載文檔查看全文
溫馨提示:
1. 部分包含數(shù)學公式或PPT動畫的文件,查看預(yù)覽時可能會顯示錯亂或異常,文件下載后無此問題,請放心下載。
2. 本文檔由用戶上傳,版權(quán)歸屬用戶,天天文庫負責整理代發(fā)布。如果您對本文檔版權(quán)有爭議請及時聯(lián)系客服。
3. 下載前請仔細閱讀文檔內(nèi)容,確認文檔內(nèi)容符合您的需求后進行下載,若出現(xiàn)內(nèi)容與標題不符可向本站投訴處理。
4. 下載文檔時可能由于網(wǎng)絡(luò)波動等原因無法下載或下載錯誤,付費完成后未能成功下載的用戶請聯(lián)系客服處理。