- 相關(guān)推薦
CAN總線擴充器MCP25050
摘要:介紹了MicroChip公司生產(chǎn)的CAN總線I/O擴充器MCP25050的主要特點、內(nèi)部結(jié)構(gòu)、引腳定義及工作原理,給出了用MCP25050擴充CAN節(jié)點的典型應(yīng)用電路原理圖。關(guān)鍵詞:CAN總線 擴充器 MCP25050
1 概述
MicroChip公司生產(chǎn)的CAN(Controller Area Net-work)總線I/O擴充器MCP25050,可用于在CAN總線系統(tǒng)中擴充CAN總線節(jié)點,它可以獨立構(gòu)成一個CAN節(jié)點而不需要再加微控制器。該器件采用14腳小型封裝和低功耗CMOS工藝技術(shù),可在2.7~5.5V電壓范圍內(nèi)正常工作。它能夠支持的CAN2.0B標(biāo)準(zhǔn)位速率可達1Mbit/s;NCP25050內(nèi)含一個可編程的屏蔽器、二個可編程的接收過濾器、4路10位A/D轉(zhuǎn)換器、兩路PWM輸出、三個自動傳送數(shù)據(jù)緩沖區(qū)、兩個接收數(shù)據(jù)緩沖區(qū)及低功耗工作方式;其芯片配置信息可通過CAN總線在線修改,并可工作在1-WireCAN總線工作模式;同時,它還可使系統(tǒng)具有遠(yuǎn)程輸入和輸出功能。因此,在擴充簡單的瘦客戶CAN總線遠(yuǎn)程節(jié)點時,使用它會帶來意想不到的便利。
(范文先生網(wǎng)m.panasonaic.com收集整理)
2 MCP25050內(nèi)部結(jié)構(gòu)
MCP25050內(nèi)部功能圖如圖1所示,引腳圖如圖2所示。從圖中可看出:該器件主要由用戶存儲區(qū)、時鐘產(chǎn)生器、控制邏輯、CAN協(xié)議模塊、A/D轉(zhuǎn)換和PWM模塊組成。以下分別介紹:
控制邏輯部分主要起著把其它幾部分接合在一起的作用,另外它還控制數(shù)據(jù)的傳送和接收以及在上電初始化時對內(nèi)部寄存器的控制操作。
時鐘產(chǎn)生器部分可為其它芯片提供時鐘脈沖。
用戶存儲區(qū)是一塊ROM區(qū),主要是一些控制寄存器,利用它可以先對用戶存儲區(qū)進行編程,以使MCP25050在上電復(fù)位后工作在用戶事先定義的模式。這些寄存器可通過CAN總線來訪問。
A/D部分主要是對輸入的模擬信號自動進行A/D轉(zhuǎn)換。
CAN協(xié)議模塊主要是對要發(fā)送的數(shù)據(jù)進行CAN數(shù)據(jù)包的封裝,或是對接收到的CAN數(shù)據(jù)包進行解包。它有二個彼此獨立的接收緩沖區(qū),且每個接收緩沖區(qū)都有自己的接收過濾器。同時,錯誤管理邏輯也位于此模塊內(nèi)。因此,CAN協(xié)議模塊是MCP25050的核心模塊。
利用GPIO模塊可對八個輸入輸出引腳進行管理,并可通過設(shè)置寄存器來使每個引腳工作在不同的方式。MCP25050各引腳功能說明如表1所列。
表1 MCP2505的引腳功能說明
復(fù)用功能
GP0/AN0 1 雙向IO口 模擬輸入通道0 GP1/AN1 2 雙向IO口 模擬輸入通道1 GP2/AN2/PWM1 3 雙向IO口 模擬輸入通道2/PWM輸出 GP3/AN3/PWM2 4 雙向IO口 模擬輸入通道3/PWM輸出 GP4/VREF- 5 雙向IO 參考電源負(fù)端 GP5/VREF+ 6 雙向IO口 參考電源正端 VSS 7 電源地線 無 OSC1/CLKIN 8 外部晶體輸入 外部時鐘信號輸入 OSC2 9 外部晶體輸出 無 GP6/CLKOUT 10 雙向IO口 時鐘信號輸出 GP7/RST/VPP 11 雙向IO口 復(fù)位端 RXCAN 12 CAN數(shù)據(jù)輸入 無 TXCAN/TXRXCAN 13 CAN數(shù)據(jù)發(fā)送 1-Wire操作下的發(fā)送接收端 VDD 14 電源 無3 工作原理
在MCP25050上電后,系統(tǒng)將首先進入復(fù)位操作模式,此時它將會禁止接收和發(fā)送數(shù)據(jù),同時,A/D轉(zhuǎn)換器和PWM也被禁止;而后MCP25050進行自初始化,自初始化主要通過把用戶存儲區(qū)的數(shù)據(jù)讀入SRAM中實現(xiàn);當(dāng)自初始化完成后,MCP25050將進入正常工作模式,以準(zhǔn)備接收或發(fā)送數(shù)據(jù),這時A/D轉(zhuǎn)換器和PWM都可以正常工作;接下來MCP25050會在CAN總線上發(fā)一個“在線”信號給網(wǎng)絡(luò),以通知整個網(wǎng)絡(luò)存在這個站點。
MCP25050通過一個通用屏蔽器、二個接收過濾器及二個接收緩沖區(qū)來確定接收到的數(shù)據(jù)是否被接受。MCP25050有三種數(shù)據(jù)類型:信息請求數(shù)據(jù)、輸出數(shù)據(jù)和輸入數(shù)據(jù)。其中信息請求數(shù)據(jù)是指MCP25050接收到的數(shù)據(jù),輸出數(shù)據(jù)則是指MCP25050回應(yīng)信息請求而發(fā)出的數(shù)據(jù),而輸入數(shù)據(jù)指的是MCP25050接收到的可用來修改寄存器的數(shù)據(jù)。
MCP25050還具有自動傳送功能,它有三個彼此獨立的發(fā)送數(shù)據(jù)ID:TXID0、TXID1和TXID2。其中TXID0用來發(fā)送“在線”信號,TXID1用來發(fā)送“命令確認(rèn)”信號、接收緩沖區(qū)溢出信號和出錯信息,TXID2則用來傳送A/D轉(zhuǎn)換結(jié)果。
4 實際應(yīng)用
在傳統(tǒng)的CAN總線系統(tǒng)中,如果需要再增加一個節(jié)點,一般的做法是用一片MCU?微控制器?和一片CAN總線控制器?如SJA1000、MCP2510等?為主來構(gòu)成。這樣雖然節(jié)點的功能很強,但在有些應(yīng)用中是完全不必要的,如在瘦客戶的CAN應(yīng)用中,通常不需要節(jié)點有多少功能,只要求節(jié)點能夠采集數(shù)據(jù)即可,此時,MCU+CAN控制器的方式就顯得有些過于復(fù)雜和昂貴;但如果采用CAN總線擴充器MCP25050來組建,則不但可簡化系統(tǒng)設(shè)計,也可減少設(shè)計成本,因為這種方案只需要一片MCP25050和一片CAN總線驅(qū)動器即可,而完全不需要MCU和CAN總線控制器。其常用電路如圖3所示。
應(yīng)用MCP25050擴充CAN總線節(jié)點是一個既方便又經(jīng)濟的辦法。在現(xiàn)存或新的CAN總線系統(tǒng)中使用它會帶來很多便利,其最大的好處是不需要MCU。筆者在設(shè)計監(jiān)測多點溫度的CAN系統(tǒng)中成功地使用了這一方案。實踐證明,MCP25050可靠性高,運行穩(wěn)定。
【CAN總線擴充器MCP25050】相關(guān)文章:
光纖CAN總線自愈環(huán)網(wǎng)的研究08-06
CAN總線位定時參數(shù)的確定08-06
CAN總線中位定時的設(shè)定方法08-06
CAN總線控制器與DSP的接口08-06
基于PCI總線的CAN卡的設(shè)計與實現(xiàn)08-06
CAN總線中位定時的設(shè)定方法08-06