RS-485/RS-422接口為何在停止通信時接收器仍有數據輸出? 作者: 時間:2016-12-19 來源:網絡 加入技術交流群 掃碼加入和技術大咖面對面交流海量資料庫查詢 收藏 由于RS-485/RS-422在發送數據完成后,要求所有的發送使能控制信號關閉且保持接收使能有效,此時,總線驅動器進入高阻狀態且接收器能夠監測總線上是否有新的通信數據。但是由于此時總線處于無源驅動狀態(若總線有終端匹配電阻時,A和B線的差分電平為0,接收器的輸出不確定,且對AB線上的差分信號的變化很敏感;若無終端匹配,則總線處于高阻態,接收器的輸出不確定),容易受到外界的噪聲干擾。當噪聲電壓超過輸入信號門限時(典型值±200mV),接收器將輸出數據,導致對應的UART接收無效的數據,使緊接著的正常通訊出錯;另外一種情況可能發生在打開/關閉發送使能控制的瞬間,使接收器輸出信號,也會導致UART錯誤地接收。解決方法:1)在通訊總線上采用同相輸入端上拉(A線)、反相輸入端下拉(B線)的方法對總線進行鉗位,保證接收器輸出為固定的“1”電平;2)采用內置防故障模式的MAX308x系列的接口產品替換該接口電路;3)通過軟件方式消除,即在通信數據包內增加2-5個起始同步字節,只有在滿足同步頭后才開始真正的數據通訊。
評論