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