四虎成人免费视频,国产一级a作爱视频免费观9看,色五月丁香亚洲,亚洲欧美性爱在线视频,1000部黄片免费观看一区,国产亚洲性生活视频播放,三级黄色在线视频网站

現(xiàn)在位置:范文先生網(wǎng)>理工論文>電子通信論文>CAN智能節(jié)點(diǎn)的設(shè)計

CAN智能節(jié)點(diǎn)的設(shè)計

時間:2023-02-20 23:20:18 電子通信論文 我要投稿

CAN智能節(jié)點(diǎn)的設(shè)計

摘要:CAN總線是一種流行的實(shí)時性現(xiàn)場總線,文中提出了一種基于MSP430單片機(jī),并以MCP2510為CAN控制器的智能節(jié)點(diǎn)設(shè)計方案,該方案利用MSP430通過標(biāo)準(zhǔn)SPI接口可實(shí)現(xiàn)對MCP2510的控制,并能夠完全實(shí)現(xiàn)CAN總線規(guī)范。

    關(guān)鍵詞:CAN智能節(jié)點(diǎn);MSP430;MCP2510;數(shù)據(jù)通信

1 引言

CAN總線是控制器局域網(wǎng)(Controller Area Net-work)總線的簡稱,它屬于現(xiàn)場總線范疇,是一種能有效支持分布式控制或?qū)崟r控制的串行通信網(wǎng)絡(luò),它可將掛接在現(xiàn)場總線上作為網(wǎng)絡(luò)節(jié)點(diǎn)的智能設(shè)備連接成網(wǎng)絡(luò)系統(tǒng),(范文先生網(wǎng)www.htc668.com收集整理)并進(jìn)一步構(gòu)成自動化系統(tǒng),從而實(shí)現(xiàn)基本的控制、補(bǔ)償、計算、參數(shù)修改、報警、顯示、監(jiān)控、優(yōu)化及控管一體化的綜合自動化功能。

CAN總線智能節(jié)點(diǎn)在分布式控制系統(tǒng)中起著承上啟下的作用。它位于傳感器和執(zhí)行機(jī)構(gòu)所在的現(xiàn)場,一方面和上位機(jī)(PC或者工控機(jī))進(jìn)行通信,以完成數(shù)據(jù)交換;另一方面又可根據(jù)系統(tǒng)的需要對現(xiàn)場的執(zhí)行機(jī)構(gòu)或者傳感器進(jìn)行控制和數(shù)據(jù)采集。它常常將一些簡單的過程控制程序放在底層模塊中,從而減少了通信量,提高了系統(tǒng)控制的實(shí)時性。因此,智能化模塊設(shè)計在CAN系統(tǒng)中有著十分重要的作用。

本文將給出一種用MSP430單片機(jī)和MCP2510 CAN控制器組成的總線智能節(jié)點(diǎn)的設(shè)計方案(見圖1),該方案中的單片機(jī)和CAN控制器通過標(biāo)準(zhǔn)的SPI接口進(jìn)行通信,因此,該節(jié)點(diǎn)能夠完成對被控器件的數(shù)據(jù)采集上報,并接受上位機(jī)的命令,進(jìn)而進(jìn)行解析以完成對執(zhí)行機(jī)構(gòu)的控制。為了調(diào)試簡單,本方案作了一些改動:一是使MCP2510工作在環(huán)回模式,也就是數(shù)據(jù)由發(fā)送緩存直接發(fā)送到接收緩存,由于不經(jīng)過CAN收發(fā)器和CAN總線,而只是使用了它的一個發(fā)送緩存和一個接收緩存,因而方便了調(diào)試;二是把被控器件的數(shù)據(jù)采集和對執(zhí)行機(jī)構(gòu)的控制部分略去,而這些功能在以后可以方便地添加,這樣,在實(shí)際使用時,只要對程序稍作修改就可應(yīng)用。

2 硬件設(shè)計

本設(shè)計的整個接口模塊主要由兩部分組成:CAN控制器MCP2510和微控制器MSP430。圖2所示是該智能節(jié)點(diǎn)的部分電路硬件原理圖。下面對主要部分功能作一介紹。

2.1 MSP430F1232簡介

MSP430系列微控制器是TI公司推出的功能強(qiáng)大的超低功耗16位微處理器。它集成了豐富的片上外圍資源,因而開發(fā)方式十分簡便,可以用C語言編寫出效率很高的程序。所選MSP430F1232的工作電壓為1.8~3.6V,內(nèi)含8kB FLASH存儲空間。片內(nèi)集成了看門狗定時器(WTD)、基本時鐘模塊、US-ART、10位ADC、和帶有3個捕獲/比較器的16位定時器,因而片上資源十分豐富,完全可以滿足一般的需要,同時減少了設(shè)計的復(fù)雜度。與其它單片機(jī)相比,MSP430的I/O端口功能更強(qiáng),可實(shí)現(xiàn)雙向的輸入、輸出,并可完成一些特殊的功能,如A/D轉(zhuǎn)換、捕獲比較等;另外,它還可以實(shí)現(xiàn)I/O的各種中斷。

本設(shè)計中,MSP430的作用有兩個:一是對執(zhí)行機(jī)構(gòu)的控制以及對輸入模擬量或者開關(guān)量的信號采集;二是利用UART模塊通過SPI模式與MCP2510通信并控制MCP2510以實(shí)現(xiàn)CAN規(guī)范。

    2.2 MCP2510簡介

MCP2510?1?是Microchip公司推出的功能很強(qiáng)的CAN控制器芯片,它支持CAN1.2、2.0A及2.0B規(guī)范;其內(nèi)部結(jié)構(gòu)見圖3所示。該芯片內(nèi)含3個發(fā)送緩存和2個接收緩存,可以對發(fā)送優(yōu)先級進(jìn)行管理,可濾除無用信息,MCP2510有6個可編程濾波器,而且中斷資源十分豐富。最可貴的是,它可以通過標(biāo)準(zhǔn)的SPI接口與微控制器進(jìn)行通信,從而放寬了MCU的選擇范圍?使得所有單片機(jī)都有接入的可能。

MCP2510的主要功能是在MCU的控制下實(shí)現(xiàn)CAN規(guī)范,它內(nèi)部的所有寄存器和控制寄存器都映射到一個地址表上,MCU可以使用相應(yīng)的命令格式通過標(biāo)準(zhǔn)的SPI接口來完成對MCP2510的初始化、工作狀態(tài)的控制以及數(shù)據(jù)的讀寫。此外,MCP2510產(chǎn)生的中斷還可以反饋給MCU來處理。

2.3 系統(tǒng)時鐘

    由于MSP430的時鐘頻率決定著指令周期,因而該時鐘直接影響SPI接口的速率。MSP430F1232有兩個可選的時鐘:一是外部低速32.768kHz的時鐘晶體;二是采用內(nèi)部數(shù)控DCO的可調(diào)頻率。本設(shè)計直接采用它內(nèi)部的數(shù)控DCO作為它的主時鐘MCLK和SMCLK,由于直接工作在800kHz,因而免去了使用晶體。MCP2510采用標(biāo)準(zhǔn)的4MHz晶體。MSP430中USART模塊的CLK可由系統(tǒng)時鐘分頻得到,速率設(shè)定也十分方便。實(shí)際上,MCP2510輸出到總線的速率也可通過設(shè)置內(nèi)部寄存器的控制分頻系數(shù)來調(diào)節(jié)。

此外,由于MCP2510的輸出信號驅(qū)動能力不夠,而且與CAN總線物理接口的要求存在很大的差異,所以,在實(shí)際應(yīng)用中必須使用CAN收發(fā)器(如MCP2551等),它可支持的CAN速率最高可達(dá)1Mbps,而且容錯能力很強(qiáng)。此外,它內(nèi)部還有很強(qiáng)的保護(hù)電路,可以防止總線的其它節(jié)點(diǎn)對它的影響。

3 軟件設(shè)計

在進(jìn)行本系統(tǒng)節(jié)點(diǎn)的軟件設(shè)計前,首先簡要說明一下MCP2510的指令格式,MCP2510的5條指令如表1所列。

表1 MCP2510指令格式

指  令 指令格式

說     明

復(fù)位 1100 0000 使內(nèi)部寄存器復(fù)位,進(jìn)入配置模式 讀取 0000 0011 從寄存器讀取數(shù)據(jù),指令在前,地址隨后 寫入 0000 0010 寫數(shù)據(jù)到寄存器,指令在前,地址和數(shù)據(jù)隨后 發(fā)送請求 1000 0nnn 對發(fā)送緩存發(fā)送信息進(jìn)行初始化 狀態(tài)讀取 1010 0000 讀取常用狀態(tài)寄存器的某些位數(shù)據(jù) 位修改 0000 0101 對豁口的某幾件位修改

在使用時,可以把這些指令直接編寫成函數(shù)形式,這樣可使程序簡練易讀。同時,發(fā)送請求的硬件觸發(fā)只需把TXnRTS置低即可。實(shí)際上,接收緩存收到信息后也能產(chǎn)生硬件觸發(fā),并在TXnRTS引腳產(chǎn)生低電平輸出。

本設(shè)計的主程序流程圖如圖4所示。

上電復(fù)位后,MSP430首先完成自身外圍模塊的初始化,其任務(wù)主要是選擇時鐘模塊中的時鐘、使USART模塊工作于SPI模式、以及對看門狗定時器的配置等;然后對MCP2510進(jìn)行初始化,以對寄存器進(jìn)行設(shè)置。需要注意的是,MCP2510只有在配置模式下才可以對控制參數(shù)進(jìn)行配置,但它在復(fù)位以后就是配置模式。

當(dāng)配置MCP2510到環(huán)回模式后,MSP430將寫數(shù)據(jù)到MCP2510的發(fā)送緩存并控制其發(fā)送,此后,在接收緩存收到數(shù)據(jù)后,INT引腳將產(chǎn)生低電平中斷以通知MSP430,MSP430響應(yīng)中斷后將讀取數(shù)據(jù),并和發(fā)送的數(shù)據(jù)進(jìn)行比較,以驗(yàn)證程序的可行性。需要注意的是,無論是對MCP2510的讀還是寫,都必須使它的CS引腳處于低電平。

在實(shí)際應(yīng)用中,MSP430和MCP2510都可以進(jìn)入睡眠模式,并可以由中斷來激活。整個節(jié)點(diǎn)的主要功能均由中斷子程序來完成,其中的一部分是MSP430自身的中斷(看門狗定時器溢出中斷、SPI接收發(fā)送中斷、ADC中斷等),另一部分是MCP2510引起的中斷,這部分中斷資源十分豐富,包括信息接收發(fā)送中斷、信息錯誤中斷、總線激活中斷等。它產(chǎn)生的所有中斷都能使INT引腳為低電平, 單片機(jī)在檢測到這些中斷后,將通過SPI接口讀。停茫校玻担保皟(nèi)部的中斷標(biāo)志寄存器以判斷是何中斷,然后再進(jìn)行進(jìn)一步處理。

4 結(jié)束語

MSP430和MCP2510的很多實(shí)用功能本文還沒有進(jìn)一步開發(fā),只是作了一個簡單測試系統(tǒng),而且許多實(shí)際應(yīng)用中需要注意的問題也沒有考慮到,需要進(jìn)一步完善。此外,由于MCP2510使用標(biāo)準(zhǔn)的SPI接口與單片機(jī)通信,所以加上它可以不更換單片機(jī),而只需對程序稍作修改即可,因此,采用該方案幾乎可以在任何現(xiàn)有系統(tǒng)上實(shí)現(xiàn)CAN總線功能。



【CAN智能節(jié)點(diǎn)的設(shè)計】相關(guān)文章:

基于82527的CAN總線智能傳感器節(jié)點(diǎn)設(shè)計08-06

基于ADμC812的CAN總線智能節(jié)點(diǎn)的設(shè)計08-06

基于雙口RAM的LonWorks智能通信節(jié)點(diǎn)設(shè)計08-06

Lon總線多點(diǎn)I/O智能節(jié)點(diǎn)的開發(fā)08-06

基于PCI總線的CAN卡的設(shè)計與實(shí)現(xiàn)08-06

CAN中繼器設(shè)計及其應(yīng)用08-06

基于USB的CAN總線適配器設(shè)計08-06

基于CAN總線的多ECU通信平臺設(shè)計08-06

CAN總線與以太網(wǎng)互連系統(tǒng)設(shè)計08-06