




下載本文檔
版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、【Word版本下載可任意編輯】 AT91RM9200的CAN智能節點設計 近年來工業測控系統從傳統的集中測量控制系統轉向網絡化的集散控制系統。隨著現場總線技術高速發展和標準化程度的不斷提高,以現場總線技術為根底的開放型集散測控系統得到廣泛應用。總線是控制器局域網(controller area network,CAN)屬于現場總線范疇,是一種能有效支持分布式控制的串行通信網絡,可將掛接在現場總線上作為網絡節點的智能設備連接成網絡系統,并進一步構成集散測控系統。CAN智能節點位于傳感器和執行機構所在的現場,在集散控制系統中起著承上啟下的作用。一方面,它必須和上位機開展通信,以完成數據交換;另一方
2、面,它根據系統的需要以完成測量與控制的功能。因此,CAN智能節點的設計在工業集散測控系統中有著十分重要的作用。本文將提出一種基于ARM9處理器AT91RM9200和CAN控制器MCP25lO構建的CAN智能節點的設計方案,并介紹了該方案的軟硬件設計及調試方法。 1 硬件設計 CAN智能節點的設計涉及2個方面:需要實現的功能;如何實現CAN通信。因此本文基于AT91RM9200和MCP2510提出的CAN智能節點的設計框架如圖1所示。在此首先介紹主要芯片的特性,然后再說明智能節點的設計原理。 1.1 芯片特性 AT91RM9200是Atmel公司生產的一款ARM9處理器,它是完全圍繞ARM920
3、T ARM Thumb處理器構建的系統。它有豐富的系統與應用外設及標準的接口,從而為低功耗、低成本、高性能的計算機寬范圍應用提供一個單片解決方案。 MCP2510是由美國微芯科技公司(MicrochipTechnology Inc.)生產的一款帶SPI接口的CAN協議控制器,完全支持CAN總線V2.0AB技術規范;能夠發送和接收標準和擴展報文,通信速率可達1 Mbs,同時具備驗收過濾以及報文管理功能;通過SPI接口與MCU開展通信,數據傳輸速率高達5 Mbs;包含3個發送緩沖器和2個接收緩沖器,還具有靈活的中斷管理能力。所有這些特點使得MCU對CAN總線的操作變得非常簡單。PCA82C250是
4、由Philips半導體公司生產的一款CAN收發器,是CAN協議控制器和物理傳輸線路之間的接口。它可以用高 達l Mbs的位速率在2條有差動電壓的總線電纜上傳輸數據。 1.2 設計原理 本文將CAN智能節點需要實現的功能統稱為功能模塊。由于AT91RM9200處理器具有豐富的系統與應用外設及標準的接口,因此根據應用的需要很容易就可實現功能模塊的擴展。本文著重說明AT91RM9200處理器如何實現CAN總線的擴展。 AT91RM9200處理器提供4個SPI接口。其中MOSI(主機輸出從機輸入)、MISO(主機輸入從機輸出)、SPCK(串行時鐘)3個引腳信號由4個SPI接口共用;而4個片選信號NPC
5、SO,NPCSl,NPCS2,NPCS3則用于分別選通4個SPI接口。而CAN控制器MCP2510的SPI接口引腳定義:SI(數據輸入)、SO(數據輸出)、SCK(時鐘輸入)、CS(片選輸入)。該設計將AT91RM9200第二個SPI接口與MCP2510的SPI接口相連(MOSISI,MIS0SO,SPCKSCK,NPCSlCS),從而建立了它們之間通信的橋梁。同時將MCP2510芯片的中斷輸出引腳INT與AT91RM9200芯片的中斷輸入引腳IRQ5相連,從而可將MCP2510芯片產生的中斷(包括發送、接收、報文錯誤、總線活動喚醒、錯誤等中斷)事件通知AT91RM9200處理器,讓其作出相應
6、的處理。 CAN控制器MCP2510可以通過串行數據發送引腳(TXCAN)和串行數據接收引腳(RXCAN)直接連接到CAN收發器PCA82C250。該設計為了實現MC-P2510與PCA82C250之間的電流隔離,在它們之間放置了2個光耦。然而,在協議控制器和收發器之間使用光耦,通常會增加總線節點的循環延遲。光耦6N137的典型傳播延時為60 ns,比較適合傳輸速率小于等于125 Kbs時的中低速應用場合;而在傳輸速率在125 Kbs1 Mbs的高速應用場合中,應考慮使用傳播延時小于40 ns的高速光耦,如HCPL-7101。 CAN收發器PCA82C250通過有差動發送和接收功能的2個總線終
7、端CANH和CANL連接到總線電纜。PCA82C250的輸入引腳Rs通過外接電阻Rext到地,可以選擇3種不同的工作模式。第1種是高速模式,支持的總線速度和或長度;第2種是斜率模式,其輸出轉換速度可故意降低以減少電磁輻射;第3種是準備模式,其在電池供電并對功耗消耗非常低的應用非常適合。該設計將PCA82C250的引腳RS外接阻值為47 k的電阻,從而使它工作在斜率模式,這樣可以使用非屏蔽的總線電纜,降低系統的成本。但總線信號轉換速率被故意減低了,因此該設計只能應用在傳輸速率小于等于125 Kbs時的中低速應用場合,相應光耦選擇6N137即可。 2 軟件設計 CAN智能節點軟件設計主要包括2個方
8、面:CAN通信和CAN節點功能模塊的軟件設計。CAN節點功能模塊軟件的實現因需求而異,在此不做介紹。本文著重介紹CAN通信軟件的設計,它主要由3部分組成:CAN初始化、CAN發送數據、CAN接收數據。 2.1 CAN初始化 由圖2(a)可知,CAN初始化主要包括PIOA端口初始化、SPI初始化、MCP2510初始化、中斷初始化。 現分別介紹如下: (1)PIOA端口初始化。由于AT91RM9200每個引腳可配置為通用功能IO線或與1個或2個外設IO復用的IO線。因此必須通過軟件配置PIOA端口:將PA0,PAl,PA2,PA4引腳分別定義為MISO,MOSI,SPCK,NPCSl,從而完成CA
9、N智能節點SPI接口的定義;將PA3引腳定義為IRQ5,從而完成CAN智能節點中斷信號的定義。 (2)SPI初始化。通過PIOA端口初始化,只是完成SPI接口的引腳定義。為了使SPI接口能夠正常工作,首先配置電源管理控制器(PMC)以使能SPI時鐘;如果允許SPI中斷請求,必須對中斷控制器(AIC)開展配置;通過SPI的模式存放器SPI_MR。指定SPI為主機模式、固定外設選擇、SPI時鐘為MCK、片選信號NPCSl有效;通過SPI的片選1存放器SPI_CSRl指定SPCK時鐘極性、時鐘相位以支持MCP2510的(O,O)或(1,1)的SPI模式,指定SPI接口以8位數據開展傳輸匹配MCP25
10、10的命令及數據格式,指定SPI的串行時鐘波特率以匹配與MCP2510的通信。 (3)MCP2510初始化。在完成PIOA端口、SPI初始化的根底上,即可按照圖2(a)虛線框中的流程開展MCP2510初始化:首先必須使MCP2510進入配置模式;然后對MCP2510相關存放器(位定時配置存放器、接收濾波存放器、接收屏蔽存放器、引腳控制和狀態存放器)開展配置;使MCP2510進入正常模式。根據MCP2510提供的SPI命令集(讀指令、寫指令、請求發送指令、狀態讀指令、位修改指令、復位指令),可以通過對 AT91RM9200的SPI接收數據存放器SPI_RDR,SPI發送數據存放器SPI_TDR,
11、SPI狀態存放器SPI_SR的操作實現相應的函數:McpRdByte(),Mcp-WrByte(),WriteRTS(),McpRdStatus(),BitModify(),McpReset()。軟件通過這些基本的指令函數完成MCP2510相關存放器的配置。 (4)中斷初始化。通過AT91RM9200的中斷控制器(AIC),首先配置IRQ5中斷的優先級為,中斷觸發類型為下降沿觸發;接著將中斷服務程序IRQ5_ISR()的地址設置到中斷向量存放器;使能IRQ5中斷。 2.2 CAN發送數據 當完成CAN的初始化后,即可使用3個發送緩沖器發送報文數據。由圖2(b)可知:在發送數據前,首先通過發送緩
12、沖器N(N=O,1,2)控制存放器TXBNCTRL終止報文發送,并設定發送緩沖器N報文發送的優先級;接著通過發送緩沖器N標準標識符高低位存放器TXBNSIDH,TXBNSIDL設定標準標識符,如果報文采用擴展標識符,還需通過發送緩沖器N擴展標識符高低位存放器TXBNEID8,TXBNEID0設定擴展標識符。當發送緩沖器N相關存放器初始化后,發送任務處于休眠等待狀態。一旦有數據需要發送,即可將需要發送的數據(每次多8 B)存放在發送緩沖器N的數據存放器TXBND7TXlBND0,并且通過送緩沖器N的數據長度存放器TXBNDLC設定每次發送的字節數,通過發送緩沖器N控制存放器TXB-NCTRL啟動
13、數據發送。當數據發送完畢,發送任務又處于休眠等待狀態。 2.3 CAN接收數據 當完成CAN的初始化后,即可使用兩個接收緩沖器接收報文數據。由圖2(c)可知:在接收數據前,首先通過接收緩沖器N(N=0,1)控制存放器RXBNCTRL,設定接收緩沖器的工作模式為接收符合濾波條件的所有帶擴展標識符或標準標識符的有效報文;如果允許MCP2510接收中斷,還需通過中斷使能存放器CANINTE允許接收緩沖器N裝入報文時產生中斷。 當接收緩沖器N相關存放器初始化后,接收任務處于休眠等待狀態。當接收任務通過輪詢或中斷方法發現需要接收數據時,它通過接收緩沖器N標準標識符高低位存放器RXBNSIDH,RXBNS
14、IDL獲取標準標識符;如果收到的報文是擴展幀,可通過RXBNSIDL及接收緩沖器N擴展標識符中間、低位存放器RXBNEID8,RXBNEIDO獲取擴展標識符;通過接收緩沖器N數據長度碼存放器RXBNDLC獲取接收到的數據字節個數,進而通過接收緩沖器N數據存放器RBNDm7RBNDm0獲取接收報文中的數據信息。當數據接收完畢,接收任務又處于休眠等待狀態。 3 軟硬件調試 當CAN智能節點的硬件和軟件設計完畢,需要對其開展軟、硬件的調試以驗證其設計的正確性。CAN智能節點軟、硬件調試按以下步驟依次開展: (1)CAN自發、自收功能調試。只要在CAN初始化過程完成MCP2510相關存放器的配置,將MCP2510設置為環回模式,即可使MCP2510器件內部發送緩沖器和接收緩沖器之間開展報文自發、自收,而無需通過CAN總線。 (2)CAN通信功能調試。按照圖3所示方案開展CAN通信功能的調試。其中USB_CAN適配器采用*吉陽光電科技公司一款帶有USB接口和1路CAN接口的GY8507 USB_CAN總線適配器。通過該適配器,PC可以通過USB接口連接一個標準CAN網絡,從而
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025關于違反合同終止勞動合同賠償金的理由
- 2025綠色食品檢測機構委托合同
- 2025商場攤位租賃合同書范本
- 《傳統工藝鑒賞》課件
- 2025年未注冊的合同主體能否與雇員簽訂勞動合同-
- 2025租房轉租合同協議書
- 2025演藝廳場地租賃合同
- 2025旅游貨車聯營合同
- 2025分銷代理合同模板
- 《汽車服務行業現狀與發展趨勢》課件
- 非上市公司的期權激勵方案兩篇
- 第8課《集字練習》課件-【知識精研】六年級上冊書法北師大版
- DB37-T 5312-2025 《建筑施工安全防護設施技術標準》
- 2025年廣東韶關南雄市衛生健康局下屬事業單位招聘工作人員67人歷年高頻重點模擬試卷提升(共500題附帶答案詳解)
- 2025年度商鋪租賃代理服務合同(含獨家代理權)
- 高壓配電室操作規程(3篇)
- 工程項目不可抗力補充協議
- 實驗室智能化設備的技術發展與趨勢
- 電廠化驗培訓課件
- 2024年漢川市人民醫院高層次衛技人才招聘筆試歷年參考題庫頻考點附帶答案
- (新版)多旋翼無人機超視距駕駛員執照參考試題庫(含答案)
評論
0/150
提交評論