| 單片機(jī)RS-485多機(jī)通訊的實(shí)現(xiàn) |
尹 紅 唐 煜
摘 要 本文介紹一種能利用RS-485電氣特性和簡單的結(jié)構(gòu)方式,采用自定義串行通信協(xié)議,實(shí)現(xiàn)單片機(jī)RS-485多機(jī)通訊的方法和技巧。
關(guān)鍵詞 單片機(jī),RS-485總線,總線沖突,串行通信
1 簡介
RS-485串行總線接口標(biāo)準(zhǔn)以差分平衡方式傳輸信號,具有很強(qiáng)的抗共模干擾的能力,允許一對雙絞線上一個(gè)發(fā)送器驅(qū)動多個(gè)負(fù)載設(shè)備。工業(yè)現(xiàn)場控制系統(tǒng)中一般都采用該總線標(biāo)準(zhǔn)進(jìn)行數(shù)據(jù)傳輸,而且一般采用RS-485串行總線接口標(biāo)準(zhǔn)的系統(tǒng)都使用8044芯片作為通信控制器或各分機(jī)的CPU。8044芯片內(nèi)部集成了SDLC,HDLC等通信協(xié)議,并且集成了相應(yīng)的硬件電路,通過硬件電路和標(biāo)準(zhǔn)協(xié)議的配合,使系統(tǒng)的通訊準(zhǔn)確、可靠、快速。8044在市場上日漸稀少,雖然有8344可替代,但幾百元的價(jià)位與普通單片機(jī)幾元至幾十元的價(jià)位相差甚遠(yuǎn),用戶在開發(fā)一般的單片機(jī)應(yīng)用系統(tǒng)時(shí),都希望能用簡單的電路和簡單的通信協(xié)議完成數(shù)據(jù)交換。譬如:利用單片機(jī)本身所提供的簡單串行接口,加上總線驅(qū)動器如SN75176等組合成簡單的RS-485通訊網(wǎng)絡(luò)。本文所述的方法已成功地應(yīng)用于工程項(xiàng)目,一臺主機(jī)與60臺從機(jī)通訊,通訊波特率達(dá)64KBPS。
2 總線驅(qū)動器芯片SN75176
常用的RS-485總線驅(qū)動芯片有SN75174,SN75175,SN75176。SN75176芯片有一個(gè)發(fā)送器和一個(gè)接收器,非常適合作為RS-485總線驅(qū)動芯片。
SN75176及其邏輯如圖1所示。

| 圖1 SN75176芯片及其邏輯關(guān)系 3 RS-485方式構(gòu)成的多機(jī)通信原理 |

| 圖2 采用RS-485構(gòu)成的多機(jī)通訊原理框圖 在總線末端接一個(gè)匹配電阻,吸收總線上的反射信號,保證正常傳輸信號干凈、無毛刺。匹配電阻的取值應(yīng)該與總線的特性阻抗相當(dāng)。 |






