lcd顯示的秒表_第1頁(yè)
lcd顯示的秒表_第2頁(yè)
lcd顯示的秒表_第3頁(yè)
lcd顯示的秒表_第4頁(yè)
lcd顯示的秒表_第5頁(yè)
已閱讀5頁(yè),還剩18頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、目錄1 概述21.1 1602LCD研究的歷史背景和意義21.2 1602LCD研究的發(fā)展和現(xiàn)狀22 課題方案設(shè)計(jì)22.1系統(tǒng)設(shè)計(jì)目的22.2系統(tǒng)結(jié)構(gòu)模塊論證22.2.1 顯示部分33 系統(tǒng)硬件設(shè)計(jì)33.1 總體設(shè)計(jì)33.2 單片機(jī)運(yùn)行的最小系統(tǒng)43.2.1 電源電路4晶振電路4復(fù)位電路53.3 顯示電路6引腳說(shuō)明:63.4 單片機(jī)STC89C527主要特性7功能特性概述8主要引腳及芯片基本工作條件說(shuō)明84 系統(tǒng)軟件設(shè)計(jì)94.1 總流程圖94.2 最小系統(tǒng)檢測(cè)電路程序104.3 編程調(diào)試界面114.4 Proteus仿真結(jié)果115軟硬件聯(lián)調(diào)及調(diào)試結(jié)果125.1 實(shí)物圖125.2 調(diào)試結(jié)果14結(jié)

2、束語(yǔ)15參考文獻(xiàn)15附錄2 1602LCD設(shè)計(jì)的秒表PCB圖17附錄3 1602LCD設(shè)計(jì)的秒表Proteus仿真圖17附錄4 1602LCD設(shè)計(jì)的秒表C語(yǔ)言程序清單18附錄5 基于單片機(jī)的1602LCD設(shè)計(jì)的秒表元器件目錄表231 概述1.1 1602LCD研究的歷史背景和意義LCD1602是16字乘以2行的字符型液晶模板。其特點(diǎn)是:(1)位數(shù)多,可顯示32位。(2)顯示內(nèi)容豐富,可顯示所有數(shù)字、字母、符號(hào)等192種ASCII碼對(duì)應(yīng)的字符。(3)程序簡(jiǎn)單1.2 1602LCD研究的發(fā)展和現(xiàn)狀液晶顯示模塊具有體積小、功耗低、顯示內(nèi)容豐富、超薄輕巧等優(yōu)點(diǎn),在袖珍式儀表和低功耗應(yīng)用系統(tǒng)中得到廣泛的

3、應(yīng)用。目前字符型液晶顯示模塊已經(jīng)是單片機(jī)應(yīng)用設(shè)計(jì)中最常用的信息顯示器件。LCD1602液晶顯示模塊,它可以顯示兩行,每行16個(gè)字符,采用單+SV電源供電,外圍電路配置簡(jiǎn)單,價(jià)格便宜,具有很高的性價(jià)比。2 課題方案設(shè)計(jì)2.1系統(tǒng)設(shè)計(jì)目的設(shè)計(jì)一個(gè)單片機(jī)控制的秒表系統(tǒng),利用單片機(jī)的定時(shí)器計(jì)數(shù)器定時(shí)和計(jì)數(shù)的原理,結(jié)合顯示電路、LCD液晶顯示器以及按鍵來(lái)設(shè)計(jì)計(jì)數(shù)器。將軟、硬件有機(jī)地結(jié)合起來(lái),使得系統(tǒng)能夠正確的進(jìn)行加、減計(jì)時(shí),液晶顯示器能夠正確的顯示時(shí)間。使學(xué)生增進(jìn)對(duì)單片機(jī)的感性認(rèn)識(shí),加深對(duì)單片機(jī)理論方面的理解。掌握單片機(jī)的內(nèi)部功能模塊的應(yīng)用,如定時(shí)器/計(jì)數(shù)器、中斷、片內(nèi)外存貯器、I/O口、串行口通訊等。

4、同時(shí)了解和掌握單片機(jī)應(yīng)用系統(tǒng)的軟硬件設(shè)計(jì)過(guò)程、方法及實(shí)現(xiàn),為以后設(shè)計(jì)和實(shí)現(xiàn)單片機(jī)應(yīng)用系統(tǒng)打下良好基礎(chǔ)。 (1)使用集成數(shù)字電路或單片機(jī)作為主控制芯片(2)使用LCD來(lái)顯示現(xiàn)在的時(shí)間,顯示格式為: 上行顯示:Current Time; 下行顯示:時(shí)時(shí):分分:秒秒;(3)具有調(diào)整日期與時(shí)間的功能。2.2系統(tǒng)結(jié)構(gòu)模塊論證系統(tǒng)結(jié)構(gòu)如圖2-1所示。單片機(jī)顯示電路鍵盤電路外圍電路電源電路圖2-1 用1602LCD設(shè)計(jì)的秒表系統(tǒng)框圖2.2.1 顯示部分顯示部分是本次設(shè)計(jì)的重要部分,一般有以下兩種方案:方案一:采用LED顯示,在單片機(jī)應(yīng)用系統(tǒng)中最常用的LED數(shù)碼管為7段數(shù)碼管,可利用LED顯示器靈活地構(gòu)成所要

5、求位數(shù)的顯示,分靜態(tài)顯示和動(dòng)態(tài)顯示。對(duì)于靜態(tài)顯示方式,所需的譯碼驅(qū)動(dòng)裝置很多,引線多而復(fù)雜,且可靠性也較低。而對(duì)于動(dòng)態(tài)顯示方式,雖可以避免靜態(tài)顯示的問(wèn)題,但設(shè)計(jì)上如果處理不當(dāng),易造成亮度低,有閃爍等問(wèn)題。方案二:采用LCD顯示。是一種低功耗顯示器件,具有顯示內(nèi)容豐富、體積小、重量輕、壽命長(zhǎng)、使用方便、安全省電等優(yōu)點(diǎn),在計(jì)算器、萬(wàn)用表、袖珍式儀表和低功耗微機(jī)應(yīng)用系統(tǒng)中得到廣泛使用。其顯示的質(zhì)量高,每個(gè)顯示器每一點(diǎn)在收到信號(hào)后就一直保持那種彩色和亮度,恒定發(fā)光,而不像陽(yáng)極射線管顯示器那樣刷新亮點(diǎn),畫面質(zhì)量高且不閃爍。鑒于上述原因,我們采用方案二。3 系統(tǒng)硬件設(shè)計(jì)3.1 總體設(shè)計(jì)本系統(tǒng)中,硬件電路主

6、要有電源電路,晶振電路,復(fù)位電路,顯示電路以及一些按鍵電路等,本系統(tǒng)采用STC89C52單片機(jī)為中心器件,利用定時(shí)器計(jì)數(shù)器定時(shí)和記數(shù)的原理,結(jié)合硬件電路如電源電路,晶振電路,復(fù)位電路,顯示電路,蜂鳴器電路以及一些按鍵電路等來(lái)設(shè)計(jì)計(jì)數(shù)器,將軟、硬件有機(jī)地結(jié)合起來(lái)。硬件系統(tǒng)采用PROTEUS功能來(lái)實(shí)現(xiàn),簡(jiǎn)單且易于觀察,在仿真中就可以觀察到實(shí)際的工作狀態(tài)。3.2 單片機(jī)運(yùn)行的最小系統(tǒng)3.2.1 電源電路電源電路是系統(tǒng)最基本的部分,任何電路都離不開電源部分,隨著半導(dǎo)體工藝的發(fā)展,穩(wěn)壓電路也采用集成電路器件來(lái)制成??刹捎锚?dú)立的穩(wěn)壓電源。這種供電方式的優(yōu)點(diǎn)是穩(wěn)壓可靠,且有各種成熟電路可供選擇。由集成穩(wěn)壓器

7、具有體積小,外界線路簡(jiǎn)單,使用方便,工作可靠等優(yōu)點(diǎn)。因此,在各種電子設(shè)備中應(yīng)用十分普遍,為了跟上時(shí)代的發(fā)展,可采用W7800系列三端穩(wěn)壓器,主要利用它的輸出電壓是固定的在使用中不能進(jìn)行調(diào)整等優(yōu)點(diǎn)。但這次設(shè)計(jì)為了電源的簡(jiǎn)潔,采用了USB接口為循環(huán)彩燈系統(tǒng)電路提供穩(wěn)定5V的工作電壓這樣能使整體電路更簡(jiǎn)潔,更節(jié)約成本,從而減少硬件設(shè)計(jì)的復(fù)雜性。3.2.2晶振電路STC89C52內(nèi)部的振蕩電路是一個(gè)高增益反相放大器,引腳RXD和TXD分別是此反向振蕩放大器的輸入端和輸出端。該反向放大器可以配置為內(nèi)部方式的片內(nèi)振蕩器。如圖2-2 所示,這里選用12MHE的內(nèi)部振蕩方式,電路如下:電容器C1,C2起穩(wěn)定振

8、蕩頻率,快速起振的作用,C1,C2可在20100PF之間取,這里取30PF,接線時(shí)要使晶振振蕩器盡可能接近單片機(jī)。圖3-1晶體振蕩電路3.2.3復(fù)位電路 采用上電+按鍵復(fù)位電路,上電后,由于電容充電,使RST持續(xù)一段時(shí)間高電平時(shí)間。當(dāng)單片機(jī)已在運(yùn)行之中時(shí),按下復(fù)位按鍵也能使RST持續(xù)一段時(shí)間的高電平,從而實(shí)現(xiàn)上電加開關(guān)復(fù)位的操作。這不僅能時(shí)單片機(jī)復(fù)位,而且還能使單片機(jī)的外圍芯片也同時(shí)復(fù)位,當(dāng)程序出現(xiàn)錯(cuò)誤時(shí),可以隨時(shí)使電路復(fù)位。復(fù)位是單片機(jī)的初始化操作。其主要功能是把PC初始化為0000H,使單片機(jī)從0000H單元開始執(zhí)行程序。除了進(jìn)入系統(tǒng)的正常初始化之外,當(dāng)由于程序運(yùn)行出錯(cuò)或操作錯(cuò)誤使系統(tǒng)處于

9、死鎖狀態(tài)時(shí),為擺脫困境,也需按復(fù)位鍵重新啟動(dòng)。除PC之外,復(fù)位操作還對(duì)其他一些寄存器有影響,它們的復(fù)位狀態(tài)如表1所示。 表1 一些寄存器的復(fù)位狀態(tài)寄存器復(fù)位狀態(tài)寄存器復(fù)位狀態(tài)PC0000HTCON00HACC00HTL000HPSW00HTH000HSP07HTL100HDPTR0000HTH100HP0-P3FFHSCON00HIPXX000000BSBUF不定IE0X000000BPCON0XXX0000BTMOD00H因STC89C52單片機(jī)需高電平(3.75.5V)復(fù)位,且復(fù)位時(shí)流入單片機(jī)的電流不能超過(guò)10mA。具體參數(shù):根據(jù)所需要的復(fù)位參數(shù)可得當(dāng)按下SW鍵時(shí)出現(xiàn)兩個(gè)機(jī)器周期的高電平在

10、單片機(jī)REST端產(chǎn)生的壓降等于:=圖3-2 復(fù)位電路3.3 顯示電路顯示電路既可以選用液晶顯示器,也可以選用數(shù)碼管顯示,我們采用液晶顯示電路1602LCD引腳接口說(shuō)明編號(hào)符號(hào)引腳說(shuō)明編號(hào)符號(hào)引腳說(shuō)明1VSS電源地9D2Data I/O2VDD電源正極10D3Data I/O3VL液晶顯示偏壓信號(hào)11D4Data I/O4RS數(shù)據(jù)命令選擇端口(H/L)12D5Data I/O5R/W讀/寫選擇端(H/L)13D6Data I/O6E使能信號(hào)14D7Data I/O7D1Data I/O15BLA背光源正極8D1Data I/O16BLK背光源負(fù)極引腳說(shuō)明: 3腳:VL,液晶顯示偏壓信號(hào),用于調(diào)整

11、LCD1602的顯示對(duì)比度,一般會(huì)外接電位器用以調(diào)整偏壓信號(hào),此腳電壓為0時(shí)可以得到最強(qiáng)的對(duì)比度。4腳:RS,數(shù)據(jù)/命令選擇端,當(dāng)此腳為高電平時(shí),可以對(duì)1602進(jìn)行數(shù)據(jù)字節(jié)的傳輸操作,而為低電平時(shí),則是進(jìn)行命令字節(jié)的傳輸操作。命令字節(jié),即是用來(lái)對(duì)LCD1602的一些工作方式作設(shè)置的字節(jié);數(shù)據(jù)字節(jié),即使用以在1602上顯示字節(jié)。5腳:R/W,讀寫選擇端。當(dāng)此腳為高電平可對(duì)LCD1602進(jìn)行讀數(shù)據(jù)操作,反之進(jìn)行寫數(shù)據(jù)操作。6腳:E,使能信號(hào),其實(shí)是LCD1602的數(shù)據(jù)控制時(shí)鐘信號(hào),利用該信號(hào)的上升沿實(shí)現(xiàn)對(duì)LCD1602的數(shù)據(jù)傳輸。714腳:8位并行數(shù)據(jù)口,使得對(duì)LCD1602的數(shù)據(jù)讀寫大為方便?;?/p>

12、本操作時(shí)序:(1)讀狀態(tài):輸入:RS=L,RW=H,E=H;輸出:D0D7=狀態(tài)字(2)寫指令:輸入:RS=L,RW=L,D0D7=指令碼,E=高脈沖;輸出:無(wú)(3)讀數(shù)據(jù):輸入:RS=H,RW=H,E=H;輸出:D0D7=數(shù)據(jù)(4)寫數(shù)據(jù):輸入:RS=H,RW=L,D0D7=數(shù)據(jù),E=高脈沖;輸出:無(wú)需要兩個(gè)寫時(shí)序: 當(dāng)我們要寫指令字,設(shè)置LCD1602的工作方式時(shí):需要把RS置為低電平,RW置為低電平,然后將數(shù)據(jù)送到數(shù)據(jù)口D0D7,最后E引腳一個(gè)高脈沖將數(shù)據(jù)寫入。 當(dāng)我們要寫入數(shù)據(jù)字,在1602上實(shí)現(xiàn)顯示時(shí):需要把RS置為高電平,RW置為低電平,然后將數(shù)據(jù)送到數(shù)據(jù)口D0D7,最后E引腳一個(gè)

13、高脈沖將數(shù)據(jù)寫入。3.4 單片機(jī)STC89C52STC89C52是一種帶8K字節(jié)閃爍可編程可檫除只讀存儲(chǔ)器的低電壓,高性能COMOS8的微處理器,具有8K在系統(tǒng)可編程Flash存儲(chǔ)器。3.4.1主要特性STC89C52單片機(jī)采用高性能的靜態(tài)80C51設(shè)計(jì),并采用先進(jìn)工藝制造,還帶有非易失去性FLASH程序儲(chǔ)器。它是一種高性能、低功耗的8位CMOS微處理芯片,市場(chǎng)上應(yīng)用最多。其主要性能如下:(1)8KB Flash ROM,可以擦除1000次以上,數(shù)據(jù)保存10年。(2)256字節(jié)內(nèi)部RAM。(3)電源控制模式:(4)-時(shí)鐘可停止和恢復(fù);空閑模式;-掉電模式。(5)6個(gè)中斷源。(6)4個(gè)中斷優(yōu)先級(jí)

14、。(7)4個(gè)8位I/O口。(8)全雙工增強(qiáng)型UART。(9)3個(gè)16位定時(shí)器/計(jì)數(shù)器:T0、T1、T2。(10)全靜態(tài)工作方式:0-24MHz3.4.2功能特性概述 STC89C52提供以下標(biāo)準(zhǔn)功能:8K字節(jié)Flash閃速存儲(chǔ)器,256字節(jié)內(nèi)部RAM,32個(gè)I/O口線,3個(gè)16位定時(shí)/計(jì)數(shù)器,一個(gè)6向量?jī)杉?jí)中斷結(jié)構(gòu),一個(gè)全雙工串行通信口,片內(nèi)震蕩器及時(shí)鐘電路。同時(shí),STCT89C52可降至0Hz 的靜態(tài)邏輯系操作,并支持兩種軟件可選的節(jié)電工作模式。空閑方式停止CPU的工作,但允許RAM,定時(shí)/計(jì)數(shù)器,串行通信接口及中斷系統(tǒng)繼續(xù)工作。掉電方式保存RAM中的內(nèi)容,但震蕩器停止工作并禁止其他所有部件

15、工作直到下一個(gè)硬件復(fù)位。3.4.3主要引腳及芯片基本工作條件說(shuō)明40個(gè)引腳中,正電源和地線兩根,外置石英振蕩器的時(shí)鐘線兩根,4組8位共32個(gè)I/O口,中斷口線與P3口線復(fù)用。Pin9:RESET/Vpd復(fù)位信號(hào)復(fù)用腳,當(dāng)8052通電,時(shí)鐘電路開始工作,在RESET引腳上出現(xiàn)2個(gè)時(shí)鐘周期以上的高電平,系統(tǒng)即初始復(fù)位。STC89C52的復(fù)位方式可以是自動(dòng)復(fù)位,也可以是手動(dòng)復(fù)位,如圖2 -3 復(fù)位電路。此外RESET/Vpd還是一復(fù)用腳,Vcc掉電其間,此腳可接上備用電源,以保證單片機(jī)內(nèi)部RAM的數(shù)據(jù)不丟失。Pin20、40:分別是單片機(jī)的主電源引腳。20腳是芯片的接地端。40腳則是芯片的電源端。二

16、者是必不可少的,它們是單片機(jī)基本工作的條件。Pin18、19:XTAL1接外部晶振的一個(gè)引腳。在單片機(jī)內(nèi)部,它是上述振蕩器的反相放大器的輸入端。當(dāng)采用外部振蕩時(shí),該引腳接受振蕩器的信號(hào),即把此信號(hào)直接接到內(nèi)部時(shí)鐘發(fā)生器的輸入端。則XTAL2接外部晶振另一個(gè)引腳。在單片機(jī)內(nèi)部它是上述振蕩器的反相放大器的輸出端。采用外部振蕩器時(shí)該引腳應(yīng)該懸空。STC89C51引腳分布圖2-1所示:圖3-3 STC89C52引腳分布圖4 系統(tǒng)軟件設(shè)計(jì)在軟件設(shè)計(jì)中,一般采用模塊化的程序設(shè)計(jì)方法,它具有明顯的優(yōu)點(diǎn)。把一個(gè)多功能的復(fù)雜程序劃分為若干個(gè)簡(jiǎn)單的、功能單一的程序模塊,有利于程序的設(shè)計(jì)和調(diào)試,有利于程序的優(yōu)化和分

17、工,提高了程序的閱讀性和可靠性,使程序的結(jié)構(gòu)層次一目了然。4.1 總流程圖如圖4-1所示。圖4-1 系統(tǒng)總流程圖4.2 最小系統(tǒng)檢測(cè)電路程序#include<reg52.h>#include<intrins.h>#define uchar unsigned char#define uint unsigned int uchar aa;void delay(uint z)uint x,y;for(x=z;x>0;x-)for(y=110;y>0;y-);void main()aa=0xf7;while(1)P2=aa;delay(200);aa=_crol_(

18、aa,1);4.3 編程調(diào)試界面Keil C51 軟件是目前最流行的開發(fā)8051系列的單片機(jī)的軟件工具。Keil C51提供了包括C語(yǔ)言編譯器,宏匯編,連接器,庫(kù)管理和一個(gè)功能強(qiáng)大的仿真調(diào)試器等在內(nèi)的完整開發(fā)方案,通過(guò)一個(gè)集成開發(fā)環(huán)境uVision3 IDE將這些部分結(jié)合起來(lái)。4.4 Proteus仿真結(jié)果Labcenter Electronics 公司推出的Proteus 套件,可以對(duì)基于微機(jī)控制器的設(shè)計(jì)連同所有的周圍電子器件一起仿真。用戶實(shí)時(shí)采用LCD,鍵盤,RS232終端等動(dòng)態(tài)外設(shè)模型來(lái)設(shè)計(jì)進(jìn)行交互仿真。5軟硬件聯(lián)調(diào)及調(diào)試結(jié)果5.1 實(shí)物圖5.2 調(diào)試結(jié)果結(jié)束語(yǔ)通過(guò)單片機(jī)課程設(shè)計(jì),我不僅

19、加深了對(duì)單片機(jī)理論的理解,將理論很好地應(yīng)用到實(shí)際當(dāng)中去,而且我還學(xué)會(huì)了如何去培養(yǎng)我們的創(chuàng)新精神,從而不斷地戰(zhàn)勝自己,超越自己。創(chuàng)新,是要我們學(xué)會(huì)將理論很好地聯(lián)系實(shí)際,并不斷地去開動(dòng)自己的大腦,從為人類造福的意愿出發(fā),做自己力所能及的,別人卻沒(méi)想到的事。使之不斷地戰(zhàn)勝別人,超越前人。同時(shí),更重要的是,我在這一設(shè)計(jì)過(guò)程中,學(xué)會(huì)了堅(jiān)持不懈,不輕易言棄。設(shè)計(jì)過(guò)程,也好比是我們?nèi)祟惓砷L(zhǎng)的歷程,常有一些不如意,也許這就是在對(duì)我們提出了挑戰(zhàn),勇敢過(guò),也戰(zhàn)勝了,勝利的鐘聲也就一定會(huì)為我們而敲響。這個(gè)設(shè)計(jì)過(guò)程中,我遇到過(guò)許多次失敗的考驗(yàn),就比如,自己對(duì)實(shí)際生活中的交通秩序的不了解給整個(gè)設(shè)計(jì)帶來(lái)的困擾,真想要就此

20、罷休,然而,就在想要放棄的那一刻,我明白了,原來(lái)結(jié)果并不那么重要,我們更應(yīng)該注重的是這一整個(gè)過(guò)程。于是,我堅(jiān)持了下來(lái)。當(dāng)然最終,這個(gè)設(shè)計(jì)很成功,主要體現(xiàn)在,程序簡(jiǎn)單易讀,結(jié)構(gòu)清楚,最重要的是成本低。在設(shè)計(jì)一個(gè)系統(tǒng),除了達(dá)到所要求的性能指標(biāo)以外,成本也是很重要的一個(gè)指標(biāo)。成本的高低也決定了產(chǎn)品的適用性。 參考文獻(xiàn)1張大明.單片機(jī)控制實(shí)訓(xùn)指導(dǎo)及綜合應(yīng)用實(shí)訓(xùn)M. 北京:機(jī)械工業(yè)出版社,20082陳益飛.單片機(jī)原理及應(yīng)用技術(shù).北京M:國(guó)防工業(yè)出版社,20113張偉.張杰編著.單片機(jī)原理及應(yīng)用.北京M:機(jī)械工業(yè)出版社,20074孫余凱. 精選實(shí)用電子電路260例M. 北京:電子工業(yè)出版社.,2007.6

21、5殷春浩,崔亦飛. 電磁測(cè)量原理及應(yīng)用M. 徐州:中國(guó)礦業(yè)大學(xué)出版社, 2003.76陸廣平.單片機(jī)原理與接口技術(shù)課程設(shè)計(jì)實(shí)驗(yàn)指導(dǎo)書M7陳益飛.單片機(jī)原理及應(yīng)用技術(shù)M.北京:國(guó)防工業(yè)出版社.2010,108丁元杰單片機(jī)原理及應(yīng)用M.北京:機(jī)械工業(yè)出版社.2005附錄附錄1 1602LCD設(shè)計(jì)的秒表原理圖附錄2 1602LCD設(shè)計(jì)的秒表PCB圖附錄3 1602LCD設(shè)計(jì)的秒表Proteus仿真圖附錄4 1602LCD設(shè)計(jì)的秒表C語(yǔ)言程序清單#include <reg51.h>#include <intrins.h>#define uchar unsigned char#d

22、efine unit unsigned int #define delayNOP() _nop_();_nop_();_nop_();_nop_();/LCD 控制void LCD_Initialize();void LCD_Set_POS(uchar);void LCD_Write_Data(uchar);void Display_String(uchar *,uchar);sbit K1=P10;sbit K2=P11;sbit BEEP=P30;sbit LCD_RS=P20;sbit LCD_RW=P21;sbit LCD_EN=P22;uchar KeyCount=0;uchar c

23、ode msg1="Second Watch 0"uchar code msg2=">>>> "uchar code Prompts16= ":1-> ", ":1-> :2 ", ":1->2 :3-> ", ":1->2 :3->4"/計(jì)時(shí)緩沖與顯示緩沖uchar Time_Buffer =0,0,0,0;uchar LCD_Display_Buffer="00:00:00:00"/蜂鳴器vo

24、id Beep() uchar i,j=70; for (i=0;i<180;i+) while(-j);BEEP=BEEP;BEEP=0;/延時(shí)void DelayX(unit ms) uchar i; while(ms-) for(i=0;i<120;i+);/顯示計(jì)時(shí)void Show_Second() uchar i; LCD_Set_POS(0x45);/設(shè)置LCD顯示起點(diǎn) for(i=3;i!=0xff;i-) /將兩位整數(shù)的1/100s,秒,分,時(shí)轉(zhuǎn)換為8位數(shù)字字符 LCD_Display_Buffer2*i+1=Time_Bufferi/10+'0'

25、 LCD_Display_Buffer2*i =Time_Bufferi%10+'0' /在i=3,2,1,0時(shí)分別顯示時(shí),分,秒,1、100s LCD_Write_Data(LCD_Display_Buffer2*i+1); LCD_Write_Data(LCD_Display_Buffer2*i); LCD_Write_Data(':'); /Time0中斷 void Time0() interrupt 1 using 0 TH0=-10000/256; TL0=-10000%256; Time_Buffer0+; if(Time_Buffer0=100)

26、Time_Buffer0=0; Time_Buffer1+; if(Time_Buffer1=60) /秒 Time_Buffer1=0;Time_Buffer2+; if(Time_Buffer2=60) /分 Time_Buffer2=0;Time_Buffer3+; if(Time_Buffer3=24) /時(shí) Time_Buffer3=0; /主函數(shù) void main() uchar i; IE=0x82; TMOD=0x01; TH0=-10000/256; TL0=-10000%256; LCD_Initialize(); Display_String(msg1,0x00); D

27、isplay_String(msg2,0x40); while(1) if(K1=0) DelayX(100); i=+KeyCount; switch(i) case 1: case 3:TR0 =1; Display_String(Promptsi-1,0); break; case 2: case 4:TR0 =0; Display_String(Promptsi-1,0); break;default:TR0=0; break;while (K1=0) ; /等待釋放K1鍵Beep();elseif(K2=0)TR0=0;KeyCount=0;for(i=0;i<4;i+) Ti

28、me_Bufferi=0; /清零計(jì)時(shí)緩沖 Display_String(msg1,0);Beep();DelayX(100);while (K2=0) ; /等待釋放K2鍵Show_Second();/1602LCD顯示驅(qū)動(dòng)函數(shù) e#include<reg51.h>#include<intrins.h>#define uchar unsigned char#define uint unsigned int#define DelayNOP()_nop_();_nop_();_nop_();_nop_();bit LCD_Busy_Check();void LCD_Initialize();void LCD_Set_POS(uchar);void LCD_Write_Command(uchar); void LCD_Write_Data(uchar);/延時(shí)void DelayMS(uint ms)uchar t;while(ms-)for (t=0;t<120;t+);/LCD忙檢查bit LCD_Bus

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論