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

        ?

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

        2014-07-25 07:43:18周鵬
        關(guān)鍵詞:單片機(jī)系統(tǒng)

        周鵬

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

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

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

        1 系統(tǒng)硬件設(shè)計(jì)

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

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

        1.1 單片機(jī)系統(tǒng)

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

        1.2 測(cè)周期/頻率電路

        測(cè)周期/頻率電路由STC12C單片機(jī)內(nèi)置兩路可編程計(jì)數(shù)器陣列(PCA)模塊構(gòu)成,PCA工作在捕捉模式時(shí)實(shí)現(xiàn),如圖3所示。

        圖2 STC12C單片機(jī)系統(tǒng)結(jié)構(gòu)圖

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

        圖3 PCA模塊結(jié)構(gòu)原理圖

        1.3 數(shù)字測(cè)溫/時(shí)鐘電路

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

        圖4 DS18B20數(shù)字測(cè)溫電路

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

        圖5 DS1302時(shí)鐘電路

        1.4 液晶顯示電路

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

        圖6 LCD12864與單片機(jī)接口電路

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

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

        表1 屏幕AC地址與DDRAM地址的對(duì)應(yīng)關(guān)系表

        GDRAM提供64×32 B的空間,實(shí)際可控制 128×64點(diǎn)陣的二維繪圖緩沖空間。GDRAM的二維地址與液晶屏幕坐標(biāo)的對(duì)應(yīng)關(guān)系如圖7所示。

        1.5 鍵盤/報(bào)警電路

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

        圖7 GDRAM二維地址與屏幕坐標(biāo)的對(duì)應(yīng)關(guān)系圖

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

        圖8 獨(dú)立鍵盤電路

        圖9 報(bào)警電路

        2 系統(tǒng)軟件設(shè)計(jì)

        程序采用模塊化設(shè)計(jì),流程框圖如圖10所示。

        圖10 程序流程框圖

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

        2.1 液晶顯示器函數(shù)

        液晶顯示器函數(shù)包括液晶顯示器底層驅(qū)動(dòng)函數(shù)、中西文字符顯示函數(shù)和打點(diǎn)/繪線函數(shù)。

        (1)驅(qū)動(dòng)函數(shù)

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

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

        Set DdramDot、DisplayDdramChar()和 DrawGdramSelfChar()分別為設(shè)定顯示中文字符的坐標(biāo)起點(diǎn)、中西文字符顯示和自定義字符顯示。

        (3)打點(diǎn)/繪線函數(shù)

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

        2.2 DS18B20測(cè)溫函數(shù)

        DS18B20測(cè)溫函數(shù)包括啟動(dòng)溫度轉(zhuǎn)換函數(shù)、讀寫數(shù)據(jù)函數(shù)和字符轉(zhuǎn)換函數(shù)。

        InitDs18b20()、WriteOneByte()、ReadData()、DataToString()和 DisplayTEMP()分別為啟動(dòng) DS18B20、寫命令/數(shù)據(jù)、讀出溫度(實(shí)測(cè)溫度/上下限溫度)、轉(zhuǎn)換為顯示字符以及顯示實(shí)測(cè)溫度/上限溫度。

        2.3 菜單操作函數(shù)

        菜單操作函數(shù)包括菜單/圖標(biāo)顯示函數(shù)、鍵值獲取函數(shù)以及相應(yīng)的跳轉(zhuǎn)函數(shù)。

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

        3 實(shí)驗(yàn)及結(jié)論

        系統(tǒng)實(shí)際運(yùn)行結(jié)果如圖11所示。

        圖11 系統(tǒng)實(shí)際運(yùn)行

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

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

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

        實(shí)驗(yàn)表明,基于STC12C單片機(jī)的圖文菜單系統(tǒng)采用模塊設(shè)計(jì),系統(tǒng)運(yùn)行穩(wěn)定可靠。系統(tǒng)操作直觀、簡(jiǎn)便,功能達(dá)到預(yù)期目標(biāo),為下一步開(kāi)發(fā)多級(jí)菜單系統(tǒng)奠定了基礎(chǔ)。

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

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

        [3]陳桂友.增強(qiáng)型 8051單片機(jī)實(shí)用開(kāi)發(fā)技術(shù)[M].北京:北京航空航天大學(xué)出版社,2010.

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

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

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

        猜你喜歡
        單片機(jī)系統(tǒng)
        Smartflower POP 一體式光伏系統(tǒng)
        WJ-700無(wú)人機(jī)系統(tǒng)
        ZC系列無(wú)人機(jī)遙感系統(tǒng)
        基于單片機(jī)的SPWM控制逆變器的設(shè)計(jì)與實(shí)現(xiàn)
        電子制作(2019年13期)2020-01-14 03:15:28
        基于PowerPC+FPGA顯示系統(tǒng)
        基于單片機(jī)的層次漸變暖燈的研究
        電子制作(2019年15期)2019-08-27 01:12:10
        基于單片機(jī)的便捷式LCF測(cè)量?jī)x
        電子制作(2019年9期)2019-05-30 09:42:02
        半沸制皂系統(tǒng)(下)
        小議PLC與單片機(jī)之間的串行通信及應(yīng)用
        電子制作(2018年12期)2018-08-01 00:48:04
        連通與提升系統(tǒng)的最后一塊拼圖 Audiolab 傲立 M-DAC mini
        中国凸偷窥xxxx自由视频| 人妻少妇中文字幕,久久精品| 欧美性白人极品1819hd| 亚洲国产精品久久久久婷婷老年| 青草热久精品视频在线观看| 国产精品亚洲av国产| 国产亚洲成人精品久久久| 亚洲精品久久久av无码专区| av无码久久久久久不卡网站| 男女高潮免费观看无遮挡| 女人18毛片aa毛片免费| 亚洲精品国产精品国自产| 粗一硬一长一进一爽一a级| 成美女黄网站18禁免费| 日本一区二区三区四区啪啪啪| 国产免费爽爽视频在线观看| 激情另类小说区图片区视频区| 精品黑人一区二区三区| 成人影院视频在线免费观看| 777亚洲精品乱码久久久久久| 秋霞影院亚洲国产精品| 一本色道久久88综合亚精品| 亚洲综合国产成人丁香五月激情| 97精品国产手机| 最新亚洲无码网站| 国产在线av一区二区| 最新日本一道免费一区二区| xxxx国产视频| 蜜桃在线观看免费高清| 久久综合伊人77777麻豆| 亚洲成av人片在线观看无码| 亚洲香蕉毛片久久网站老妇人| 日韩精品一二三区乱码| 丰满少妇a级毛片野外| 亚洲中文字幕久久精品蜜桃| 国产一区二区白浆在线观看| 中文字幕亚洲综合久久菠萝蜜| 国产亚洲日韩欧美一区二区三区| 在线观看黄片在线播放视频| 免费的日本一区二区三区视频| 亚洲av无码不卡|