【正文】
數(shù),只有一個發(fā)送字節(jié)的函數(shù),Sendbyte(),通過該函數(shù)可以構(gòu)建出,write_(uchar i),write_data(uchar i),hzkdis(uchar code *i)寫指令函數(shù)/寫數(shù)據(jù)函數(shù)和顯示字符串函數(shù)。從圖中可以看出,12864串口通訊協(xié)議與I2C協(xié)議略有不同,最主要的特點體現(xiàn)在,12864發(fā)送1字節(jié)數(shù)據(jù)時的高四位和第四位要分別置于兩個字節(jié)的高四位,這是因為12864支持四位并口,所以在硬件設(shè)計上串口采用了四位發(fā)的方式。因此Sendbyte()I2C總線協(xié)議的方式編寫,而write_(uchar i),write_data(uchar i),hzkdis(uchar code *i)這三個函數(shù),需要使用Sendbyte(cmdcode amp。 0xf0)。和Sendbyte((cmdcode 4) amp。 0xf0)。來指令的發(fā)送。12864具體的指令在本文中不做涉及,深圳亞斌科技有限公司的手冊中對此作出了詳細的說明。 12864串行通訊時序圖 菜單程序的設(shè)計看到過很過火災(zāi)報警器,但是這些產(chǎn)品有可操控性差,幾乎不可設(shè)置,本產(chǎn)品加入了菜單的設(shè)計,雖然在成本上會有所增加,但是并不是很大。菜單頁面第一頁顯示“歡迎使用火災(zāi)報警系統(tǒng)”,“按A進入菜單”,第二頁顯示“靈敏度設(shè)置”,“背光時長設(shè)置”,“報警方式設(shè)置”,之后不再列出。本系統(tǒng)菜單的設(shè)計使用一個返回值為無符號字符型,帶有兩個無符號字符型形參的函數(shù)完成功能,返回值返回當(dāng)前頁面的狀態(tài),第一頁返回1,第二頁返回2,以此類推。參數(shù)一個為按鍵函數(shù)的返回值,如果按鍵函數(shù)的返回值為0,將不會進入菜單函數(shù),這些將在之后的章節(jié)詳細介紹。另一個參數(shù)為當(dāng)前頁面狀態(tài),這兩個參數(shù)可以使菜單函數(shù)知道當(dāng)前頁面是那一頁,需要執(zhí)行什么操作,程序段使用if語句分支結(jié)構(gòu)實現(xiàn)。設(shè)置實現(xiàn)的方法實際是使用一個全局變量,先介紹靈敏度設(shè)置,靈敏度的中、高、低,分別對應(yīng)臨界值不同的大小,低臨界值最小,高臨界值最大,在完成設(shè)置時,會改變該全局變量的值,而報警與否是該值與AD轉(zhuǎn)換結(jié)果對比決定的。背光時長的設(shè)置,用到了定時器,當(dāng)設(shè)置為常亮或長滅是定時器關(guān)閉,三極管Q1基極直接給高或者給低,當(dāng)設(shè)置為亮十秒是,定時器開始工作,沒1ms進定時器中斷一次,當(dāng)進入10000次時,關(guān)閉定時器,滅燈,當(dāng)有按鍵操作時,開啟定時器,清零中斷次數(shù),以此實現(xiàn)功能。報警方式的設(shè)置同樣是使用一個全局變量再設(shè)計時更改全局變量的值,在進入達到報警條件時,進入報警函數(shù),該全局變量作為實參帶入該函數(shù),函數(shù)設(shè)計采用分支設(shè)計,以達到功能。 main函數(shù)的設(shè)計main函數(shù)開始首先進行初始化設(shè)置,包括AD、顯示屏和AD的初始化,同時給標記變量賦初值。然后循環(huán)檢測按鍵,當(dāng)按鍵函數(shù)返回0時,進行一次AD采集,并執(zhí)行濾波程序,對濾波程序的輸出結(jié)果,與設(shè)定臨界值對比,如果超過臨界值進入報警程序。 main流程圖第四章 調(diào)試過程與總結(jié)本系統(tǒng)沒有進行軟件仿真,直接連接實物進行調(diào)試,在完成硬件的焊接后,使用電表對電路關(guān)鍵點進行測量,沒有發(fā)現(xiàn)問題。軟件編寫使用keil4編譯軟件,首先進行了菜單程序段的編寫,每次完成程序關(guān)鍵點的設(shè)計后,將程序通過宏晶公司的專用下載軟件下載至單片機測試,發(fā)現(xiàn)問題,不斷的修改、優(yōu)化本段程序,沒有問題后進入下一段程序的編寫,在整體完成后進行聯(lián)調(diào),并且在實際模擬環(huán)境中查看有無沒有預(yù)料到的問題。參考文獻[1][D].西安:西安理工大學(xué)碩士學(xué)位論文,2009.[2]孫健. 基于ARM7的電氣火災(zāi)自動報警控制器研制[D].杭州:浙江大學(xué)碩士學(xué)位論文,2007.[3]雍靜,李北海,[M].北京:科學(xué)出版社,2008.[4]王忠民, 郝靜, [J].西安郵電學(xué)院學(xué)報,2012,22:3437.[5],,A .Coping. A simulation model for studying the implementation of performancebased fire safety design in buildings [J].Automations in Construction,1998,17(7):852~ 863.[6] ,. Intelligent building research:a review [J].Automation in Construction,2005,14 (l):143~159.[7]張向亮. 智能建筑火災(zāi)自動報警系統(tǒng)的設(shè)計與研究[D].武漢:武漢理工大學(xué)碩士學(xué)位論文,2010.[8]Vaughn Bradshaw. The Building Environment: Active and Passive Control systems[M].John Wiley amp。 Sons,2006.[9][J].火災(zāi)科學(xué),2005,6:57 62.[10]繆順兵,熊光明,李永萍,[J].裝備制造技術(shù),2006,4:90 9