專利名稱:一種半雙工的rs485端口速率自適應的方法
技術領域:
本發(fā)明涉及應用于RS485接口的速率自適應的領域。
背景技術:
在普通的RS485傳輸過程中,傳輸的波特率需雙方提前設定好,利用RS485接口傳輸的雙方才能正常通信。這種操作方式需要對傳輸雙發(fā)兩個設備都進行波特率設置,對于同一個RS485接口接RS485波特率不同的設備,也需重新設置,而且在對一個設備的RS485 波特率未知的情況下,無法與其進行通信。RS485接口是一種在工業(yè)領域廣泛應用的接口, 具有抗噪聲干擾性好、長的傳輸距離、多站點能力等優(yōu)點。
發(fā)明內容
本發(fā)明的目的在于克服現有技術存在的不足,而提供一種半雙工的RS485端口速率自適應的方法它包含有下述流程
A、RS485速率自適應機制在6個速率檔中輪詢選定一個速率給外部RS485設備,發(fā)送數據;
B、若外部RS485設備有數據幀回復,則依據回復的串口數據幀鎖定BPS,若鎖定的BPS 比規(guī)定的最大波特率還大時,則重新在該速率檔下再次進行BPS鎖定流程,當超過3次都如此,則放棄此次速率自適應,并產生告警中斷給系統(tǒng),若鎖定的BPS在規(guī)定的波特率范圍內,則認為BPS鎖定,開始正常的RS485半雙工傳輸機制;
C、若外部RS485設備在規(guī)定的響應時間內無數據幀回復,則切換到下一個RS485速率檔進行波特率自適應;
D、當在六個速率檔下,外部RS485設備都無數據幀回復,無法鎖定BPS時,則產生告警中斷給系統(tǒng)。本發(fā)明還包括RS485端口速率自適應算法,在傳輸了一串數據幀后,選取其中最窄電平寬度(高電平或者低電平),在依據硬件算法公式,將其還原成RS485通信所用的波特率。本發(fā)明所述流程A中,6個速率檔可自行配置,默認為1200 bps J400 bps、4800 bps、9600bps、19200bps、38400bps。本發(fā)明已經應用到了 IC設計方案中,并經過實際運行測試,效果優(yōu)良,滿足了 RS485的波特率自適應要求。
圖1是本發(fā)明的RS485傳輸波形示意圖。
具體實施例方式下面將對本發(fā)明作詳細的介紹具體實施過程是A、RS485速率自適應機制在6個速率檔中輪詢選定一個速率給外部RS485設備,發(fā)送數據;
B、若外部RS485設備有數據幀回復,則依據回復的串口數據幀鎖定BPS,若鎖定的BPS 比規(guī)定的最大波特率還大時,則重新在該速率檔下再次進行BPS鎖定流程,當超過3次都如此,則放棄此次速率自適應,并產生告警中斷給系統(tǒng),若鎖定的BPS在規(guī)定的波特率范圍內,則認為BPS鎖定,開始正常的RS485半雙工傳輸機制;
C、若外部RS485設備在規(guī)定的響應時間內無數據幀回復,則切換到下一個RS485速率檔進行波特率自適應;
D、當在六個速率檔下,外部RS485設備都無數據幀回復,無法鎖定BPS時,則產生告警中斷給系統(tǒng)。一種半雙工的RS485端口速率自適應的方法,還包括RS485端口速率自適應算法, 在傳輸了一串數據幀后,選取其中最窄電平寬度(高電平或者低電平),在依據硬件算法公式,將其還原成RS485通信所用的波特率。在利用本發(fā)明進行芯片設計開發(fā)過程中,RS485半雙工通信無需進行波特率設定, 而且對外部的RS485設備波特率未知,也可跟其進行RS485通信。
權利要求
1.一種半雙工的RS485端口速率自適應的方法,其特征在于它包含有下述流程A、RS485速率自適應機制在6個速率檔中輪詢選定一個速率給外部RS485設備,發(fā)送數據;B、若外部RS485設備有數據幀回復,則依據回復的串口數據幀鎖定BPS,若鎖定的BPS 比規(guī)定的最大波特率還大時,則重新在該速率檔下再次進行BPS鎖定流程,當超過3次都如此,則放棄此次速率自適應,并產生告警中斷給系統(tǒng),若鎖定的BPS在規(guī)定的波特率范圍內,則認為BPS鎖定,開始正常的RS485半雙工傳輸機制;C、若外部RS485設備在規(guī)定的響應時間內無數據幀回復,則切換到下一個RS485速率檔進行波特率自適應;D、當在六個速率檔下,外部RS485設備都無數據幀回復,無法鎖定BPS時,則產生告警中斷給系統(tǒng)。
2.根據權利要求1所述的一種半雙工的RS485端口速率自適應的方法,還包括RS485 端口速率自適應算法,其特征在于在傳輸了一串數據幀后,選取其中最窄電平寬度(高電平或者低電平),在依據硬件算法公式,將其還原成RS485通信所用的波特率。
3.根據權利要求1所述的一種半雙工的RS485端口速率自適應的方法,其特征在于 所述流程A中,6個速率檔可自行配置,默認為1200 bps,2400 bps,4800 bps,9600bps, 19200bps、38400bps。
全文摘要
一種半雙工的RS485端口速率自適應的方法它包含有下述流程RS485速率自適應機制在6個速率檔中輪詢選定一個速率給外部RS485設備,發(fā)送數據;若外部RS485設備有數據幀回復,則依據回復的串口數據幀鎖定BPS,若鎖定的BPS比規(guī)定的最大波特率還大時,則重新在該速率檔下再次進行BPS鎖定流程,當超過3次都如此,則放棄此次速率自適應,并產生告警中斷給系統(tǒng),若鎖定的BPS在規(guī)定的波特率范圍內,則認為BPS鎖定,開始正常的RS485半雙工傳輸機制;若外部RS485設備在規(guī)定的響應時間內無數據幀回復,則切換到下一個RS485速率檔進行波特率自適應;當在六個速率檔下,外部RS485設備都無數據幀回復,無法鎖定BPS時,則產生告警中斷給系統(tǒng);該發(fā)明已經應用到了IC設計方案中,并經過實際運行測試,效果優(yōu)良,滿足了RS485的波特率自適應要求。
文檔編號H04L5/16GK102387011SQ20111026203
公開日2012年3月21日 申請日期2011年9月6日 優(yōu)先權日2011年9月6日
發(fā)明者張宇 申請人:杭州開鼎科技有限公司