智能測控儀表系統(tǒng)的CAN總線及接口研究
(作者未知) 2010/5/26
(接上頁)層和數(shù)據(jù)鏈路層功能,可以完成對通信數(shù)據(jù)的成幀處理。
SJA1000是Philips公司PCA82C200型CAN控制器的后續(xù)產(chǎn)品,在軟件和引腳上均與PCA82C200兼容,井增加了許多新的功能,性能更佳,尤其適用于對系統(tǒng)優(yōu)化、診斷和維護(hù)要求比較高的場合。SJA1000的功能由以下幾部分構(gòu)成:接口管理邏輯;發(fā)送緩沖器,能夠存儲1個(gè)完整的報(bào)文事(擴(kuò)展的或標(biāo)準(zhǔn)的);驗(yàn)收濾波器;接收F1F0;CAN核心模塊。
SJA1000的一端與單片機(jī)相連,另一端與CAN總線相連。但是,為了提高單片機(jī)對CAN總線的驅(qū)動(dòng)能力,可以把82C250作為CAN控制器和物理總線間的接口,以提供對總線的差動(dòng)發(fā)送能力和對CAN控制器的差動(dòng)接收能力。
若用SJA1000作為流量計(jì)的CAN控制器,與CPU(單片機(jī))相連,再通過PCA82C250組成CAN總線。這種結(jié)構(gòu)很容易實(shí)現(xiàn)CAN網(wǎng)絡(luò)節(jié)點(diǎn)中的信息收發(fā),從而實(shí)現(xiàn)對現(xiàn)場的控制。
CAN通信協(xié)議主要由CAN控制器完成,SJA1000是適用于汽車和一般工收環(huán)境控制器局域網(wǎng)(CAN)的高集成度控制器,具有完成高性能通信協(xié)議所要求的全部特性,具有簡單總線連接的SJA1000可完成物理層和數(shù)據(jù)鏈路層的所有功能,應(yīng)用層功能可由微控制器完成,SJA1000為其提供多用途的接口。
SJA1000操作期間,在上電之前必須配置控制線路(中斷、復(fù)位、片選等)建立與CAN控制器之間通信的硬件連接。初始化、CAN通信采用中斷方式數(shù)據(jù)發(fā)送和接收子程序。
如果在上電后獨(dú)立CAN控制器在引腳17得到1個(gè)復(fù)位脈沖(低電平),它就能夠進(jìn)入復(fù)位模式。在對SJA1000寄存器設(shè)置前,CAN控制器通過讀復(fù)位模式請求標(biāo)志來檢查是否己進(jìn)入復(fù)位模式,因?yàn)橐渲眯畔⒌募拇嫫髦挥性趶?fù)位模式才能寫入,并涉及到對控制寄存器CR、驗(yàn)收碼寄存器(ACR)驗(yàn)收屏蔽寄存器(AMR)、總線定時(shí)寄存器(BTRO和BTR1)輸出控制寄存器(OCR)的初始化編程。時(shí)鐘分頻寄存器可以選擇BasicCAN或PeliCAN工作模式,設(shè)置CLKOUT引腳使能用來選擇頻率,設(shè)置是否使用旁路CAN輸入比較器和是否使用TX1輸出用為專門的接收中斷輸出。驗(yàn)收代碼和驗(yàn)收屏蔽寄存器的設(shè)置可以過濾信息,為收到的信息定義驗(yàn)收代碼;為與驗(yàn)收代碼相關(guān)位比較定義驗(yàn)收屏蔽代碼。
總線定時(shí)寄存器定義總線上的位速率。輸出控制寄存器定義CAN總線輸出引腳TX0和TX1的輸出模式,定義TX0和TX1輸出引腳配置是懸空、下拉、上拉或推挽以及極性。中斷寄存器設(shè)置允許識別的中斷源。
3結(jié)語
多個(gè)智能儀表通過CAN接口與PC連成總線網(wǎng),其系統(tǒng)運(yùn)行良好。這種基于現(xiàn)場總線的智能儀表系統(tǒng)抗干擾性強(qiáng)、性能可靠,無論是測量速度、精確度和自動(dòng)化程序還是性價(jià)比都是傳統(tǒng)儀表不能比擬的,是今后儀器儀表發(fā)展的方向。
參考文獻(xiàn)
[1]柯艷明.智能測控儀表系統(tǒng)的CAN總線通信方案[J].山西電子技術(shù),2007,(2):29-31.
[2]王文華.智能儀表的CAN接口設(shè)計(jì)[J].國外電子元器件,2006,(3):9-11.
[3]劉小強(qiáng),粟梅.基于CAN總線的數(shù)據(jù)采集處理系統(tǒng)的設(shè)計(jì)[J].儀表技術(shù)與傳感器,2006,(9).
|