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