天天看點

485硬體調試心得

RS-485标準接口是單片機系統常用的一種串行總線之一。采用半雙工通信方式,它文成TTL電平轉換為RS-485電平的功能。

以MAX485晶片為例,其結構和引腳都非常簡單,内部含有一個驅動器和接收器。MAX485的封裝有DIP、SO和uMAX三種。

DIP封裝如下

485硬體調試心得

管腳的功能如下:

R0:接收器輸出端,若A比B大200mV,RO為高(接收為高電平);反之則接收為低電平。

RE: 接收器使能端,RE為低時,RO有效(接收有效);RE為高,RO呈高阻狀态。

DE:驅動器使能端,DE=1,DI有效(輸出有效);若DE=0,則DI呈高阻态。

DI:驅動輸入端。DI=0,有A=0,B=1; DI=1,則A=1,B=0。

GND:接地

A:同相接收器輸入和同相驅動器輸出。

B:反相接收器輸入和反相驅動器輸出

VCC:電源端,一般接3.3V(5V)。

以下為典型的485工作電路,平衡電阻Rp通常取100~300歐姆。

485硬體調試心得

RS485一種比較常用的現場總線,運用領域比較廣泛。

曾經寫好的485程式,過段時間貌似好像又不行了,似乎沒有改哪裡。程式莫名其妙被更改了,可能麼 ? 答案是NO。

那麼應該是硬體上有問題,就要進行485功能調試,排除故障。假設硬體設計上沒有問題。

出現過故障:

1、485通信能發不能收?

2、485發送不正常?

3. 485通信亂碼(非波特率問題)

工具:電腦(USB轉序列槽TTL再轉RS485)   闆上(UART口/RS485) 

總的來說一個485程式經過以下幾步調試應該OK。

1、确定闆上UART與電腦通信正常(不經過485,證明MCU和電腦通信正常)。

2、切換各種波特率,UART與電腦通信

3、擦除闆上程式,使用電腦USB-->TTL->RS485->RS485->TTL與電腦進行通信(若通信不正常,則一定是RS485部份存在問題,實作電腦通過兩個485通信)

4、切換各波特率再與電腦進行通信

5、最後編寫相應程式,采集485裝置資料(與裝置通信時,通常可能出現采集資料無響應,這時一般需要考慮兩者的波特率是否比對及是否存線上路幹擾問題)

485通信能發不能收:使能RE/DE始終置1,

485發送:使能RE/DE始終清零。

總結——一個IC器件的硬體調試

1、熟悉IC器件的DataSheet,每個管腳在不同功能是的不同配置,以及不同功能的時序圖,保證軟體邏輯沒有問題。

2、确定各管腳有沒有虛焊、短路、短路,特别是電源和地不能短路。在上電後,確定各管腳輸入沒有問題。可以用無水酒精把闆子擦洗一般,因為在調試過程中某些管腳總會搞進點污穢,引起短路,這個方法可以解決大約40%闆子突然罷工的問題(确認是闆上問題)。

3.在2的基礎上如直接輸出有問題,則很大的機率是IC器件挂了(一般很皮實的)

4.經過接口線外接器件時,外接器件收到有問題,很有可能是接口線問題,一般通說一步一步沿着信号傳輸的方向查找問題。

繼續閱讀