基于CAN總線的大容量漢字火災(zāi)樓層顯示器設(shè)計
火災(zāi)樓層
目前國內(nèi)現(xiàn)有的火災(zāi)樓層顯示器大都以51單片機作為MCU。因為ROM尋址空間所限,火災(zāi)樓層顯示器大都只能顯示火警所在樓層號和地址號,無法以直觀的漢字信息提示情況各異的具體火警地點。如果將漢字信息通過總線分發(fā)到各個樓層顯示器,巨大的通訊量又會給火警系統(tǒng)總線帶來沉重負(fù)荷,導(dǎo)致整個火警系統(tǒng)效率低下,延誤火警上報時機。本文提出了一種基于CAN總線的大容量漢字火災(zāi)樓層顯示器,很好的解決了上述問題。
2 火災(zāi)報警系統(tǒng)總體功能描述
火災(zāi)報警控制系統(tǒng)中,中央火警控制器通過CAN總線和各個單元進(jìn)行實時通訊并完成各項控制和報警功能。單元是火災(zāi)探測器、手動報警按鈕、輸入輸出模塊、樓層顯示器等設(shè)備的總稱。它們是系統(tǒng)終端,直接探測火災(zāi)信號,并通過通道上報給控制器,同時接收由各種通道轉(zhuǎn)發(fā)控制器給單元的聯(lián)動信息(啟動輸入輸出模塊控制的滅火裝置)、顯示信息(樓層顯示器顯示火災(zāi)信息)等。通道是回路模塊、轉(zhuǎn)接模塊和總線控制盤等設(shè)備的總稱。它們是控制設(shè)備和終端的通道,是拓?fù)渚W(wǎng)絡(luò)構(gòu)成的中繼設(shè)備?;馂?zāi)報警控制系統(tǒng)的總體結(jié)構(gòu)和樓層顯示器在系統(tǒng)的中的位置如圖1所示。
圖1 火災(zāi)報警控制系統(tǒng)結(jié)構(gòu)及樓層顯示器所在位置顯示
3 系統(tǒng)功能及硬件描述
3.1 漢字樓層顯示器硬件設(shè)計方案
如圖2所示,漢字樓層顯示器包括單片機及其外圍電路,CAN總線模塊, FLASH存儲器,漢字液晶模塊,UART接口,以及燈和按鍵,蜂鳴器。單片機可通過UART接收PC上傳下來的漢字信息,存儲到FLASH中作為地址信息的查詢數(shù)據(jù)庫。通過CAN控制器MCP2510和CAN總線驅(qū)動器 PCA82C250組成的CAN通信模塊和火災(zāi)報警控制器進(jìn)行CAN總線通信。如果有火警發(fā)生,單片機將記錄火警信息,查詢FLASH得到火警發(fā)生的漢字地址信息,并在漢字液晶上滾動顯示火警和信息查詢結(jié)果。同時,發(fā)生火警時還可通過查詢鍵快速查詢火警信息,通過蜂鳴器報警,通過消音鍵消音,并點亮發(fā)光二極管報警。未發(fā)生火警時,通過自檢鍵自檢可以檢查各個功能是否能正常工作。
圖2 漢字樓層顯示器結(jié)構(gòu)框圖
3.2 FLASH存儲器電路設(shè)計
FLASH 選用的SST29SF040是SST公司推出的高速可編程閃存。它符合JEDEC標(biāo)準(zhǔn),具有512K×8 Bits的存儲結(jié)構(gòu);芯片擦除及寫入的時間快,整片擦除只需70毫秒,段擦除只需18毫秒,字編程寫入時間僅為14微秒;可靠性高,能夠重復(fù)寫100,000次,數(shù)據(jù)可以保存100年不丟失。
SST29SF040 的容量是512K Bytes,而51系列單片機的ROM直接尋址范圍是64K Bytes,如果不加以處理而直接使用,將會浪費大量的存儲空間。我們使用了一種分頁存儲方式,使得FLASH存儲空間得以充分利用,大大擴充了單片機ROM尋址范圍。按照每條漢字信息占用32個Bytes計算,理論上可以最大存儲16384條火警地址信息,足以應(yīng)付絕大多數(shù)復(fù)雜的工程環(huán)境。圖3為存儲器電路,最高位地址線A16-A18接單片機的P1.0-P1.2,因而 FLASH存儲器實現(xiàn)了8頁,每頁64K的外部存儲結(jié)構(gòu)。在每次讀寫FLASH時,將P1.0-P1.2賦不同的值即可實現(xiàn)不同的頁選。假設(shè)page為待選取的頁號變量(0-7),在Keil Cx51中通過下列語句即可實現(xiàn)讀寫前的選頁操作:P1 = (P1 0xf8) | page;
圖3 FLASH存儲器分頁存儲電路
3.3漢字液晶顯示模塊設(shè)計
我們選用金鵬電子公司的OJM2*8A漢字液晶模塊作為顯示設(shè)備。OJM2*8A中文液晶顯示模塊內(nèi)含GB 2312的15*15點陣國標(biāo)一、二級簡體漢字和 8*8點陣及8*16點陣ASCII字符,用戶輸入GB2312區(qū)位碼或ASCII碼即可實現(xiàn)文本顯示。每個漢字的區(qū)位碼只占用兩個字節(jié),是原來漢字點陣所需存儲單元的1/16。
評論