您好~
目前我正在設計一個有關RS485多機通訊的工程,這是一個簡單的系統
這系統的MCU適用8051 並且使用 MAX488這個IC將 UART轉換成 全雙工的485
線路則是利用網路線 網路線也是雙絞線 因此覺得這樣可行
連接方式為:
主機 --> 子機1-->子機2-->子機n
如圖:
目前測試出來發現,主機傳送資料給子機 ,子機都可以確實的接收到資料,
但如果由子機回傳資料給主機,主機都無法接收,接一台子機還可以被主機
接收到資料,但接了兩台以上就不行了,我有嘗試過100.歐姆電阻匹配,
或是使用3.3K電阻進行上拉及下拉,都是不行的。
後來 利用示波器測量子機傳出來的訊號,得到以下這張圖
圖片中,第一個示波器的波形是:單一接上一台子機,並傳送資料給
主機的波形,橘 {MOD}與藍 {MOD}為正確的差分信號,可以讓主機正確的接收到
資料。
圖片中第二個示波器波形,為我接上了兩個子機,其中尾端子機有接100
歐姆的終端電阻,接上了之後,並且讓其中一台子機傳出訊號,主機接收不
到了,看到差分訊號便成了這副模樣。
第三個波形是接上了上拉及下拉電阻,波形又夠有問題了= =
而如果子機都沒有傳送訊號時,我發現差分訊號是 一個為高電位
一個為0電位,會是這個影響到的嗎?
我在懷疑是不是其他子機所產生的差分電位影響了正在傳送
的子機的差分訊號。
請教各位高手,我該如何修正這問題,讓其中一台子機傳送
出來的資料可以給主機正確收到呢?
謝謝您
[
本帖最后由 naruto239377 于 2012-2-13 00:14 编辑 ]
此帖出自
小平头技术问答
我成功了
一周热门 更多>