999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于STC89C52單片機的溫度檢測系統設計

2012-04-12 00:00:00周鵬
現代電子技術 2012年22期

摘 要:為了檢測現場溫度,并直觀反映其變化趨勢,設計了基于STC89C52單片機的溫度檢測系統。利用數字溫度傳感器DS18B20采集溫度信號,該信號送入STC89C52單片機處理,后由液晶顯示器LCD12864 (ST7920)顯示溫度值,并繪制出溫度變化曲線。實測結果表明,系統可靠性、測試精度及溫度趨勢曲線繪制達到設計要求。

關鍵詞:STC89C52單片機; DS18B20; LCD12864(ST7920); 溫度檢測系統

中圖分類號:TN91934; TP368 文獻標識碼:A 文章編號:1004373X(2012)22001004

在某些檢測領域將被測溫度數字化顯示還不足以完全反應其變化過程和變化規律,而繪制出趨勢曲線是有效方法之一。其中一種解決方案是將單片機作為下位機采樣現場溫度,將其上傳給PC機繪制曲線。有鑒于點陣型圖形液晶顯示器成本逐年降低、顯示容量越來越大、工耗越來越小、而且可以方便地與單片機接口,本文設計了一種溫度檢測系統。利用DS18B20采集溫度,LCD12864(ST7920)液晶顯示器直接與STC89C52單片機接口,在LCD12864(ST7920)上顯示被測溫度和溫度曲線。

1 系統組成

系統主要由單片機STC89C52,溫度傳感器DS18B20,點陣型液晶顯示器LCD12864(ST7920),鍵盤電路和報警電路組成(如圖1所示)。

圖1 系統框圖STC89C52用于實現算法、是整個系統的主控核心;LCD12864用于顯示實測溫度、溫度曲線、時間和日期等參數;DS18B20用于溫度采集;鍵盤電路用于設定相關參數(上下限溫度值、時間);報警電路用于溫度超限報警。

2 主要硬件設計

2.1 STC89C52單片機系統

STC89C52單片機系統由單片機,時鐘電路,復位電路組成。單片機系統如圖2所示。

圖2 STC89C52單片機系統STC89C52單片機具有抗干擾性能強、速度快、功耗低和指令代碼完全兼容8051單片機等特點。其主要參數為[12]:時鐘頻率最高可達80 MHz;內置8 KB的FLASH ROM,512 B的RAM和2 KB的E2PROM;3個16位定時器/計數器,一個6向量2級中斷結構。

STC89C52的P0口作為普通I/O口使用,與12864液晶顯示器DB0~DB7數據口相連,根據P0口硬件特點在其外部必須接上上拉電阻。

時鐘電路采用內部時鐘方式,為單片機系統提供時鐘信號。

復位電路采用上電自動復位和按鍵復位的方式,只要保證加到RST引腳的高電平持續時間大于2個機器周期就能使單片機正常復位[3]。

2.2 DS18B20數字測溫電路

測溫電路的傳感器選用DS18B20數字式溫度傳感器,它具有特點[46]為:可通過編程的方式實現9~12位的數字溫度直讀;測溫范圍為-55~125 ℃,最高12位分辨率,精度可達±0.5 ℃;可設置超限溫度報警,并有搜索命令識別報警條件;單總線接口,僅需一條輸入輸出線(DQ)就能與單片機(P2.0)進行通信。DS18B20數字測溫電路如圖3所示。

顯示電路是人機交互的核心,本系統需同時顯示實測溫度、上限溫度、溫度曲線,時間和日期,信息量大,故選擇點陣圖形液晶顯示器LCD12864(ST7920)。

LCD12864(ST7920)具有特性[79]為:4位/8位并行、2線或3線串行等多種接口方式;顯示分辨率為128×64, 內置8 192個16×16點漢字,和128個16×8點ASCII字符集;接口方式靈活、簡單,可方便的構成中英文式人機交互圖形界面。LCD12864與單片機接口電路如圖4所示。

LCD12864(ST7920) 由DDRAM (顯示數據RAM),CGROM (字型產生ROM)和CGRAM (自定義字型產生RAM)和GDRAM(繪圖RAM)等組成,實現顯示字符和圖形的功能。

DDRAM模塊提供64×2個位元組的空間,最多可控制4行16字(64個字)的中文字型顯示,當寫入顯示數據RAM時,可分別顯示CGROM與CGRAM的字型;此模塊可顯示HCGROM字型(半角)、CGRAM字型及CGROM的中文字型3種字型。液晶顯示器屏幕坐標(AC地址)與DDRAM地址的對應關系如表1所示。

CGRAM模塊提供4組16×16點的自定義圖像空間,可以將內部字型沒有提供的圖像字型自行定義到CGRAM中,便可和CGROM中的定義一樣地通過DDRAM顯示在屏幕中。

圖4 LCD12864與單片機接口電路GDRAM提供64×32個字節的空間,實際可控制128×64點陣的二維繪圖緩沖空間。GDRAM的二維地址與液晶屏幕坐標的對應關系如圖5所示。

2.4.1 報警電路

報警電路由PNP三極管(9012),蜂鳴器及單片機的控制引腳(P21)組成。當溫度超限, P21引腳輸出一定頻率的信號,觸發蜂鳴器工作從而實現報警。報警電路如圖6所示。

鍵盤電路采用中斷和查詢相結合的方式設定溫度和調整時間。系統由4個按鍵組成,分別對應溫度/時間設定的功能選擇,數字增加和減少的調節。當有鍵按下時,負跳變引起INT1中斷,再查詢具體按鍵,并執行相應功能。這種結構既擴充了外部中斷源,減少了CPU的工作負擔,又能對按鍵進行實時處理。鍵盤電路如圖7所示。

LM7805三端集成穩壓器和濾波電容組成電源電路,為整個系統提供穩定的工作電壓。電源電路如圖8所示。

主程序流程如圖9所示。

液晶顯示器的讀/寫數據和數字/字符、溫度顯示、曲線繪制和時鐘顯示等功能由驅動函數和界面顯示函數完成。

驅動函數包括:

TestLcdIdle()

//忙檢測

WriteLcdCommand()

//寫入命令

WriteLcdData()

//寫入數據

ReadLcdData()

//讀出數據

界面顯示函數包括:

DisplayDdramChar()

//數字/字符顯示

DrawGdramSelfChar()

//自定義字符顯示

SetGdramDot()/DrawGdramLine()

//描點/畫線

3.2 溫度采集函數

啟動DS18B20溫度轉換和數據傳輸必須嚴格按照其時序進行,溫度采集函數包括:

InitDs18b20()//啟動DS18B20

WriteDs18b20OneByte()

//寫命令/數據(上下限溫度)

ReadDs18b20Data()

//讀出溫度值(實測溫度/上下限溫度)

Ds18b20DataToString()

//轉換為顯示字符

SetDs18b20AlarmTempe()

///設定上限溫度

DisplayDs18b20AlarmTempe()

///顯示上限溫度

DisplayDs18b20DigitalTempe()

//顯示實測溫度

Draw Ds18b20AlarmTempeLine()

//繪制上限溫度線

DrawDs18b20TempeLine()//繪制實測溫度線

3.3 主函數

主函數包括初始化液晶顯示器,定時/計數器等模塊,而后調用溫度采集,界面顯示等函數。

(1) 初始化

TimerInit()

//T0為定時器,工作方式1,定時每50 ms產生中斷

InitLcdBase()

//液晶顯示器初始化

ClearLcdGdram()

//清液晶顯示器的圖形RAM

(2) 時間/日期設定,日期和靜態指針時鐘顯示

SetClock()

//設定時間

SetDate()

//設定日期

RunDate()

//日期顯示

(3) 主循環

RunDigitalClock()

//動態數字時鐘顯示

每50 ms采樣一次(即每50 ms調用上述溫度采集函數),共采樣6次,利用去極值平均值濾波法得到實測溫度(采樣的6個數據排序后去掉最大值和最小值再平均) [10],顯示實測溫度,繪制曲線,并判斷是否超限。

4 實 驗

系統實際運行結果如圖10~圖13所示。

圖10 系統實際運行結果(一) 圖11 系統實際運行結果(二)

左邊顯示包括:

(1) “12/06/21”為陽歷日期,格式為年/月/日。

(2) “16:59:09”為數字時鐘,格式為小時:分鐘:秒。

(3) “S:30 ℃”代表設定的上限溫度;“<”,“=”,“>”代表上限溫度與實測溫度的大小關系。

(4) “46.84 ℃”, “26.35 ℃”, “31.23 ℃”,

“40.99 ℃”等代表實測溫度。

圖中右邊為溫度曲線和上限溫度線。

時間和溫度上限值可通過程序或鍵盤設定。

實測溫度的誤差范圍(單位:℃)在(-0.5~0.5)/100內,繪制的溫度曲線能夠直觀地反映其變化情況。

圖12 系統實際運行結果(三) 圖13 系統實際運行結果(四)

5 結 論

利用點陣型液晶顯示器和單片機直接接口顯示被測溫度和繪制曲線,可以更直觀地反映其變化趨勢,為后續研究其變化規律奠定基礎。實際運行表明,系統測試精度、曲線繪制、超限報警等功能達到設計要求,整個電路簡單實用,穩定可靠。

參 考 文 獻

[1] 吳健,侯文,鄭賓.基于STC89C52單片機的溫度控制系統[J].電腦知識與技術,2011(4):902903.

[2] 王節旺.一種基于STC89C52RC單片機的計時系統的設計方案[J].微型機與應用,2011,30(6):2830.

[3] 張毅剛,彭喜元.單片機原理與應用設計[M].北京:電子工業出版社,2010.

[4] 孫明利,鮑健,張爍.單總線技術及DS18B20的溫度測量實現[J].大氣與環境光學學報,2010(4):322326.

[5] 陶潔,肖桂鳳,遲權德.基于AT89C52單片機的超聲波測距儀的設計[J].電子設計工程,2012,20(2):135140.

[6] 黃河.基于單總線的數字溫度計設計[J].湘潭師范學院學報:自然科學學報,2008,30(4):6063.

[7] 田開坤.基于LCD12864顯示器的數字示波器設計[J].電子制作,2011(5):3037.

[8] 李金群.基于51單片機的12864液晶圖文顯示研究[J].機電信息,2010(36):139140.

[9] 彭真真.單片機驅動LCD12864顯示的應用

主站蜘蛛池模板: 久久中文字幕不卡一二区| 国产十八禁在线观看免费| 国产综合另类小说色区色噜噜| 九九九精品视频| 久久99蜜桃精品久久久久小说| 为你提供最新久久精品久久综合| 国产精品3p视频| 欧美激情网址| 亚洲色欲色欲www在线观看| 福利一区三区| 亚洲Av激情网五月天| 超级碰免费视频91| 沈阳少妇高潮在线| 亚洲女人在线| 久久精品视频一| 亚洲69视频| 99精品国产高清一区二区| 国产在线一二三区| 成人在线不卡| 欧美日本在线| 特级做a爰片毛片免费69| 97成人在线视频| 无码又爽又刺激的高潮视频| 情侣午夜国产在线一区无码| 国产一级妓女av网站| 好吊妞欧美视频免费| 原味小视频在线www国产| 久久伊人操| 免费人成在线观看成人片 | 国产精品3p视频| 国产色伊人| 日韩av电影一区二区三区四区 | 91久久偷偷做嫩草影院精品| 国产二级毛片| 看看一级毛片| 国产福利2021最新在线观看| 激情在线网| 亚亚洲乱码一二三四区| 国产AV无码专区亚洲A∨毛片| 国产又色又刺激高潮免费看| 亚洲欧美成人综合| 一区二区三区四区日韩| av天堂最新版在线| 久久综合丝袜日本网| 亚洲色精品国产一区二区三区| 亚洲三级a| 久久久久免费精品国产| 亚洲精品动漫| jizz国产视频| 综合社区亚洲熟妇p| 无码内射中文字幕岛国片 | 亚洲色无码专线精品观看| 亚洲福利视频网址| 日日噜噜夜夜狠狠视频| 91亚洲国产视频| 国产无码网站在线观看| 亚洲一级毛片在线播放| 人妻一区二区三区无码精品一区| 欧美激情视频一区二区三区免费| 毛片网站在线播放| 91亚洲精选| 久久婷婷六月| 久久久久久久蜜桃| 国产麻豆永久视频| 国产丝袜无码一区二区视频| 国产女人18水真多毛片18精品| 毛片免费观看视频| 日韩av电影一区二区三区四区 | 久青草免费在线视频| 亚洲欧美日韩动漫| 精品自窥自偷在线看| 国产在线无码av完整版在线观看| 久久久久青草大香线综合精品 | 久久美女精品| 99在线国产| 国产区精品高清在线观看| 亚洲无码37.| 欧美.成人.综合在线| 国产成人精品一区二区三区| 伊人欧美在线| 伊人成人在线| 日韩黄色大片免费看|