|
|||||||||||
| 技術(shù)交流 | 電路欣賞 | 工控天地 | 數(shù)字廣電 | 通信技術(shù) | 電源技術(shù) | 測(cè)控之家 | EMC技術(shù) | ARM技術(shù) | EDA技術(shù) | PCB技術(shù) | 嵌入式系統(tǒng) 驅(qū)動(dòng)編程 | 集成電路 | 器件替換 | 模擬技術(shù) | 新手園地 | 單 片 機(jī) | DSP技術(shù) | MCU技術(shù) | IC 設(shè)計(jì) | IC 產(chǎn)業(yè) | CAN-bus/DeviceNe |
基于Rs485多機(jī)通信(不使用輪詢機(jī)制)? |
| 作者:huazhixing 欄目:通信技術(shù) |
各位 不知哪位兄臺(tái)有比較好的方法,利用RS485網(wǎng)絡(luò)完成實(shí)時(shí)多機(jī)通信? 網(wǎng)絡(luò)采用一主多從方式。 前提是不使用輪詢機(jī)制,具有實(shí)時(shí)性, 實(shí)時(shí)性即是任何一臺(tái)子機(jī)在有需要的時(shí)候可以立即與主機(jī)通信, 當(dāng)然可能存在幾臺(tái)子機(jī)同時(shí)有這個(gè)需要,如何避免沖撞? |
| 2樓: | >>參與討論 |
| 作者: hq_y 于 2006/10/24 15:21:00 發(fā)布:
有這種可能嗎?不如使用canbus |
|
| 3樓: | >>參與討論 |
| 作者: huazhixing 于 2006/10/24 15:26:00 發(fā)布:
方法總多于困難的 方法總多于困難的,群眾的智慧是無限的。 |
|
| 4樓: | >>參與討論 |
| 作者: xwj 于 2006/10/24 23:02:00 發(fā)布:
從機(jī)檢測(cè)一定空閑時(shí)才申請(qǐng),主機(jī)發(fā)令牌 |
|
| 5樓: | >>參與討論 |
| 作者: hob_hob 于 2006/10/25 10:10:00 發(fā)布:
可以保證 時(shí)間段,然后再向主機(jī)發(fā)送,只是這個(gè)延遲時(shí)間有點(diǎn)不好控制, 必須使得多臺(tái)一起發(fā)送的子機(jī)在下一次盡可能不會(huì)再次出現(xiàn)同時(shí)發(fā)送。 你的延時(shí)時(shí)間根據(jù)子機(jī)的地址來規(guī)定,就可解決這個(gè)問題。 你若做過485也請(qǐng)關(guān)心一下我貼子吧。我懷疑硬件有問題。 標(biāo)題:做過RS485多機(jī)通信的請(qǐng)進(jìn)(有圖)---->> |
|
| 6樓: | >>參與討論 |
| 作者: zsmbj 于 2006/10/25 13:31:00 發(fā)布:
還是can的協(xié)議好,多主發(fā)送。 |
|
| 7樓: | >>參與討論 |
| 作者: huazhixing 于 2006/10/27 14:30:00 發(fā)布:
hob_hob 時(shí)間段,然后再向主機(jī)發(fā)送,只是這個(gè)延遲時(shí)間有點(diǎn)不好控制, 必須使得多臺(tái)一起發(fā)送的子機(jī)在下一次盡可能不會(huì)再次出現(xiàn)同時(shí)發(fā)送。 你的延時(shí)時(shí)間根據(jù)子機(jī)的地址來規(guī)定,就可解決這個(gè)問題。 -------------- 是個(gè)解決的方法,只是子機(jī)多一點(diǎn)的問那地址些大一點(diǎn)的不是一每次都要等很久, |
|
| 8樓: | >>參與討論 |
| 作者: huazhixing 于 2006/10/27 14:32:00 發(fā)布:
To: zhanv 1、起始階段,所有機(jī)子包含主機(jī)都處于接收狀態(tài)(監(jiān)聽) 2、當(dāng)有某臺(tái)需要與主機(jī)通信時(shí)發(fā)送數(shù)據(jù)包即可。 3、每個(gè)分機(jī)用1中斷線“監(jiān)視”起始位的低電電平。變低,置總線忙標(biāo)志, 進(jìn)行監(jiān)聽處理。 數(shù)據(jù)包有起始和結(jié)束標(biāo)記字符, 收到結(jié)束符后,清總線忙標(biāo)志。 4、去第2步 ------------------------ 第三點(diǎn),網(wǎng)絡(luò)是利用標(biāo)準(zhǔn)485,就是在改進(jìn)協(xié)議的思路上來完成。 |
|
| 9樓: | >>參與討論 |
| 作者: cooperate 于 2006/10/31 12:16:00 發(fā)布:
我認(rèn)為可行性不大。 首先:485網(wǎng)絡(luò)本身就是立足于簡(jiǎn)單高效.在一主多從的情況下,輪尋是唯一簡(jiǎn)單可靠的選擇。而軟件偵聽雖然理論上可行,但在用單片機(jī)處理控制的情況下、或者節(jié)點(diǎn)比較多的情況下,或者線路干擾比較嚴(yán)重的情況下,可靠性和實(shí)時(shí)性很難做好。不信您可以盡管試試,呵呵! 我的實(shí)際經(jīng)驗(yàn)是:即使是用輪尋控制,如果實(shí)時(shí)性要求很強(qiáng),節(jié)點(diǎn)也不能很多的。我做過的大概是20節(jié)點(diǎn)(假定每秒每個(gè)節(jié)點(diǎn)有一次通訊事件的情況下),撥特率用的是19200。 如果節(jié)點(diǎn)比較多而且實(shí)時(shí)性要求很強(qiáng),我認(rèn)為zsmbj說的can倒是比較可行的方法! --歡迎各位拍磚。 |
|
|
|
| 免費(fèi)注冊(cè)為維庫(kù)電子開發(fā)網(wǎng)會(huì)員,參與電子工程師社區(qū)討論,點(diǎn)此進(jìn)入 |
Copyright © 1998-2006 m.58mhw.cn 浙ICP證030469號(hào) |