兩路can總線與rs-232串行通信接口的製作方法
2024-02-13 15:07:15
專利名稱:兩路can總線與rs-232串行通信接口的製作方法
技術領域:
本實用新型涉及一種兩路CAN總線與RS-232串行通信接口 ,屬現場總線控 制裝置。
背景技術:
目前,國外美國霍尼韋爾,德國西門子有多個CAN總線與一個RS-232接 口轉換的設備;國內CAN總線接口向RS-232接口轉換設備,都只是一個CAN 總線接口轉換一個RS-232接口的結構。而此產品只能採用總線型網絡結構。國內北京國已開發出一種4個CAN總線接口轉換兩個COM 口的設備,售 價較便宜,但一臺價格最低仍在3600元,無法滿足中低端市場,不利於設備大 面積普及。目前國內未發現由P87c591同時驅動內部can模塊和外部SJA1000,並將內 部can模塊和外部SJAIOOO採集的數據逐個通過RS-232接口與計算機通信。實 現兩路獨立的CAN——RS-232的網關設計的科技文獻報導。 發明內容本實用新型的目的是提供一種兩路CAN總線與RS-232串行通信接口,它是 基於以上兩種設備之間的既可以完成星型網絡結構布線、價格又比較低廉的兩路 CAN總線與RS-232轉換設備。本實用新型是以如下技術方案實現的 一種兩路CAN總線與RS-232串行通信 接口,包括RS-232和兩路CAN總線接口, CAN總線接口包括實現CAN總線數據收發 的CAN總線收發器82C250;實現協議的控制和數據處理的P87c591微處理器和' SJA1000控制器;P87c591微處理器內設驅動內部can模塊、外部連接JA1000控制 器和兩路收發器82C250,並將內部can模塊和外部SJA1000採集的數據逐個通過 RS-232接口與計算機通信,實現兩路獨立的CAN——RS-232的網關。C緒總線數據的收發由CAN總線收發器82C250完成。協議的控制和數據處 理由微控制器P87C591和SJAIOOO完成。RS232接口上的數據則經過電平轉辨變 成TTL電平後輸入到微處理器進行處理。以微處理器P87C591為核心部分,控制 RS232和兩路CAN-BUS的數據通信。CAN控制器實現了 CAN通訊中物理層和數據鏈路層的功能,提供了與微處理器和總線的物理線路接口。本實用新型的積極效果是本設備由於只採用內嵌can控制器的8位單片機 P87c591另外接普通can控制器SJA1000,價格比較低廉,有利於中低端集成商 和施工商採用星型網絡結構布線。可以大大提高CAN總線的使用範圍,方便的 進行低成本的CAN總線星型布線。具有良好的社會效益和經濟效益。可用於自 動化電子領域的傳感器、抗滑系統以及過程控制、機械、紡織等領域中,特別是 高速、低成本的星型布線控制網絡或不同網絡設備互連、網絡的升級和擴展。
以下結合附圖及實施例對本實用新型進一步詳細描述。圖1是本實用新型的電原理框圖;圖2是P87C591與SJA1000的電路原理圖;圖3是初始化主程序圖;圖4是中斷服務程序圖。
具體實施方式
如圖1所示,CAN總線接口硬體部分主要由微處理器、CAN控制器和CAN收 發器構成。CAN控制器實現了CAN通訊中物理層和數據鏈路層的功能,提供了與 微處理器和總線的物理線路接口。CAN總線數據的收發由CAN總線收發器82C250完成。協議的控制和數據處 理由微控制器P87C591和SJA1000完成。RS232接口上的數據則經過電平轉換變 成TTL電平後輸入到微處理器進行處理。電路主要由P87C591、 SJA1000和82C250的接口部分,P87C591和82C250的接 口部分以及RS232/TTL電平轉換3部分構成。以微處理器P87C591為核心部分,控 制RS232和兩路CAN-BUS的數據通信。如圖2所示的P87C591與SJA1000的電路原理圖。87C591第一路CAN通信線路由 P0口連接到SJA1000晶片的AD0—AD7, ALE、 /RD、 /WR分別和SJA1000各口連接, /INT0和SJA1000的/INT連接,使P87C591可以方便的通過中斷方式訪問。SJAIOOO 的MODE引腳接高,TXO、 RX0引腳通過兩個高速光耦6N137後於CAN收發器82C250 連接,光耦部分電路所用的電源釆用小功率電源隔離模塊實現的兩路獨立電源, 實現總線上各CAN節點間的信號隔離,增強CAN系統硬體的抗幹擾能力。82C250的TXD、 RXD引腳分別接收和發送經驅動後的信號,再由CANH、 CANL接至一條 CAN-BUS傳輸介質上。由於模擬信號採樣用AD7715 ,有一個差分模擬輸入口,所以 可以直接接收來自傳感器的弱電平信號並可以輸出連續的數位訊號。SJA1000的 TX1懸空,而RX1需通過電阻分壓得到近似0.5VCC電壓,形成CAN協議需要的邏輯 電平。P87C591第二路CAN通信線路由Pl. 0, Pl. 1引腳通過兩個高速光耦6N137 後與CAN收發器82C250連接,此光耦部分電路所用的電源同第一路CAN通信線 路中光耦部分電源相同都是採用兩路獨立電源,增強CAN系統硬體的抗幹擾能 力。82C250的TXD、 RXD引腳分別接收和發送經驅動後的信號,再由CANH、 CANL 接至另一條CAN-BUS傳輸介質上。RS232/TTL電平轉換電路比較簡單,只要電平轉換晶片MAX232與P87C591上相 應的收發管腳連接正常,即可完成電平轉換,在此不再詳述。軟體設計P87C591的軟體設計由內部CAN控制器和SJAIOOO初始化、發送 和接收等模塊組成,由於P87C591內部的CAN控制器在軟體上向下兼容SJAIOOO, 所以,對P87C591內部CAN的初始化、發送和接收的流程與SJA1000基本類似。如圖3、圖4所示,主程序通過接收中斷優先級完成兩個CAN接口接收數據並 發送到RS232以及把從RS232中收到的數據發往CAN總線的任務,初始化流程圖如 圖3所示,在相應SJA1000中斷服務時內部CAN接收到報文,微處理器響應高優先 級中斷,處理完畢返回。內部CAN接收中斷流程圖,由於向下兼容,所以,SJA1000 接收中斷流程圖類似。在發送模塊為了避免採用中斷發送多路CAN報文而引起系統衝突,所以,採 用查詢狀態標誌發送多路CAN報文,首先查詢P87C591的內部CAN控制器是否有 數據發送,然後再查詢SJA1000CAN控制器是否有數據發送。在接收模塊,存在SJA1000和P87C591的內部CAN同時接收信號的可能性, 根據線路優先級的情況選擇先接收內部CAN報文。但要注意,接收內部CAN信號 的同時,SJA1000會有溢出的可能,如果溢出,則要清空RxFIF0,放棄未完成的 SJA1000報文,重新接接收。優點是使用1個RS-232串口通過查詢的方式訪問兩路CAN線路,並通 過優先級不同使高優先級信息能夠及時接受,增加了 CAN總線通訊的實時性,準確性。CAN總線仲裁機制可以使高優先級的信息能夠被優先及時接受,CAN 總線通訊特有的採用短幀結構,數據傳輸的時間短,受幹擾的機率低;以及CAN 總線協議良好的檢錯措施,保證了數據採集的準確性。
權利要求1、一種兩路CAN總線與RS-232串行通信接口,包括RS-232接口和兩路CAN總線,其特徵是CAN總線包括實現CAN總線數據收發的CAN總線收發器82C250,實現協議的控制和數據處理由微控制器P87c591和SJA1000組成;P87c591微處理器通過內設驅動內部can模塊、外部連接SJA1000控制器和兩路收發器82C250,並將內部can模塊和外部SJA1000採集的數據逐個通過RS-232接口與計算機通信,形成兩路獨立的CAN——RS-232的網關。
專利摘要本實用新型公開了一種兩路CAN總線與RS-232串行通信接口,它是可以完成星型網絡結構布線、價格又比較低廉的兩路CAN總線與RS-232轉換設備。CAN總線接口主要由微處理器、CAN控制器和CAN收發器構成。CAN控制器實現了CAN通訊中物理層和數據鏈路層的功能,提供了與微處理器和總線的物理線路接口。特點是充分利用了P87C591內部CAN控制器和SJA1000很好的CAN控制特性和兼容性。可用於自動化電子領域的傳感器、抗滑系統以及過程控制、機械、紡織等領域中,特別是高速、低成本的星型布線控制網絡或不同網絡設備互連、網絡的升級和擴展。
文檔編號H04L12/66GK201127024SQ20072004245
公開日2008年10月1日 申請日期2007年10月30日 優先權日2007年10月30日
發明者張雪松, 慕東周, 王鴻磊 申請人:徐州工業職業技術學院