基于STC89C51的CAN總線(xiàn)點(diǎn)對點(diǎn)通信模塊設計
摘要:隨著(zhù)人們對總線(xiàn)對總線(xiàn)各方面要求的不斷提高,總線(xiàn)上的系統數量越來(lái)越多,繼而出現電路的復雜性提高、可靠性下降、成本增加等問(wèn)題。為解決上述問(wèn)題,文中闡述了基于SJAl000的CAN總線(xiàn)通信模塊的實(shí)現方法,該方法以PCA82C250作為通信模塊的總線(xiàn)收發(fā)器,以SITA-l000作為網(wǎng)絡(luò )控制器。并以STCSTC89C5l單片機來(lái)完成基于STC89C5l的CAN通信硬件設計。文章還就平臺的初始化、模塊的發(fā)送和接收進(jìn)行了設計和分析。通過(guò)測試分析證明,該系統可以達到CAN的通信要求,整個(gè)系統具有較高的實(shí)用性。
關(guān)鍵詞:CAN總線(xiàn);SJAl000;82C250;STC89C51
O 引言
現場(chǎng)總線(xiàn)是應用在生產(chǎn)最底層的一種總線(xiàn)型拓撲網(wǎng)絡(luò ),是可用做現場(chǎng)控制系統直接與所有受控設備節點(diǎn)串行相連的通信網(wǎng)絡(luò )。在工業(yè)自動(dòng)化方面,其控制的現場(chǎng)范圍可以從一臺家電設備到一個(gè)車(chē)間、一個(gè)工廠(chǎng)。一般情況下,受控設備和網(wǎng)絡(luò )所處的環(huán)境可能很特殊,對信號的干擾往往也是多方面的。但要求控制則必須實(shí)時(shí)性很強,這就決定了現場(chǎng)總線(xiàn)有別于一般的網(wǎng)絡(luò )特點(diǎn)。此外,由于現場(chǎng)總線(xiàn)的設備通常是標準化和功能模塊化,因而還具有設計簡(jiǎn)單、易于重構等特點(diǎn)。
1 CAN總線(xiàn)概述
CAN (Controller Area Network)即控制器局域網(wǎng)絡(luò ),最初是由德國B(niǎo)osch公司為汽車(chē)檢測和控制系統而設計的。與一般的通信總線(xiàn)相比,CAN總線(xiàn)的數據通信具有突出的可靠性、實(shí)時(shí)性和靈活性。其良好的性能及獨特的設計,使CAN總線(xiàn)越來(lái)越受到人們的重視。由于CAN總線(xiàn)本身的特點(diǎn),其應用范圍目前已不再局限于汽車(chē)行業(yè),而向自動(dòng)控制、航空航天、航海、過(guò)程工業(yè)、機械工業(yè)、紡織機械、農用機械、機器人、數控機床、醫療器械及傳感器等領(lǐng)域發(fā)展。目前,CAN已經(jīng)形成國際標準,并已被公認為幾種最有前途的現場(chǎng)總線(xiàn)之一。它的直線(xiàn)通信距離最大可以達到l Mbps/30m.其它的節點(diǎn)數目取決于總線(xiàn)驅動(dòng)電路,目前可以達到110個(gè)。
2 CAN系統硬件設計
圖l所示是基于CAN2.0B協(xié)議的CAN系統硬件框圖,該系統包括電源模塊、MCU部分、CAN控制器、光電耦合器、CAN收發(fā)器和RS232接口。硬件系統MCU采用STC89C5l,CAN控制器采用SJAl000,CAN收發(fā)器采用PCA82C250,光耦隔離采用6N137。
圖l中的CAN控制器SJAl000是CAN控制器(BasicCAN)PCA82C200的替代產(chǎn)品,它增加了一種新的操作模式(PeliCAN),這種模式可以支持很多新特性的CAN2.OB協(xié)議。微處理器STC89C5l在一定的模式下可對SJAl000中的寄存器進(jìn)行讀寫(xiě)操作,以控制SJAl000進(jìn)行數據的發(fā)送和接收。
CAN收發(fā)器PCA82C250是CAN控制器與物理總線(xiàn)之間的接口。它最初是為汽車(chē)中的高速應用(lMbps)而設計的。該器件可以提供對總線(xiàn)的差
動(dòng)發(fā)送和接收功能。它采用雙線(xiàn)差分驅動(dòng)方式,有助于抑制汽車(chē)等惡劣電氣環(huán)境下的瞬變干擾。PCA82C250可對SJAl000傳來(lái)的TTL電平和CAN總線(xiàn)差動(dòng)信號進(jìn)行相互轉換,而且可使總線(xiàn)具有較好的EMC特性。
數字通信相關(guān)文章:數字通信原理
評論