|
|||||||||||
| 技術交流 | 電路欣賞 | 工控天地 | 數(shù)字廣電 | 通信技術 | 電源技術 | 測控之家 | EMC技術 | ARM技術 | EDA技術 | PCB技術 | 嵌入式系統(tǒng) 驅(qū)動編程 | 集成電路 | 器件替換 | 模擬技術 | 新手園地 | 單 片 機 | DSP技術 | MCU技術 | IC 設計 | IC 產(chǎn)業(yè) | CAN-bus/DeviceNe |
RS485單片機多機通信問題求教! |
| 作者:chenlung 欄目:技術交流 |
8051單片機多機RS485通信。一主三從機。電平轉(zhuǎn)換為MAX485芯片,按標準接法 接通電路,主機發(fā)送的信號通信后,只有一個從機接收(從單片機串口接收腳上看)接收的碼是正確的,其它兩個從面接收的碼是反相的。而進入各從機MAX485的信號都是一樣的。可能是MAX485信號轉(zhuǎn)換上出現(xiàn)問題,但不知怎么回事,望有高手回復。多謝! |
| 2樓: | >>參與討論 |
| 作者: jiangyu 于 2005/12/14 11:22:00 發(fā)布:
把那兩個不正確的的A B兩根線交換一下連結(jié)試驗一下 |
|
| 3樓: | >>參與討論 |
| 作者: chenlung 于 2005/12/14 11:37:00 發(fā)布:
re 這個問題我試過,如果把主機經(jīng)MAX485發(fā)送的兩根線換下后,三個從機接收的信號都正確(為主機發(fā)送信號的反相信號)。如果只換不正確的從機信號的A,B端,則接收信號就成了我需要的信號。但從機的三塊電路板為制成電路板,沒有可能接錯線,F(xiàn)在我要知道的是,為什么標準的接法會產(chǎn)生不同的接收? |
|
| 4樓: | >>參與討論 |
| 作者: javie 于 2005/12/14 11:57:00 發(fā)布:
等待chunyang中。。。 |
|
| 5樓: | >>參與討論 |
| 作者: nil988 于 2005/12/14 12:05:00 發(fā)布:
地址對嗎 |
|
| 6樓: | >>參與討論 |
| 作者: chenlung 于 2005/12/14 13:23:00 發(fā)布:
。。 根本沒到那一步,經(jīng)MAX485轉(zhuǎn)換后信號就反相了。 |
|
| 7樓: | >>參與討論 |
| 作者: liudewei 于 2005/12/14 13:41:00 發(fā)布:
請驗證一下線路 斷電,量所有485芯片的A或B腳是否短路,注意AB腳因為匹配電阻的引入電阻本身比較小。 |
|
| 8樓: | >>參與討論 |
| 作者: weihualong 于 2005/12/14 21:07:00 發(fā)布:
MAX485輸入反向 MAX485輸出反向問題我也經(jīng)常遇到,至今仍然沒找到解決辦法,但大多數(shù)反了向的數(shù)據(jù)還是能正常接收。我認為是芯片的問題,你將好的那塊芯片換到反向的那2塊上面,也是正確的。 |
|
| 9樓: | >>參與討論 |
| 作者: gztong 于 2005/12/15 11:33:00 發(fā)布:
程序 有沒有沒寫錯程序。 |
|
| 10樓: | >>參與討論 |
| 作者: chunyang 于 2005/12/15 12:03:00 發(fā)布:
485是靠AB間的壓差相對值決定邏輯狀態(tài)的 首先要確認AB連接正確,A-A,B-B,其次保證總線上無其它影響線路電平的因素,總線偏置只能在一點(一般是主機處)進行,最后注意收發(fā)控制,線路上不準許多點同時發(fā)送,這要靠協(xié)議來保證。 排錯時可用逐點排除法,現(xiàn)保證嚴格按我上面所講的實現(xiàn)線路和軟件,然后僅使用一主一從,正確后再加掛一新的節(jié)點,直至找出錯誤。不過估計是你的電路設計本身有誤。 |
|
| 11樓: | >>參與討論 |
| 作者: chenlung 于 2005/12/16 10:50:00 發(fā)布:
多謝各位,問題解決。 在A線上加720的上拉,B線上加720的下拉電阻。將不發(fā)碼段拉離0電位。 |
|
| 12樓: | >>參與討論 |
| 作者: WFSYWYC 于 2006/3/9 17:15:00 發(fā)布:
什么道理? "在A線上加720的上拉,B線上加720的下拉電阻"什么道理? |
|
| 13樓: | >>參與討論 |
| 作者: infree 于 2006/3/9 21:03:00 發(fā)布:
上下拉電阻就是為了保證空閑時處于“1”狀態(tài) 不過我自己還是有些疑問: 1.這個解決方法好像不能和樓主前面描述的現(xiàn)象完全對應。 2.如果我沒記錯的話,MAX485芯片本身就有這些上,下拉電阻。 |
|
| 14樓: | >>參與討論 |
| 作者: chunyang 于 2006/3/10 10:19:00 發(fā)布:
建議樓上看看MAX485的器件手冊 此“拉”非彼“拉”。 |
|
| 15樓: | >>參與討論 |
| 作者: infree 于 2006/3/10 13:45:00 發(fā)布:
看來我還是記錯了 MAX485器件內(nèi)應是沒有對A,B線的上,下拉的。比較長時間沒做硬件的東西,真的忘了,呵呵,不好意思,見笑了。 另:我第一個問題還是沒搞清楚,怎么會有一個接收機在AB線顛倒前和顛倒后都接收正確呢?加了這些電阻只會將空閑狀態(tài)的電平箝位,怎么會有將信號反向的功能呵?(“只有一個從機接收(從單片機串口接收腳上看)接收的碼是正確的,其它兩個從面接收的碼是反相的!保,還望高人示下! |
|
| 16樓: | >>參與討論 |
| 作者: wfsywyc 于 2006/3/11 8:48:00 發(fā)布:
我用一個主485帶10個分485,怎么總是有幾個得不到正確數(shù)據(jù)??? 我用一個主485帶10個分485,怎么每次發(fā)送總是有幾個得不到正確數(shù)據(jù)??? |
|
| 17樓: | >>參與討論 |
| 作者: lindeshengldsh2008@163.com 于 2009/3/26 21:49:25 發(fā)布:
我用8052單片機多機RS485通信,一主三從,電平轉(zhuǎn)換為MAX485芯片,想請教各位相關的源程序 |
|
|
|
| 免費注冊為維庫電子開發(fā)網(wǎng)會員,參與電子工程師社區(qū)討論,點此進入 |
Copyright © 1998-2006 m.58mhw.cn 浙ICP證030469號 |