亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于STC12C單片機的圖文菜單系統(tǒng)設計*

        2014-07-25 07:43:18周鵬
        網絡安全與數據管理 2014年5期
        關鍵詞:液晶圖文顯示器

        周鵬

        (華僑大學 信息學院,福建 廈門 361021)

        圖文菜單界面是一種操作簡便、高效的交互形式,現已在各類嵌入式應用系統(tǒng)中廣泛采用,如智能電子產品(智能測試儀、智能手機),它成為系統(tǒng)功能的”標準配置”。隨著單片機功能的提高和帶中文字庫的液晶顯示器成本降低,單片機系統(tǒng)上應用圖文菜單已成為可能[1]。

        本文設計了基于 STC12C5A60S2(簡稱 STC12C)單片機的圖文菜單交互式系統(tǒng),系統(tǒng)以圖文菜單驅動系統(tǒng)功能(時間顯示、溫度顯示和周期/頻率顯示),系統(tǒng)操作直觀、簡便。

        1 系統(tǒng)硬件設計

        系統(tǒng)由內置增強型8051的STC12C單片機、數字溫度傳感器DS18B20、時鐘芯片DS1302、液晶顯示器LCD12864(ST7920)和獨立鍵盤電路組成,如圖 1所示。STC12C單片機運行交互式程序,是系統(tǒng)的核心;數字溫度傳感器測試溫度;時鐘芯片輸出時間;單片機內置的可編程計數器陣列模塊(PCA)用于測周期/頻率;液晶顯示器顯示系統(tǒng)界面和被測參數。

        圖1 系統(tǒng)硬件框圖

        1.1 單片機系統(tǒng)

        單片機系統(tǒng)由STC12C單片機、時鐘電路和復位電路組成,如圖2所示。STC12C單片機主要參數如下[2]:內置60 KB的Flash程序存儲器;片內集成1 280 B數據存儲器;2個 16 bit定時器/計數器,內置兩路 PCA模塊,可用于外部脈沖的捕捉、軟件定時和高速輸出,即實現外部信號的周期/頻率測試。

        1.2 測周期/頻率電路

        測周期/頻率電路由STC12C單片機內置兩路可編程計數器陣列(PCA)模塊構成,PCA工作在捕捉模式時實現,如圖3所示。

        圖2 STC12C單片機系統(tǒng)結構圖

        PCA測周期/頻率的原理為[3]:將 CAPPn或 CAPNn(n=0,1)置 1,外部信號由 P1.3(n=0)或 P1.4(n=1)輸入,同時將 CCON中的 CCFn(n=0,1)和 CCAPMn中的ECCFn(n=0,1)置 1,當電路采樣到外部信號的邊跳沿(上跳沿、下跳沿或上/下沿),則引起中斷。如設置為上跳沿中斷,當信號的第1個上跳沿來到,引起中斷觸發(fā)定時器T1計數;當信號的第2個上跳沿來到,引起中斷觸發(fā)定時器T1停止計數;讀取計數值,根據機器周期算出被測信號的周期和頻率。

        圖3 PCA模塊結構原理圖

        1.3 數字測溫/時鐘電路

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

        圖4 DS18B20數字測溫電路

        時鐘電路由時鐘芯片DS1302組成,如圖5所示。它是一種高性能、低功耗、采用三線接口的實時時鐘電路,可對時間和日期進行計時[5]。

        圖5 DS1302時鐘電路

        1.4 液晶顯示電路

        顯示器選用帶中文字庫、內置ST7920控制芯片的液晶顯示器LCD12864,實現系統(tǒng)的圖文界面和運行狀態(tài)顯示,是重要的硬件接口。LCD12864與單片機接口電路如圖6所示。

        圖6 LCD12864與單片機接口電路

        LCD12864由 DDRAM(顯示數據 RAM)、CGROM(字型產生ROM)、CGRAM (自定義字型產生 RAM)和GDRAM(繪圖 RAM)等組成[6],DDRAM 和 GDRAM 是本系統(tǒng)圖文菜單顯示的主要模塊。

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

        表1 屏幕AC地址與DDRAM地址的對應關系表

        GDRAM提供64×32 B的空間,實際可控制 128×64點陣的二維繪圖緩沖空間。GDRAM的二維地址與液晶屏幕坐標的對應關系如圖7所示。

        1.5 鍵盤/報警電路

        鍵盤電路由3個獨立按鍵組成,分別對應菜單的圖標上下移動、確定和返回功能,如圖8所示。系統(tǒng)以巡回方式查詢是否有鍵按下并由軟件判定是何鍵按下,并執(zhí)行相應的功能。

        圖7 GDRAM二維地址與屏幕坐標的對應關系圖

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

        圖8 獨立鍵盤電路

        圖9 報警電路

        2 系統(tǒng)軟件設計

        程序采用模塊化設計,流程框圖如圖10所示。

        圖10 程序流程框圖

        系統(tǒng)主要函數如下。

        2.1 液晶顯示器函數

        液晶顯示器函數包括液晶顯示器底層驅動函數、中西文字符顯示函數和打點/繪線函數。

        (1)驅動函數

        TestLcdIdle()、WriteLcdCommand()、WriteLcdData()和ReadLcdData()分別為液晶顯示器的忙檢測、寫入命令、寫入數據和讀出數據。

        (2)中西文字符顯示函數

        Set DdramDot、DisplayDdramChar()和 DrawGdramSelfChar()分別為設定顯示中文字符的坐標起點、中西文字符顯示和自定義字符顯示。

        (3)打點/繪線函數

        SetGdramDot()、DrawGdramLine()和 DrawGdramCircle()分別為描點、畫線和畫圓。

        2.2 DS18B20測溫函數

        DS18B20測溫函數包括啟動溫度轉換函數、讀寫數據函數和字符轉換函數。

        InitDs18b20()、WriteOneByte()、ReadData()、DataToString()和 DisplayTEMP()分別為啟動 DS18B20、寫命令/數據、讀出溫度(實測溫度/上下限溫度)、轉換為顯示字符以及顯示實測溫度/上限溫度。

        2.3 菜單操作函數

        菜單操作函數包括菜單/圖標顯示函數、鍵值獲取函數以及相應的跳轉函數。

        InitMenu()、ShowMenu()、GetKeyValue()和 GetUserChoose()分別為初始化菜單(定義一個結構體,內含菜單項目數,函數指針和父/子菜單指針)、菜單界面顯示、判定/獲取鍵值函數(狀態(tài)機方式實現[1],以提高系統(tǒng)運行效率)以及調用與鍵值相關函數。

        3 實驗及結論

        系統(tǒng)實際運行結果如圖11所示。

        圖11 系統(tǒng)實際運行

        (1)圖 11(a)中的圖標 指向“時 間顯示”,按 下“確定”鍵(P23)后,即跳轉到時間顯示(圖 11(b))。 圖 11(b)中,陽歷日期的格式為年/月/日;數字時鐘的格式為小時:分鐘:秒;指針時鐘的圓心以屏幕坐標(0,0)為起點,坐標是(96,32),時鐘半徑為 31;秒/分/時針與實時數字時鐘對應;初始時間可通過程序設定;按 “返回”(P24)即可跳回菜單界面。

        圖11(d)中,“29.07℃”代表實測溫度值;“S:25℃”代表設定的上限溫度值;溫度曲線中的實線為實測點繪制,虛線為上限溫度值,曲線直觀地反映了實時溫度變化情況。

        圖11(f)中,被測信號為信號發(fā)生器輸出的方波,周期為 100 μs~1 000 μs, 幅值為+5 V;T 為周期,f為頻率;所繪方波為被測信號的示意波形,每刻度一個周期;所測周期誤差≤5 μs。

        實驗表明,基于STC12C單片機的圖文菜單系統(tǒng)采用模塊設計,系統(tǒng)運行穩(wěn)定可靠。系統(tǒng)操作直觀、簡便,功能達到預期目標,為下一步開發(fā)多級菜單系統(tǒng)奠定了基礎。

        [1]賈志成,程敏,宋濤,等.基于狀態(tài)機的 LCD多級菜單設計[J].單片機與嵌入式系統(tǒng)應用,2012(2):73-75.

        [2]劉晉,王政林,薛凱方.基于STC12C5A60S2單片機的LED 顯示屏硬件設計[J].微型機與應用,2011,30(22):24-27.

        [3]陳桂友.增強型 8051單片機實用開發(fā)技術[M].北京:北京航空航天大學出版社,2010.

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

        [5]黃明強.DS1302在單片機系統(tǒng)中的應用[J].保定師范??茖W校學報,2004,17(2):30-33.

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

        猜你喜歡
        液晶圖文顯示器
        畫與理
        不可壓液晶方程組的Serrin解
        把顯示器“穿”在身上
        科學大眾(2021年9期)2021-07-16 07:02:46
        《液晶與顯示》征稿簡則
        液晶與顯示(2020年8期)2020-08-08 07:01:46
        一種新型點陣顯示器的設計
        電子制作(2019年24期)2019-02-23 13:22:32
        感應式帶電顯示器抗干擾處理
        電子測試(2018年13期)2018-09-26 03:29:36
        液晶與顯示2015年第30卷第1期 目錄
        液晶與顯示(2015年1期)2015-02-28 21:15:54
        液晶與顯示2014年第29卷第2期 目錄
        液晶與顯示(2014年2期)2014-02-28 21:11:05
        圖文配
        海外英語(2013年9期)2013-12-11 09:03:36
        圖文配
        海外英語(2013年10期)2013-12-10 03:46:22
        欧美精品AⅤ在线视频| 狠狠躁夜夜躁av网站中文字幕 | 欧美成人一区二区三区| 精品乱码久久久久久中文字幕| 久久噜噜噜| 99久久亚洲精品加勒比| 亚洲av网一区二区三区成人| 在线观看 国产一区二区三区| 亚洲精品乱码久久久久久不卡| 777精品久无码人妻蜜桃| 久久久久久人妻一区二区三区| 日韩第四页| 免费一区二区三区av| 日韩av一区二区三区高清| 国产精品人成在线观看免费| www国产亚洲精品久久麻豆| 人人爽久久涩噜噜噜丁香| 国产乱人伦精品一区二区| 国产精品无码片在线观看| 丰满少妇棚拍无码视频| 长腿丝袜在线观看国产| 91色老久久偷偷精品蜜臀懂色| 国产99一区二区三区四区| 色欲aⅴ亚洲情无码av| 国产精品jizz在线观看老狼| 中文字幕在线日韩| 国产大屁股白浆一区二区三区| 一区在线视频免费播放| 扒开腿狂躁女人爽出白浆| 国产全肉乱妇杂乱视频| 久久久久久亚洲AV成人无码国产| 国产自产21区激情综合一区| 国产精品美女主播一区二区| 无人区乱码一区二区三区| 在线看片免费人成视频久网下载| 区二区欧美性插b在线视频网站| 精品一区二区三区久久久| 国产精品一区又黄又粗又猛又爽| 在线视频中文字幕一区二区三区| 欧美精品videosex极品| 亚洲av中文无码字幕色三|