CAN總線(xiàn)及其在UPS網(wǎng)絡(luò )監控系統中的應用
out temp,data_can
splk #6, temp ;設置總線(xiàn)定時(shí)寄存器0
out temp,dress_can
splk #0c4h, temp ;tscl=10tclk,tclk為xtal
;的頻率周期(20mhz)
out temp,data_can ;不同總線(xiàn)控制器的時(shí)鐘
;振蕩器間的相對偏移為0
splk #7, temp ;設置總線(xiàn)定時(shí)寄存器1
out temp,dress_can
splk #0beh, temp ;設置tsyncseg=tscl,
;ttseg1=15tscl,ttseg2=4tscl
out temp,data_can ;位周期為20tscl,故在
;20mhz晶振情況下,設置波特率為100kbps
splk #8, temp ;設置輸出控制寄存器
out temp,dress_can
splk #1ah, temp ;正常輸出模式
out temp,data_can ;tx1懸空,tx0推挽式
can_work ldp #4
splk #0, temp ;設置模式寄存器(mod)
out temp,dress_can
splk #1ah, temp ;設置雙濾波接收方式,并
;返回工作狀態(tài)
out temp,data_can
splk #0, temp
out temp,dress_can
in temp,data_can
bit temp,bit0
bcnd can_work,tc
ret
(2) 發(fā)送子程序
負責單節點(diǎn)信息的發(fā)送,發(fā)送時(shí)只需將待發(fā)送的信息按特定格式組合成一幀,送入sja1000發(fā)送緩存區中,然后啟動(dòng)sja1000發(fā)送即可,當然在往sja1000發(fā)送緩存區送信息之前必須先作一些查詢(xún)判斷,直到空閑時(shí)才能發(fā)送,發(fā)送子程序分發(fā)送遠程幀子程序和數據幀子程序兩種,遠程幀無(wú)數據場(chǎng);
(3) 接收子程序
負責單節點(diǎn)信息的接收以及其它情況處理。當can控制器接收到信息后向微控制器發(fā)出中斷響應信號,微控制器在中斷程序中將接收到的信息讀入,再根據信息來(lái)控制節點(diǎn)的動(dòng)作。接收子程序比發(fā)送子程序要復雜一些,因為在處理接收信息可能是諸如總線(xiàn)脫離、錯誤報警、接收溢出等中斷,要對其進(jìn)行處理。
5 結束語(yǔ)
目前,該網(wǎng)絡(luò )監控系統已經(jīng)在廣東某集團公司18kva-6*3kva可熱插拔模塊化不間斷電源上使用,經(jīng)過(guò)了運行和調試。驗證了使用can總線(xiàn)技術(shù)使系統布線(xiàn)更加靈活,具有通信質(zhì)量可靠、響應速度快、實(shí)時(shí)性好的特點(diǎn),滿(mǎn)足整個(gè)系統可熱插拔的要求。
參考文獻
[1] 瞿 坦. 計算機網(wǎng)絡(luò )及應用[m]. 北京:化學(xué)工業(yè)出版社,2002.
[2] philips.sja1000 stand-alone can controller product specification.2000 jan 04.
[3] 張永強.ups的網(wǎng)絡(luò )監控[j]. 電力學(xué)報,2002,16(1):54.
評論