国产毛片a精品毛-国产毛片黄片-国产毛片久久国产-国产毛片久久精品-青娱乐极品在线-青娱乐精品

單片機和MCP2510的CAN總線通信模塊設計

發布時間:2010-12-8 12:07    發布者:techshare
關鍵詞: CAN , MCP2510 , 單片機 , 通信模塊
CAN(Controller Area Network)總線,即控制器局域網。由于具有高性能、高可靠性以及獨特的設計,CAN總線越來越受到人們的重視。德國的Bosch公司最初為汽車監控和控制系統設計了CAN總線,現在,其應用已面向過程工業、機械工業、紡織工業、農用機械、機器人、數控機床、醫療器械及傳感器等領域發展。CAN總線已經形成國際標準,并已經公認為是最有前途的現場總線之一。CAN總線規范已經被國際標準化組織制訂為國際標準ISO11898,并得到眾多半導體器件廠商的支持,推出各種集成有CAN協議的產品。CAN總線系統智能節點是網絡上報文的接收和發送站,一般由單片機和CAN控制器或二者合二為一組成。

MCP25l0是Microchip公司生產的一種獨立的可編程CAN控制器芯片。本文將介紹新型的獨立CAN通信控制器MCP2510,并給出其在CAN總線系統智能節點中的應用實例。

1 MCP2510芯片介紹

MCP25lO是一種帶有SPI接口的CAN控制器,DIP封裝如圖1所示。它支持CAN技術規范V2.OA/B,能夠發送或接收標準的和擴展的信息幀,同時具有接收濾波和信息管理的功能。MCP2510通過SI接口與MCU進行數據傳輸,最高數據傳輸速率可達5 Mbps,MCU可通過MCP2510與CAN總線上的其他MCU單元通信。MCP2510內含3個發送緩沖器和2個接收緩沖器,同時還具有靈活的中斷管理能力,這些特點使得MCU對CAN總線的操作變得非常簡便。









1.1 MCP2510的主要特點

◇支持CANV2.0A/B;

◇具有SPI接口,支持SPI模式0,0和1,1;

◇內含3個發送緩沖器和2個接收緩沖器,可對其優先權進行編程;

◇具有6個接收過濾器,2個接收過濾器屏蔽;

◇具有靈活的中斷管理能力;

◇采用低功耗CMOS工藝技術,其工作電壓范圍為3.0~5.5 V,有效電流為5 mA,維持電流為10μA;

◇工作溫度范圍為-40~十125℃。

1.2 結構及工作原理

MCP2510有PDIP、SOIC和TSSOP三種封裝形式。圖2是MCP2510的內部結構框圖。CAN協議機負責與CAN總線的接口,SPI接口邏輯用于實現同MCU的通信,而寄存、緩沖器組與控制邏輯則用來完成各種方式的設定和操作控制。現結合其工作過程將各部分的功能、原理作一介紹。






(1) 收發操作

MCP251O的發送操作通過3個發送緩沖器來實現。這3個發送緩沖器各占據14字節的SRAM。第1字節是控制寄存器TXBNCTRL,該寄存器用來設定信息發送的條件,且給出了信息的發送狀態;第2~6字節用來存放標準的和擴展的標識符以及仲裁信息;最后8字節則用來存放待發送的數據信息。在進行發送前,必須先對這些寄存器進行初始化。

(2) 中斷管理

MCP25lO有8個中斷源,包括發送中斷、接收中斷、錯誤中斷及總線喚醒中斷等。利用中斷使能寄存器(CANINTE)和中斷屏蔽寄存器(CANINTF)可以方便地實現對各種中斷的有效管理。當有中斷發生時,INT引腳變為低電平并保持在低電平,直到MCU清除中斷為止。

(3) 錯誤檢測

CAN協議具有CRCF錯誤、應答錯誤、形式錯誤、位錯誤和填充錯誤等檢測功能。MCP2510內含接收出錯計數器(REC)和發送出錯計數器(TEC)兩個錯誤計數器。因而對網絡中的任何一個節點來說,都有可能因為錯誤汁數器的數值不同而使其處于錯誤一激活、錯誤一認可和總線-脫離3種狀態之一。

2 MCP2510在智能節點中的應用實例

利用MCP2510和CAN總線收發器TJA1050可構成一個CAN總線分布式測控網絡。系統可包括一個主控制器和多個節點控制器,這種節點控制器可對電動機的電流、電壓及周圍的溫度進行監控,其結構如圖3所示。






這種網絡拓撲結構采用了總線式結構和無源抽頭連接,且結構簡單、成本低,因而系統的可靠性較高。其信息傳輸采用CAN通信協議,通信介質采用雙絞線。由于CAN總線是基于發送報文的編碼,不對CAN控制節點進行編碼,故系統的可擴充性比較好,同時增刪CAN總線上的控制節點不會對系統的其余節點造成任何影響。

節點控制器的MCU可選用具有SPI接口的微處理器,也可采用不帶SPI接口的微處理器。本系統采用的是不帶SPI接口的微處理器AT89C51。AT89C51可通過P1口與CAN控制器的SPI接口直接相連,并用軟件算法來實現SPI接口協議。CAN總線收發器TJA1050則作為MCP25l0與物理總線的接口。如果需要進一步提高系統的抗干擾能力,則可在MCP2510和TJAl050之間再加一個光電隔離器。

智能節點電路原理圖如圖4所示。






2.1 軟件設計

MCP2510正常工作之前,需要進行正確的初始化,包括設置SPI接口的數據傳輸速率、CAN通信的波特率、MCP2510的接收過濾器和屏蔽器以及發送和接收中斷允許標志位等。與SJA1000不同的是,單片機對MCP2510的接收緩沖器和發送緩沖器的操作,必須通過SPI接口用MCP2510內置讀寫命令來完成。其讀、寫命令時序圖如圖5和圖6所示。






本文中MCP2510主要采取中斷模式進行總線數據的接收和發送。整個系統主序提供兩種中斷:定時器中斷和外部中斷。定時器中斷的中斷子程序主要負責處理來自模擬通道AIN0~AIN7的A/D數據,向MCP2510發送“數據發送請求命令”以及發送數據。外部中斷的中斷處理子程序主要包括CAN總線錯誤處理子程序和數據接收子程序。

2.2 軟件主體設計流程

軟件主體設計流程如圖7所示。軟件設計時需要注意以下問題:

①因為MCP2510在初始化完成后處于默認Config-uration模式下,所以就需要在MCP2510的初始化完后將其置為Normal模式,否則MCP2510將一直停留在Configuration模式下,不能正常進行工作。將MCP2510置Normal模式可通過使用MCP2510內置的BitModify(位修改)4指令向CANCTRL控制字寫入一個0字節來實現。

②在對MCP2510進行任何操作之前,都要由微處理器向MCP2510的片選CS輸出一個低電平,使得MCP2510選通。

③在執行MCP2510的“讀”操作時,發送完讀指令及其地址碼之后,仍然需要向MCP2510提供時鐘,以接收“讀”到的數據。可以通過向MCP2510發送一個0字節來實現。

④在對MCP2510完成任意操作后,都要延時一段時間,使其有足夠的時間來準備接收下次操作的命令,防止出現MCP2510“忙”的情況。






3 總 結

CAN總線已被公認為是最有前途的幾種現場總線之一。因其性價比高、實現簡單等突出優點深受越來越多的研發人員的青睞。本文的智能節點可聯結多個集散控制系統,其軟硬件電路的設計方法同樣適合于其他基于CAN總線的分布式控制系統的節點設汁。
本文地址:http://m.qingdxww.cn/thread-44994-1-1.html     【打印本頁】

本站部分文章為轉載或網友發布,目的在于傳遞和分享信息,并不代表本網贊同其觀點和對其真實性負責;文章版權歸原作者及原出處所有,如涉及作品內容、版權和其它問題,我們將根據著作權人的要求,第一時間更正或刪除。
您需要登錄后才可以發表評論 登錄 | 立即注冊

廠商推薦

  • Microchip視頻專區
  • 使用SAM-IoT Wx v2開發板演示AWS IoT Core應用程序
  • 使用Harmony3加速TCP/IP應用的開發培訓教程
  • 集成高級模擬外設的PIC18F-Q71家族介紹培訓教程
  • 探索PIC16F13145 MCU系列——快速概覽
  • 貿澤電子(Mouser)專區

相關在線工具

相關視頻

關于我們  -  服務條款  -  使用指南  -  站點地圖  -  友情鏈接  -  聯系我們
電子工程網 © 版權所有   京ICP備16069177號 | 京公網安備11010502021702
快速回復 返回頂部 返回列表
主站蜘蛛池模板: 青青草在线视频| 一级黄视频| 欧美性色黄大片四虎影视| 四虎在线看| 日韩亚洲视频| 四虎影视在线影院在线观看观看| 中文字幕丰满孑伦| 国产日韩久久久精品影院首页 | 国语自产偷成人精品视频| 息与子在线交尾中文字幕| 亚洲天堂成人| 四虎在线视频免费观看视频| 亚洲第一男人网站| 国产 浪潮AV性色四虎| 我与旗袍老师疯狂床震| 亚洲成a人片在线观看中文动漫| 色亚洲成人| 中文字幕伊人| 最新国语露脸精品国产| 国产亚洲视频在线| 亚洲野狼综合网站| 亚洲国产日韩欧美在线| 亚洲欧美中日韩中文字幕| 又粗又大的机巴好爽7| 久久天堂成人影院| 亚洲国产综合久久久无码色伦| 日韩手机在线视频| 亚洲 自拍 欧美 综合| 一卡二卡三卡四卡无卡在线| 九九在线中文字幕无码| 日本精品中文字幕在线播放 | 日韩精品一二三区| 五月色综合婷婷综合俺来也| 动漫女主被扒开双腿羞辱| 性欧美video| 性人久久久久| 伊人影院综合| 2017最新伦理伦理片67| 日日干日日操日日射| 亚洲无线一二三四区手机| 四虎永久免费地址在线观看|