技術頻道

娓娓工業(yè)
您現(xiàn)在的位置: 中國傳動網 > 技術頻道 > 應用方案 > CAN總線的單片機與數(shù)字信號處理器通信系統(tǒng)設計

CAN總線的單片機與數(shù)字信號處理器通信系統(tǒng)設計

時間:2013-08-22 18:28:55來源:傳動網

導語:?單片機與數(shù)字信號處理器CAN總線通信系統(tǒng)實驗過程中,發(fā)送端采用查詢方式,接收端采用中斷方式,利用鍵盤改變發(fā)送數(shù)據(jù),接收端利用液晶顯示器實時顯示接收數(shù)據(jù)。

1CAN總線介紹

控制器局域網絡(ControllerAreaNetwork,CAN)是一種串行多主站控制器局域網總線。它具有很高的網絡安全性、通信可靠性和實時性,而且簡單實用,網絡成本低,特別適用于環(huán)境溫度惡劣、電磁輻射強和振動大的工業(yè)環(huán)境。CAN總線可有效支持分布式控制或實時控制。該總線的通信介質可以是雙絞線、同軸電纜或光纖。其主要特點如下:

(1)CAN總線為多主站總線,各節(jié)點可在任意時刻向網絡上的其他節(jié)點發(fā)送信息,且不分主從;

(2)CAN總線采用獨特的非破壞性總線仲裁技術,高優(yōu)先級節(jié)點優(yōu)先傳送數(shù)據(jù),故實時性好;

(3)CAN總線具有點對點、一點對多點及全局廣播傳送數(shù)據(jù)的功能;

(4)CAN總線采用短幀結構,每幀有效字節(jié)數(shù)最多為8個,數(shù)據(jù)傳輸時間短,并有CRC及其他校驗措施,數(shù)據(jù)出錯率極低;

(5)CAN總線上某一節(jié)點出現(xiàn)嚴重錯誤時,可自動脫離總線,而總線上的其他操作不受影響;

(6)CAN總線系統(tǒng)擴充時,可直接將新節(jié)點掛在總線上,因而走線少,系統(tǒng)擴充容易,改型靈活;

(7)CAN總線的最大傳輸速率可達1Mb/s,直接通信距離最遠可達10km(速率在5Kb/s以下);

(8)CAN總線上的節(jié)點數(shù)取決于總線驅動電路,在標準幀(11位報文標識符)時,可達到110個,而在擴展幀(29位報文標識符)時,個數(shù)不受限。

2單片機與數(shù)字信號處理器CAN通信系統(tǒng)接口電路設計

單片機與數(shù)字信號處理器種類較多,在研究其通信系統(tǒng)時,以廣泛使用的MCS-51單片機以及適于運動控制的美國德州儀器(TI)公司TMS320LF2407為例進行研究。

2.1單片機通信系統(tǒng)接口電路設計

MCS-51單片機組成CAN通信系統(tǒng)需要擴展CAN控制器,本系統(tǒng)采用的CAN控制器是SJA1000。SJA1000是PHILIPS公司生產的既支持CAN2.0B,又支持CAN2.0A的CAN控制器。與SJA1000配套使用的CAN總線驅動器是PCA82C250,它是PHILIPS推出的CAN控制器和物理總線接口芯片,可提供對總線的差分發(fā)送和接收。CAN模塊總線控制器、總線驅動器連接基本方法如圖1所示。為增強CAN總線節(jié)點的抗干擾能力,SJA1000通過高速光耦6N137后與PCA82C250相連,這樣就能很好地實現(xiàn)本系統(tǒng)與CAN總線的電氣隔離。電源的隔離采用小功率電源隔離模塊。這些部分雖然增加了接口電路的復雜性,但是卻提高了系統(tǒng)的穩(wěn)定性和安全性。

CAN總線的單片機與數(shù)字信號處理器通信系統(tǒng)設計

TMS320LF2407內部集成一個完全的CAN控制器,但CAN控制器必須通過CAN驅動芯片才能與其他CAN控制器進行通信,這里采用PCA82C250。因為TMS320LF2407用3.3V供電,而PCA82C250用5V供電。TMS320LF2407通過高速光耦6N137后與82C250相連,不僅增強了CAN總線節(jié)點的抗干擾能力,而且實現(xiàn)了電平轉換。

CAN總線的單片機與數(shù)字信號處理器通信系統(tǒng)設計

3數(shù)字信號處理器與單片機通信系統(tǒng)軟件設計

數(shù)字信號處理器與單片機組成的CAN總線通信系統(tǒng)進行數(shù)據(jù)通信時,應約定通信協(xié)議,如幀格式、波特率、標識符等。各節(jié)點軟件設計均包括數(shù)據(jù)發(fā)送和接收子程序以及CAN總線控制器初始化子程序。這里著重研究CAN總線控制器的初始化。

3.1單片機通信系統(tǒng)軟件設計

單片機CAN通信系統(tǒng)軟件設計主要是指SJA1000總線控制器的初始化程序設計。

CAN總線控制器初始化程序主要是通過對SJA1000寄存器寫入相應的控制字,從而確定SJA1000的工作方式。SJA1000需要初始化的寄存器有:模式寄存器MODE、時鐘分頻寄存器CDR、接收代碼寄存器ACR、接收屏蔽寄存器AMR、中斷使能寄存器IER、總線定時寄存器BTR、輸出控制寄存器OCR等。其中,總線定時寄存器BTR的值決定CAN通信波特率,而波特率正確與否,是數(shù)字信號處理器與單片機實現(xiàn)CAN通信的關鍵。因為這些寄存器僅能在SJA1000復位期間進行寫訪問,因此在對這些寄存器初始化之前,必須確保系統(tǒng)進入復位狀態(tài),在初始化后,須清除復位請求位,使SJA1000返回正常運行狀態(tài),其初始化子程序如下:

CAN總線的單片機與數(shù)字信號處理器通信系統(tǒng)設計

3.2數(shù)字信號處理器通信系統(tǒng)軟件設計

在使用數(shù)字信號處理器CAN控制器前必須對它的一些內部寄存器進行設置,如對位定時器的設置及對郵箱進行初始化。

位定時器主要由CANBCR1和CANBCR2兩個寄存器組成,配置對位定時器也就是設置這兩個寄存器,其值決定了CcAN控制器的通信波特率、同步跳轉寬度、采樣次數(shù)和重同步方式等。對郵箱初始化主要是對郵箱進行配置,設置郵箱的標識符以及接收濾波器的設置等。CAN控制器初始化子程序如下:

CAN總線的單片機與數(shù)字信號處理器通信系統(tǒng)設計

4結語

單片機與數(shù)字信號處理器CAN總線通信系統(tǒng)實驗過程中,發(fā)送端采用查詢方式,接收端采用中斷方式,利用鍵盤改變發(fā)送數(shù)據(jù),接收端利用液晶顯示器實時顯示接收數(shù)據(jù)。反復試驗表明,該系統(tǒng)工作穩(wěn)定性較高;該系統(tǒng)硬件電路或軟件程序稍加改動可用于單片機與數(shù)字信號處理器或數(shù)字信號處理器與數(shù)字信號處理器等雙CPU或多CPU測控系統(tǒng)中,且應用前景廣闊。

標簽:

點贊

分享到:

上一篇:安科瑞 酒店電能管理系統(tǒng)

下一篇:微能WIN-V63矢量控制變頻器在...

中國傳動網版權與免責聲明:凡本網注明[來源:中國傳動網]的所有文字、圖片、音視和視頻文件,版權均為中國傳動網(m.u63ivq3.com)獨家所有。如需轉載請與0755-82949061聯(lián)系。任何媒體、網站或個人轉載使用時須注明來源“中國傳動網”,違反者本網將追究其法律責任。

本網轉載并注明其他來源的稿件,均來自互聯(lián)網或業(yè)內投稿人士,版權屬于原版權人。轉載請保留稿件來源及作者,禁止擅自篡改,違者自負版權法律責任。

網站簡介|會員服務|聯(lián)系方式|幫助信息|版權信息|網站地圖|友情鏈接|法律支持|意見反饋|sitemap

傳動網-工業(yè)自動化與智能制造的全媒體“互聯(lián)網+”創(chuàng)新服務平臺

網站客服服務咨詢采購咨詢媒體合作

Chuandong.com Copyright ?2005 - 2024 ,All Rights Reserved 深圳市奧美大唐廣告有限公司 版權所有
粵ICP備 14004826號 | 營業(yè)執(zhí)照證書 | 不良信息舉報中心 | 粵公網安備 44030402000946號