基于RA8806控制器的溫濕度控制系統(tǒng)設(shè)計
摘要:使用RA8806控制器的JXD320240AF液晶顯示模塊具有顯示數(shù)據(jù)量大,顯示位置及大小易于控制,與控制器連接簡單等特點(diǎn),非常適合使用在小型自動化控制領(lǐng)域。本文以冷庫溫濕度控制系統(tǒng)設(shè)計為例,介紹RA8806控制器的功能,與單片機(jī)的接口以及該系統(tǒng)軟件的設(shè)計思想與流程,并且進(jìn)行現(xiàn)場測試。測試結(jié)果表明,使用RA8806控制器構(gòu)成的顯示部分,硬件電路緊湊、顯示畫面豐富、軟件設(shè)計靈活,具有較高的應(yīng)用價值。
本文引用地址:http://cafeforensic.com/article/201610/306602.htm目前以單片機(jī)為控制器的各類控制系統(tǒng)中,顯示部分的設(shè)計是其中非常重要的一部分。常用的顯示元件有LED數(shù)碼管、1602、12864等,但這些元件顯示的信息量非常有限,1位LED數(shù)碼管只能顯示1位數(shù)字,而且不能是漢字,連續(xù)多位LED數(shù)碼管只能適用于很少量的數(shù)字顯示。1602是一款16×2的點(diǎn)陣圖形液晶顯示模塊,上下兩行,每行可以顯示16個字符,總共可以顯示32個字符。12864是一款帶中文字庫的點(diǎn)陣圖形液晶顯示模塊,可以顯示8×4行 16×16點(diǎn)陣的漢字,最多顯示32個漢字,對于需要顯示較多信息量的控制系
統(tǒng),這些顯示元件就顯得不很適合。文中介紹一種基于RA8806控制器的JXD320240AF液晶顯示模塊的冷庫溫濕度控制系統(tǒng)的設(shè)計。
該系統(tǒng)主要用于實現(xiàn)冷庫溫濕度的多點(diǎn)測量和控制,其主要功能為使用AM2301數(shù)字溫濕度一體傳感器測量冷庫4個點(diǎn)的溫濕度,測量數(shù)據(jù)進(jìn)入AT89S52 單片機(jī),經(jīng)單片機(jī)進(jìn)行數(shù)據(jù)處理后,使用RA8806控制器的JXD320240AF液晶顯示屏顯示測量的溫濕度以及所設(shè)定的溫濕度上下限,同時顯示通過時鐘芯片DS1302傳送過來的日期和時間。另外,在測量的溫濕度進(jìn)入單片機(jī)后,單片機(jī)還要將測量的溫濕度與所設(shè)定的溫濕度進(jìn)行比較,以確定溫濕度是否超限,如果超限,單片機(jī)將控制相關(guān)的元件進(jìn)行聲光報警,并驅(qū)動繼電器,控制相關(guān)的加熱、加濕設(shè)備工作,系統(tǒng)的溫濕度上下限和日期時間可以通過按鈕來設(shè)置。本系統(tǒng)的重點(diǎn)在于對使用RA8806控制器的JXD320240AF液晶顯示屏的控制和操作,使數(shù)據(jù)能夠正常的按照設(shè)定要求顯示。
1 RA8806控制器簡介
RA8806是一個文字與繪圖模式相結(jié)合的點(diǎn)矩陣液晶顯示控制器,內(nèi)建雙圖層顯示內(nèi)存,一般模式最大支持320×240點(diǎn)雙圖層混和顯示,擴(kuò)展模式支持 640×240點(diǎn)或320×480點(diǎn)單圖層顯示,支持4/8-bits的6800/8080 MPU接口和4/8-bitsLCD驅(qū)動接口,內(nèi)建聰穎的8×8或4×8可調(diào)節(jié)長按鍵功能鍵盤掃瞄電路,支持水平和垂直區(qū)域卷動,內(nèi)建簡體/繁體中文 (GB/BIG5)和ASCII字體的ROM,支持90度、180度、270度文字旋轉(zhuǎn)顯示功能,支持1倍到4倍字型放大(垂直和水平),內(nèi)建 512Byte字型創(chuàng)造內(nèi)存(CGRAM),其中半型字為8×16點(diǎn),全型字為16×16點(diǎn),支持文字對齊功能,支持4灰階顯示(灰階模式),支持粗體字和行與行問距設(shè)定功能,內(nèi)建脈波寬度調(diào)變(PWM)提供LCD對比或背光的調(diào)節(jié)。
2 系統(tǒng)硬件設(shè)計
2.1 系統(tǒng)總體框圖
本系統(tǒng)用于實現(xiàn)冷庫溫濕度的多點(diǎn)采集與控制,其相關(guān)溫濕度數(shù)據(jù)和日期時間數(shù)據(jù)通過RA8806控制的JXD320240AF液晶屏實時顯示,按照模塊劃分,可分為數(shù)據(jù)顯示單元、多路溫濕度檢測單元、時鐘單元、鍵盤輸入單元、電源單元、驅(qū)動控制單元、超限報警單元。系統(tǒng)總體框圖如圖1所示。
2.2 單元設(shè)計
1)數(shù)據(jù)顯示單元
數(shù)據(jù)顯示單元選用RA8806控制的JXD320240AF帶中文字庫的點(diǎn)陣圖形液晶顯示屏,主要用于顯示多路溫濕度,日期,時間以及所設(shè)定的溫濕度上下限等數(shù)據(jù),其共有22根引腳,引腳功能如表1所示。
該顯示屏除去電源和地之外的其他引腳與單片機(jī)直接相連,其中8位數(shù)據(jù)線與P1口連接,其他控制信號與P2口的相應(yīng)位連接,接口電路如圖2所示。
2)多路溫濕度檢測單元
多路溫濕度檢測單元選用4個AM2301數(shù)字溫濕度一體傳感器,該傳感器具有極高的可靠性和穩(wěn)定性,響應(yīng)速度快,抗干擾能力強(qiáng),其采用單總線進(jìn)行溫濕度數(shù)據(jù)的傳輸,在開發(fā)各類溫濕度控制系統(tǒng)時,所需要占用的硬件資源較少,其4個傳感器分別接到單片機(jī)的P3.4、P3.5、P3.6、P3.7端,系統(tǒng)依次將 4路數(shù)據(jù)讀入單片機(jī),AM2301一般在距離小于20 m時需接5K左右的上拉電阻,Vcc和GND管腳連接高電平和地。
3)時鐘單元
時鐘單元部分選用DS1302時鐘芯片,其具有自動計時、掉電保護(hù)、閏年補(bǔ)償?shù)榷喾N功能,采用串行通信方式與單片機(jī)連接,其SCLK端接到單片機(jī)的P3.0,I/O端接到P3.1,RST接到P3.2,電路如圖3所示。
4)其他單元
鍵盤輸入單元主要實現(xiàn)溫濕度上下限和日期時間的設(shè)定,其采用4個獨(dú)立按鍵,分別接到單片機(jī)的P3.3,P0.1,P0.2,P0. 3端,其名稱分別為設(shè)置、增加、減小、確認(rèn),功能分別為循環(huán)選擇設(shè)定值,設(shè)定值加1,設(shè)定值減1,退出設(shè)置功能。
超限報警單元選擇聲光報警的形式,聲音選擇具有一定功率的蜂鳴器,亮燈選擇4個發(fā)光二極管,分別代表溫度低于下限,溫度高于上限,濕度低于下限,濕度高于上限,當(dāng)某一項超限時,相應(yīng)的發(fā)光二極管被點(diǎn)亮。
3 系統(tǒng)軟件設(shè)計
本系統(tǒng)在Keil4下,使用C語言開發(fā),按照模塊化設(shè)計的思想進(jìn)行設(shè)計,主要包括數(shù)據(jù)顯示模塊、多路溫濕度檢測模塊、時鐘模塊、鍵盤輸入模塊、超限報警與驅(qū)動模塊。多路溫濕度檢測模塊主要實現(xiàn)讀取4路AM2301溫濕度傳感器傳送的溫濕度信號,將其轉(zhuǎn)換成RA8806控制的LCD便于顯示的格式,由于 AM2301是單總線數(shù)據(jù)傳送,其讀取時序時的控制是特別需要注意的問題。時鐘模塊主要是從時鐘芯片DS1302讀取年、月、日、時、分、星期,并將其轉(zhuǎn)換成便于顯示的格式。鍵盤輸入模塊由4個獨(dú)立按鍵組成,用于設(shè)置溫濕度的上下線,設(shè)置日期和時間,并將設(shè)置后的日期和時間重新寫入DS1302,該部分通過外部中斷的方式來實現(xiàn),當(dāng)按下確認(rèn)按鈕后,觸發(fā)外部中斷1,進(jìn)入中斷處理程序。超限報警與驅(qū)動模塊用于判斷溫濕度是否超過設(shè)定溫濕度的上下線,若超過,聲光報警并驅(qū)動相應(yīng)的繼電器。其中數(shù)據(jù)顯示模塊是選用RA8806控制的JXD320240AF屏,將需要顯示的溫濕度數(shù)據(jù)、溫濕度上下線數(shù)據(jù),日期時間數(shù)據(jù)等采用適當(dāng)?shù)拇笮★@示在適當(dāng)?shù)牡胤?,這里主要介紹數(shù)據(jù)顯示模塊的設(shè)計思想及組成部分,主程序和中斷程序的流程圖。數(shù)據(jù)顯示模塊主要由以下函數(shù)組成:
主程序流程圖如圖4所示,中斷程序流程圖如圖5所示。
4 測試
在系統(tǒng)設(shè)計完成后,對該系統(tǒng)從工作的穩(wěn)定性、精度、響應(yīng)速度等方面進(jìn)行了較長時間的測試。在初始測試時,系統(tǒng)連續(xù)運(yùn)行1個小時以后,出現(xiàn)數(shù)據(jù)反白顯示,顯示異常字符等情況,再連續(xù)運(yùn)行2個小時,出現(xiàn)藍(lán)屏,數(shù)據(jù)不能顯示等情況,經(jīng)過對軟件和硬件電路板的測試,發(fā)現(xiàn)問題出現(xiàn)在電路板的設(shè)計方面,電路板上的導(dǎo)線設(shè)計過細(xì),焊點(diǎn)不夠牢靠。通過對電路板重新設(shè)計制作,以上問題得到解決。
連續(xù)運(yùn)行10天后,RA8806芯片發(fā)熱量非常大,以至于顯示屏部分區(qū)域泛紅,再連續(xù)運(yùn)行,泛紅區(qū)域不斷擴(kuò)大。通過分析,一方面當(dāng)時的系統(tǒng)測試是在夏天,室內(nèi)溫度就在30度左右,連續(xù)運(yùn)行造成芯片發(fā)熱量巨大;另一方面,電路板與顯示屏之間的距離過小,使芯片產(chǎn)生的熱量不能快速散發(fā)出去。于是對硬件進(jìn)行了重新設(shè)計,給芯片增加散熱裝置,再進(jìn)行測試。
經(jīng)過一個月的運(yùn)行,該系統(tǒng)沒有出現(xiàn)任何問題,數(shù)據(jù)顯示正常,設(shè)置按鈕、增加按鈕、減少按鈕、確認(rèn)按鈕都能夠正常工作。溫度測量值與實際溫濕度的誤差范圍在 -0.2~+0.2℃范圍內(nèi),相對濕度的最大誤差為±2%RH,能夠滿足控制系統(tǒng)的要求。報警正常,沒有誤報現(xiàn)象,溫濕度超過上下線的報警響應(yīng)時間為 0.5 s,執(zhí)行器工作正常,啟動外部加熱、加濕等設(shè)備的工作時間不超過3 s。時間和日期能夠正常顯示,沒有誤差,顯示測試圖如圖6所示。
5 結(jié)束語
使用RA8806控制器的JXD320240AF帶中文字庫的點(diǎn)陣圖形液晶屏與同類LCD比較,具有顯示數(shù)據(jù)量大、顯示范圍廣、字體大小可調(diào)、可顯示圖形等諸多特點(diǎn),其與單片機(jī)的連接非常方便,軟件系統(tǒng)設(shè)計方便、靈活,特別適用于有較多數(shù)據(jù)顯示需要的各類控制系統(tǒng)中,具有較高的工程應(yīng)用價值。
評論