王曉鵬
摘要:CAN是Controller Area Network的簡稱,CAN-BUS稱為控制器局域網總線技術,本文采用CAN總線2.0B協議,硬件設計采用C8051F040單片機作為核心,CAN總線控制器為飛利浦公司的SJA1000,可以采集溫度、電流、開關量等多種信號,由CAN總線傳輸到上位機后,該上位機實現操作員與底層節點之間的信息交互。
關鍵詞:現場總線;CAN總線;C8051F040;SJA1000
中圖分類號:TP366 文獻標識碼:A 文章編號:1007-9416(2017)06-0200-01
1 簡介
CAN總線的幀可以分為四種類型,總線上傳輸的大多數都是數據幀,數據幀負責攜帶數據從發送器到接收器;CAN總線發送數據時,該節點的CPU把將要發送的數據和標識發送給CAN芯片,則該芯片進入準備狀態。Cygnal公司的51系列單片機C8051F040是集成在芯片上的混合信號系統單片機,該單片機是目前8位單片機控制系統的發展方向。芯片上有1個12位多通道ADC、2個12位DAC、2個電壓比較器、1個電壓基準、1個32kB的FLASH存儲器、具有與MCS-51指令集完全兼容的高速CIP-51內核,峰值速度可達25MIPS,使用ADC來采集溫度,電流等模擬信號,將結果存儲在單片機中,待總線空閑時發送給上位機。SJA1000 是一種獨立控制器,用于移動目標和一般工業環境中的區域網絡控制,工作模式為PeliCAN, 該模式支持具有很多新特性的CAN 2.0B 協議。
2 CAN總線硬件電路設計
2.1 CAN總線接口電路
C8051F040連接SJA1000需要提供數據線、地址線和控制信號。SJA1000支持與3.3V供電的C8051F040直接連接,這時要將Mode引腳接高電平。CAN總線接口電路圖如下圖1。
2.2 C8051F040外圍電路設計
C8051F040外圍電路包括電源3.3V設計模塊、晶振模塊、JTAG。電源模塊采用芯片AS1117,它將+5V電源轉換為+3.3V輸出,該單片機供電電源模塊原理圖如下圖2。
3 系統軟件設計
編譯環境使用集成了Keil C51編譯器的開發環境Silicon Laboratories IDE ,在IDE環境下完成程序的編譯和調試。
4 結語
本設計完成了底層節點的軟硬件設計,搭建了一套CAN總線數據采集系統,經過實驗測定基本可以達到指標要求。
參考文獻
[1]路小俊.基于CAN總線的通信研究[J].低壓電器,2002,6,(12):36-39.
[2]史久根.CAN現場總線系統設計技術[M].國防工業出版社,2004:20-40.
[3]蔡月明.基于CAN總線的工業控制系統[J].中國儀器儀表,2001,5,(6):16-18.endprint