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