2023年全國碩士研究生考試考研英語一試題真題(含答案詳解+作文范文)_第1頁
已閱讀1頁,還剩31頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、<p><b>  單片機(jī)課程設(shè)計(jì)</b></p><p>  姓 名: *** 學(xué) 號(hào): ***** </p><p>  專 業(yè):    自動(dòng)化 </p><p>  題 目: 單片機(jī)電秒計(jì)時(shí)器

2、 </p><p>  專 題: 單片機(jī)系統(tǒng)設(shè)計(jì) </p><p>  指導(dǎo)教師: ** </p><p>  設(shè)計(jì)地點(diǎn): *** 時(shí) 間: *** </p>

3、<p><b>  2011 年 6月</b></p><p>  單片機(jī)課程設(shè)計(jì)任務(wù)書</p><p>  專業(yè)年級(jí) **** 學(xué)號(hào) *** 學(xué)生姓名 ***** </p><p>  任務(wù)下達(dá)日期: 2011 年 6 月 18日</p><p>  設(shè)計(jì)日期: 2011年6月18

4、日 至 2011年 6月28日</p><p>  設(shè)計(jì)題目:?jiǎn)纹瑱C(jī)電秒計(jì)時(shí)器</p><p>  設(shè)計(jì)專題題目:?jiǎn)纹瑱C(jī)系統(tǒng)設(shè)計(jì)</p><p><b>  設(shè)計(jì)主要內(nèi)容:</b></p><p>  通過單片機(jī)系統(tǒng)實(shí)現(xiàn)秒表計(jì)時(shí)功能,可以進(jìn)行暫停計(jì)時(shí)、恢復(fù)計(jì)時(shí)、設(shè)定時(shí)間和清零等操作。</p><p&g

5、t;<b>  設(shè)計(jì)要求:</b></p><p>  系統(tǒng)上電,數(shù)碼管顯示“99”.</p><p>  每隔1秒,數(shù)碼管顯示減1,減小到“00”后,數(shù)碼管顯示“00”,同時(shí)繼電器開啟。</p><p>  設(shè)置按鍵S13,當(dāng)S13按下時(shí),秒表計(jì)時(shí)停止,數(shù)碼管顯示當(dāng)前數(shù)值,再次按下時(shí)恢計(jì)時(shí)。</p><p>  當(dāng)停止

6、計(jì)時(shí)時(shí),按下S14鍵,可以設(shè)置秒數(shù),按鍵S1-S10分別對(duì)應(yīng)數(shù)字0-9;先輸入數(shù)字為十位數(shù),后輸入數(shù)字為個(gè)位數(shù),若輸入數(shù)字大于99,數(shù)碼管顯示“99”。按下S13鍵啟動(dòng)計(jì)時(shí)。</p><p>  設(shè)置按鍵S15,當(dāng)S15按下時(shí),數(shù)碼管顯示為“99”,秒表從新開始計(jì)時(shí)。</p><p>  考試過程中,應(yīng)使用硬件平臺(tái)指定的資源進(jìn)行設(shè)計(jì)。</p><p><b&g

7、t;  指導(dǎo)教師簽字:</b></p><p><b>  摘 要</b></p><p>  單片機(jī)極高的性能價(jià)格比,受到人們的重視和關(guān)注,應(yīng)用很廣、發(fā)展很快,51單片機(jī)是各單片機(jī)中最為典型和最有代表性的一種。本實(shí)驗(yàn)是基于MCS51系列單片機(jī)所設(shè)計(jì)的,可以實(shí)現(xiàn)鍵盤按鍵與數(shù)字動(dòng)態(tài)顯示并可以倒數(shù)的計(jì)數(shù)器。本設(shè)計(jì)基于單片機(jī)技術(shù)原理,以單片機(jī)芯片AT89C51作

8、為核心控制器,通過硬件電路的制作以及軟件程序的編制,設(shè)計(jì)制作出一個(gè)電秒計(jì)時(shí)器,包括以下功能:通過單片機(jī)系統(tǒng)實(shí)現(xiàn)秒表計(jì)時(shí)功能,可以進(jìn)行暫停計(jì)時(shí)、恢復(fù)計(jì)時(shí)、設(shè)定時(shí)間和清零等操作。該計(jì)數(shù)器系統(tǒng)主要由計(jì)數(shù)器模塊、LCD顯示器模塊、鍵盤模塊、復(fù)位模塊等部分組成。</p><p>  關(guān) 鍵 詞:AT89C51單片機(jī)、 C語言編程、鍵盤模塊、LCD顯示器</p><p><b>  目

9、 錄</b></p><p>  1 理論設(shè)計(jì)…………………………………………………..…..1</p><p>  1.1系統(tǒng)設(shè)計(jì)要求…………………………………………..…..1</p><p>  2 AT89C51介紹……………………………………….……….…….2</p><p>  2.1引腳定義及功能……………………

10、………………………3</p><p>  2.2 I/O端口功能………………………………………………4</p><p>  3 系統(tǒng)硬件介紹……………………………………………………8</p><p>  3.1單片機(jī)最小系統(tǒng)……………………………………………8</p><p>  3.2復(fù)位電路……………………………………………………9<

11、;/p><p>  3.3時(shí)鐘電路……………………………………………………10</p><p>  3.4顯示電路……………………………………………………10</p><p>  3.5鍵控電路……………………………………………………12</p><p>  4 軟件設(shè)計(jì)…………………………………………………………13</p>&l

12、t;p>  4.1 基本任務(wù) ………………………………………………13</p><p>  4.2 按鍵定義及顯示標(biāo)志……………………………………13</p><p>  4.3 主程序框圖………………………………………………13</p><p><b>  5小結(jié)15</b></p><p><b>

13、;  參考文獻(xiàn):16</b></p><p><b>  附錄17</b></p><p>  附錄一 單片機(jī)印刷電路板原理圖17</p><p>  附錄二 元件清單18</p><p>  附錄三程序代碼20</p><p><b>  1 理論設(shè)計(jì)</b

14、></p><p><b>  1.1系統(tǒng)設(shè)計(jì)要求</b></p><p>  (1)該倒計(jì)時(shí)器應(yīng)具有基本倒時(shí)功能;</p><p> ?。?)具有暫停,復(fù)位功能;</p><p>  (3)時(shí)間可以任意調(diào)整;</p><p>  (4)時(shí)間用數(shù)碼管顯示,初始值為99S,掃描時(shí)間為1S。&l

15、t;/p><p>  采用單片機(jī)程序設(shè)計(jì)制作,它是利用芯片AT89S51的特殊功能,上電兩個(gè)數(shù)碼管將顯示99,P3口控制4X4矩陣按鍵開關(guān),輸入數(shù)字。通過P0口對(duì)兩片74HC273進(jìn)行控制,一片輸出字型碼,一片輸出字位碼。P2.4和P2.5控制74HC02,來確定字位和字形碼地址。其系統(tǒng)框圖如圖1所示。</p><p>  2 AT89C51介紹</p><p>  A

16、T89C51是美國ATMEL公司生產(chǎn)的AT89系列單片機(jī)中的一種,它與MCS-51系列的許多機(jī)種都具有兼容性,并具有廣泛的代表性。AT89C51是一種帶4K字節(jié)閃爍可編程可擦除只讀存儲(chǔ)器(FPEROM—Flash Programmable and Erasable Read Only Memory)的低電壓,高性能CMOS 8位微處理器,俗稱單片機(jī)。AT89C2051是一種帶2K字節(jié)閃爍可編程可擦除只讀存儲(chǔ)器的單片機(jī)。單片機(jī)的可擦除只讀

17、存儲(chǔ)器可以反復(fù)擦除100次。該器件采用ATMEL高密度非易失存儲(chǔ)器制造技術(shù)制造,與工業(yè)標(biāo)準(zhǔn)的MCS-51指令集和輸出管腳相兼容。由于將多功能8位CPU和閃爍存儲(chǔ)器組合在單個(gè)芯片中,ATMEL的AT89C51是一種高效微控制器,AT89C2051是它的一種精簡(jiǎn)版本。AT89C單片機(jī)為很多嵌入式控制系統(tǒng)提供了一種靈活性高且價(jià)廉的方案。</p><p>  AT89C51的特點(diǎn)</p><p>

18、  與MCS-51 兼容 </p><p>  4K字節(jié)可編程閃爍存儲(chǔ)器 </p><p>  壽命:1000寫/擦循環(huán)</p><p>  數(shù)據(jù)保留時(shí)間:10年</p><p>  全靜態(tài)工作:0Hz-24MHz</p><p><b>  三級(jí)程序存儲(chǔ)器鎖定</b></p>&l

19、t;p>  128×8位內(nèi)部RAM</p><p><b>  32可編程I/O線</b></p><p>  兩個(gè)16位定時(shí)器/計(jì)數(shù)器</p><p><b>  5個(gè)中斷源 </b></p><p><b>  可編程串行通道</b></p>

20、<p>  低功耗的閑置和掉電模式</p><p>  片內(nèi)振蕩器和時(shí)鐘電路 </p><p>  2.1引腳定義及功能</p><p>  AT89C51有40條引腳,與其他51系列單片機(jī)引腳是兼容的。這40條引腳可分為I/O端口線、電源線、控制線、外接晶體線四部分。其封裝形式有兩種:雙列直插封裝(DIP)形式和方形封裝形式,如圖3-1所示。</p

21、><p>  圖3-1 AT89C51引腳</p><p><b>  主電源引腳</b></p><p>  VCC:供電電壓(+5V)。</p><p><b>  GND:接地。</b></p><p>  2.2 I/O端口功能</p><p> 

22、 P0口: P0口有八條端口線,命名為P0.0~P0.7,其中P0.0為低位,P0.7為高位。每條線的結(jié)構(gòu)組成如圖3-2所示。它由一個(gè)輸出鎖存器,兩個(gè)三態(tài)緩沖器,輸出驅(qū)動(dòng)電路和輸出控制電路組成。P0口是一個(gè)三態(tài)雙向I/O口,它有兩種不同的功能,用于不同的工作環(huán)境。P0口為一個(gè)8位漏級(jí)開路雙向I/O口,每腳可吸收8TTL門電流。當(dāng)P1口的管腳第一次寫1時(shí),被定義為高阻輸入。P0能夠用于外部程序數(shù)據(jù)存儲(chǔ)器,它可以被定義為數(shù)據(jù)/地址的第八位。

23、在FIASH編程時(shí),P0 口作為原碼輸入口,當(dāng)FIASH進(jìn)行校驗(yàn)時(shí),P0輸出原碼,此時(shí)P0外部必須被拉高。</p><p>  圖3-2 P0口位結(jié)構(gòu)圖 </p><p>  P1口:P1口有八條端口線,命名為P1.0~P1.7,每條線的結(jié)構(gòu)組成如圖3-3所示。P1口是一個(gè)準(zhǔn)雙向口,只作普通的I/O口使用,其功能與P0口的第一功能相同。作輸出口使用時(shí),由于其內(nèi)部有上拉電阻,所以不需外接上

24、拉電阻;作輸入口使用時(shí),必須先向鎖存器寫入“1”,使場(chǎng)效應(yīng)管T截止,然后才能讀取數(shù)據(jù)。P1口是一個(gè)內(nèi)部提供上拉電阻的8位雙向I/O口,P1口緩沖器能接收輸出4TTL門電流。P1口管腳寫入1后,被內(nèi)部上拉為高,可用作輸入,P1口被外部下拉為低電平時(shí),將輸出電流,這是由于內(nèi)部上拉的緣故。在FLASH編程和校驗(yàn)時(shí),P1口作為第八位地址接收。</p><p>  圖3-3 P1口位結(jié)構(gòu)圖</p><

25、p>  P2口:P2口有八條端口線,命名為P2.0~P2.7,每條線的結(jié)構(gòu)如圖3-4所示。P2口也是一個(gè)準(zhǔn)雙向口,它有兩種使用功能:一種是當(dāng)系統(tǒng)不擴(kuò)展外部存儲(chǔ)器時(shí),作普通I/O口使用,其功能和原理與P0口第一功能相同,只是作為輸出口時(shí)不需外接上拉電阻;另一種是當(dāng)系統(tǒng)外擴(kuò)存儲(chǔ)器時(shí),P2口作系統(tǒng)擴(kuò)展的地址總線口使用,輸出高8位的地址A7~A15,與P0口第二功能輸出的低8位地址相配合,共同訪問外部程序或數(shù)據(jù)存儲(chǔ)器(64 KB),但它只

26、確定地址并不能像P0口那樣還可以傳送存儲(chǔ)器的讀寫數(shù)據(jù)。P2口為一個(gè)內(nèi)部上拉電阻的8位雙向I/O口,P2口緩沖器可接收,輸出4個(gè)TTL門電流,當(dāng)P2口被寫“1”時(shí),其管腳被內(nèi)部上拉電阻拉高,且作為輸入。并因此作為輸入時(shí),P2口的管腳被外部拉低,將輸出電流。這是由于內(nèi)部上拉的緣故。P2口當(dāng)用于外部程序存儲(chǔ)器或16位地址外部數(shù)據(jù)存儲(chǔ)器進(jìn)行存取時(shí),P2口輸出地址的高八位。在給出地址“1”時(shí),它利用內(nèi)部上拉優(yōu)勢(shì),當(dāng)對(duì)外部八位地址數(shù)據(jù)存儲(chǔ)器進(jìn)行讀寫

27、時(shí),P2口輸出其特殊功能寄存器的內(nèi)容。P2口在FLASH編程和校驗(yàn)時(shí)接收高八位地址信號(hào)和控制信號(hào)。</p><p>  P3口:P3口有八條端口線,命名為P3.0~P3.7,每條線的結(jié)構(gòu)如圖3-1所示。P3口是一個(gè)多用途的準(zhǔn)雙向口。第一功能是作普通I/O口使用,其功能和原理與P1口相同。第二功能是作控制和特殊功能口使用,這時(shí)八條端口線所定義的功能各不相同,如表3-4所示。</p><p>

28、  P3口管腳是8個(gè)帶內(nèi)部上拉電阻的雙向I/O口,可接收輸出4個(gè)TTL門電流。當(dāng)P3口寫入“1”后,它們被內(nèi)部上拉為高電平,并用作輸入。作為輸入,由于外部下拉為低電平,P3口將輸出電流(ILL)這是由于上拉的緣故。P3口同時(shí)為閃爍編程和編程校驗(yàn)接收一些控制信號(hào)。</p><p>  圖3-4 P2口位結(jié)構(gòu)圖</p><p>  圖3-5 P3口位結(jié)構(gòu)圖</p><p

29、>  表1 P3口各位的第二功能</p><p><b>  3 系統(tǒng)硬件介紹</b></p><p>  3.1單片機(jī)最小系統(tǒng)</p><p>  該原理圖包含單片機(jī)以及外部連接譯碼,鎖存電路端口,其中的ALE,REST為高電平時(shí)用來啟動(dòng)ADC0809.P0口控制數(shù)碼輸出顯示以及控制鍵盤的。</p><p> 

30、 晶振采用12MHZ,該頻率有利于提高串口的通信可靠性,同時(shí)又保證單片機(jī)有較高的運(yùn)行速度。</p><p><b>  3.2復(fù)位電路</b></p><p>  單片機(jī)在開機(jī)時(shí)都需要復(fù)位,以便CPU及其他功能部件都處于一個(gè)確定的初始狀態(tài),并從這個(gè)狀態(tài)開始工作。單片機(jī)復(fù)位電路工作原理:當(dāng)通電瞬間 穩(wěn)壓電源給電容充電。RESET為復(fù)位輸入端,當(dāng)RESET引腳持續(xù)兩個(gè)機(jī)器

31、周期以上的高電平時(shí),使單片機(jī)完成復(fù)位操作,隨著電容充電結(jié)束,將使電容與電阻之間將呈現(xiàn)低電平,單片機(jī)復(fù)位結(jié)束。復(fù)位操作的主要功能是把PC初始化為0000H,使單片機(jī)程序存儲(chǔ)器從0000H單元開始執(zhí)行程序。本設(shè)計(jì)主要采用上電自動(dòng)復(fù)位電路,其電路圖如圖4所示</p><p><b>  3.3時(shí)鐘電路</b></p><p>  本篇論文選擇的方案中采用的是內(nèi)部振蕩方式。采

32、用內(nèi)部方式時(shí)在XTAL1和XTAL2引腳上接石英晶體和微調(diào)電容可以構(gòu)成振蕩器,如圖5所示。圖中C1、C2起穩(wěn)定振蕩頻率、快速起振的作用。內(nèi)部振蕩方式所得的時(shí)鐘信號(hào)比較穩(wěn)定,實(shí)用電路中使用較多。振蕩頻率的選擇范圍為1MHz~12MHz。</p><p><b>  3.4顯示電路</b></p><p>  顯示器件有很多種,常用的有發(fā)光二極管,數(shù)碼管,液晶顯示器等,本

33、文采用8位共陰極LED動(dòng)態(tài)掃描顯示,SN74HC273N輸出所需字形,SN74HC273N選擇字位。在動(dòng)態(tài)方式中,逐個(gè)地循環(huán)地點(diǎn)亮各位顯示器。如圖所示:</p><p><b>  數(shù)碼管顯示電路</b></p><p>  顯示譯碼電路部分由P0口輸出顯示包含:</p><p>  顯示譯碼電路 顯示譯碼電路</p><p

34、><b>  3.5鍵控電路</b></p><p>  鍵盤是微機(jī)應(yīng)用系統(tǒng)中使用最廣泛的一種數(shù)據(jù)輸入設(shè)備,按照鍵盤按鍵的結(jié)構(gòu)形式,可分為獨(dú)立式鍵盤和矩陣式鍵盤。本文主要采用矩陣式鍵盤,此鍵盤控制電路主要是用于調(diào)整時(shí)間 </p><p><b>  4 軟件設(shè)計(jì)</b></p><p>  4.1 基本任務(wù) <

35、;/p><p>  利用單片機(jī)系統(tǒng)設(shè)計(jì)電秒表計(jì)時(shí)器</p><p>  4.2 按鍵定義及顯示標(biāo)志</p><p>  1.設(shè)置按鍵S13,當(dāng)S13按下時(shí),秒表計(jì)時(shí)停止,數(shù)碼管顯示當(dāng)前數(shù)值,再次按下時(shí)恢計(jì)時(shí)。</p><p>  2.當(dāng)停止計(jì)時(shí)時(shí),按下S14鍵,可以設(shè)置秒數(shù),按鍵S1-S10分別對(duì)應(yīng)數(shù)字0-9;先輸入數(shù)字為十位數(shù),后輸入數(shù)字為個(gè)位

36、數(shù),若輸入數(shù)字大于99,數(shù)碼管顯示“99”。按下S13鍵啟動(dòng)計(jì)時(shí)。</p><p>  3.設(shè)置按鍵S15,當(dāng)S15按下時(shí),數(shù)碼管顯示為“99”,秒表從新開始計(jì)時(shí)。</p><p><b>  4.3主程序框圖</b></p><p><b>  5 小結(jié)</b></p><p>  通過這次的課程

37、設(shè)計(jì)作品的制作讓我對(duì)單片機(jī)的理論有了更加深入的了解,同時(shí)在具體的制作過程中我們發(fā)現(xiàn)現(xiàn)在書本上的知識(shí)與實(shí)際的應(yīng)用存在著不小的差距,書本上的知識(shí)很多都是理想化后的結(jié)論,忽略了很多實(shí)際的因素,或者涉及的不全面,可在實(shí)際的應(yīng)用時(shí)這些是不能被忽略的,我們不得不考慮這方的問題,這讓我們無法根據(jù)書上的理論就輕易得到預(yù)想中的結(jié)果,有時(shí)結(jié)果甚至很差別很大。通過這次實(shí)踐使我更深刻的體會(huì)到了理論聯(lián)系實(shí)際的重要性,我們?cè)诮窈蟮膶W(xué)習(xí)工作中會(huì)更加的注重實(shí)際,避免稱

38、為只會(huì)紙上談兵的趙括。</p><p><b>  參考文獻(xiàn):</b></p><p>  1、胡漢才,《單片機(jī)原理及其接口技術(shù)》(2版),清華大學(xué)出版社 </p><p>  2、單片機(jī)實(shí)驗(yàn)指導(dǎo)書</p><p>  3、張毅剛,彭喜元,孟升衛(wèi),劉兆慶 MCS-51單片機(jī)實(shí)用子程序設(shè)計(jì)(第二版) 哈爾濱工業(yè)大學(xué)出版

39、社 2003年</p><p>  4、孫育才,《MCS-51系列單片微型計(jì)算機(jī)及其應(yīng)用》,東南大學(xué)出版社</p><p>  5、曹巧媛,《單片機(jī)原理及應(yīng)用——教學(xué)、實(shí)踐、設(shè)計(jì)指導(dǎo)》,電子工業(yè)出版社</p><p>  6、謝自美,《電子線路設(shè)計(jì)·實(shí)驗(yàn)·測(cè)試》(2版),華中科技大學(xué)出版社</p><p>  7、 求是

40、科技 單片機(jī)通信技術(shù)與工程實(shí)踐 人民郵電出版社 2005年</p><p><b>  附錄</b></p><p>  附錄一 單片機(jī)印刷電路板原理圖</p><p><b>  附錄二 元件清單</b></p><p><b>  單片機(jī)主板</b></p>

41、;<p><b>  附錄三 程序代碼</b></p><p>  #include <reg52.h></p><p>  #include<ABSACC.h></p><p>  #define uchar unsigned char</p><p>  #define uint

42、 unsigned int</p><p>  #define Font_code XBYTE[0xefff] //字符碼寫地址</p><p>  #define reg_code XBYTE[0xdfff] //字位碼寫地址</p><p>  #define key_addr XBYTE[0xf7f

43、f] //讀按鍵地址</p><p><b>  bit x=0;</b></p><p><b>  bit y=0;</b></p><p>  uchar key_n; </p><p><b>  uint m;</b></p><p&g

44、t;<b>  uint s; </b></p><p>  sbit P12=P1^0; </p><p>  unsigned char const jian[]; </p><p>  unsigned char const dofly[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f

45、,0x6f,</p><p>  0x77,0x7c,0x39,0x5e,0x79,0x71};</p><p>  void delay(uchar x)</p><p><b>  {</b></p><p><b>  uchar i;</b></p><p>  wh

46、ile(x--)</p><p>  for(i=0;i<100;i++);</p><p><b>  }</b></p><p>  void get_key(void)</p><p><b>  { </b></p><p>  uchar temp;<

47、;/p><p>  Font_code=0x00;</p><p>  reg_code=0xfe;</p><p>  temp = key_addr & 0x0f; //第一列</p><p>  if(temp==0x0e)</p><p>  {delay(200);</p><p

48、>  if(temp==0x0e)</p><p><b>  {</b></p><p><b>  key_n=0;</b></p><p>  if((x==1)&&(y==0) )</p><p>  {m=m%10;y=1;} </p><p>

49、;<b>  else</b></p><p>  {m=(m/10)*10;y=0;}</p><p><b>  }</b></p><p><b>  }</b></p><p>  if(temp==0x0d)</p><p>  {delay

50、(200);</p><p>  if(temp==0x0d)</p><p><b>  {</b></p><p><b>  key_n=4;</b></p><p>  if((x==1)&&(y==0))</p><p>  {m=m%10+40;y

51、=1;} </p><p><b>  else</b></p><p>  {m=(m/10)*10+4;y=0;}</p><p><b>  }</b></p><p><b>  }</b></p><p>  if(temp==0x0b)<

52、;/p><p>  {delay(200);</p><p>  if(temp==0x0b)</p><p><b>  {</b></p><p><b>  key_n=8;</b></p><p>  if((x==1)&&(y==0))</p&g

53、t;<p>  {m=m%10+80;y=1;} </p><p><b>  else</b></p><p>  {m=(m/10)*10+8;y=0;}</p><p><b>  }</b></p><p><b>  }</b></p>&

54、lt;p>  if(temp==0x07)</p><p><b>  {</b></p><p><b>  key_n=12;</b></p><p><b>  s++;</b></p><p><b>  x=0;</b></p>

55、<p><b>  y=0;</b></p><p><b>  }</b></p><p>  reg_code=0xfd;</p><p>  temp = key_addr & 0x0f; //第二列</p><p>  if(temp==0x0e)</p>

56、;<p>  {delay(200);</p><p>  if(temp==0x0e)</p><p><b>  {</b></p><p><b>  key_n=1;</b></p><p>  if((x==1)&&(y==0) )</p>&

57、lt;p>  {m=m%10+10;y=1;} </p><p><b>  else</b></p><p>  {m=(m/10)*10+1;y=0;}</p><p><b>  }</b></p><p><b>  }</b></p><p&

58、gt;  if(temp==0x0d)</p><p>  {delay(200);</p><p>  if(temp==0x0d)</p><p><b>  {</b></p><p><b>  key_n=5;</b></p><p>  if((x==1)&am

59、p;&(y==0) )</p><p>  {m=m%10+50;y=1;} </p><p><b>  else</b></p><p>  {m=(m/10)*10+5;y=0;}</p><p><b>  }</b></p><p><b>  }

60、</b></p><p>  if(temp==0x0b)</p><p>  {delay(200);</p><p>  if(temp==0x0b)</p><p><b>  {</b></p><p><b>  key_n=9;</b></p&

61、gt;<p>  if((x==1)&&(y==0) )</p><p>  {m=m%10+90;y=1;} </p><p><b>  else</b></p><p>  {m=(m/10)*10+9;y=0;}</p><p><b>  }</b></

62、p><p><b>  }</b></p><p>  if(temp==0x07)key_n=13;</p><p>  reg_code=0xfb;</p><p>  temp = key_addr & 0x0f; //第三列</p><p>  if(temp==0x0e)</p

63、><p>  {delay(200);</p><p>  if(temp==0x0e)</p><p><b>  {</b></p><p><b>  key_n=2;</b></p><p>  if((x==1)&&(y==0) )</p>

64、<p>  {m=m%10+20;y=1;} </p><p><b>  else</b></p><p>  {m=(m/10)*10+2;y=0;}</p><p><b>  }</b></p><p><b>  }</b></p><

65、;p>  if(temp==0x0d)</p><p>  {delay(200);</p><p>  if(temp==0x0d)</p><p><b>  {</b></p><p><b>  key_n=6;</b></p><p>  if((x==1)

66、&&(y==0) )</p><p>  {m=m%10+60;y=1;} </p><p><b>  else</b></p><p>  {m=(m/10)*10+6;y=0;}</p><p><b>  }</b></p><p><b>

67、  }</b></p><p>  if(temp==0x0b)key_n=10;</p><p>  if(temp==0x07)key_n=14;</p><p>  reg_code=0xf7;</p><p>  temp = key_addr & 0x0f; //第四列</p><p> 

68、 if(temp==0x0e)</p><p>  {delay(200);</p><p>  if(temp==0x0e)</p><p><b>  {</b></p><p><b>  key_n=1;</b></p><p>  if((x==1)&&a

69、mp;(y==0) )</p><p>  {m=m%10+30;y=1;} </p><p><b>  else</b></p><p>  {m=(m/10)*10+3;y=0;}</p><p><b>  }</b></p><p><b>  }<

70、/b></p><p>  if(temp==0x0d)</p><p>  {delay(200);</p><p>  if(temp==0x0d)</p><p><b>  {</b></p><p><b>  key_n=1;</b></p>

71、<p>  if((x==1)&&(y==0) )</p><p>  {m=m%10+70;y=1;} </p><p><b>  else</b></p><p>  {m=(m/10)*10+7;y=0;}</p><p><b>  }</b></p>

72、;<p><b>  }</b></p><p>  if(temp==0x0b)key_n=11;</p><p>  if(temp==0x07)</p><p><b>  {</b></p><p><b>  key_n=15;</b></p>

73、;<p><b>  }</b></p><p><b>  }</b></p><p>  void main(void)</p><p><b>  {</b></p><p>  uint p,t,l;</p><p>  RCAP2

74、H=0x10;</p><p>  RCAP2L=0x00;</p><p><b>  m=99;</b></p><p><b>  while(1)</b></p><p><b>  {</b></p><p>  get_key();</

75、p><p>  if(key_n==14)</p><p><b>  {</b></p><p><b>  m=99;</b></p><p><b>  }</b></p><p>  if(key_n==13)</p><p>

76、;<b>  {</b></p><p>  if((s%2)!=0)</p><p><b>  {</b></p><p><b>  x=1;</b></p><p><b>  y=0;</b></p><p><b&

77、gt;  }</b></p><p><b>  }</b></p><p>  if(key_n==12)</p><p><b>  {</b></p><p><b>  delay(3);</b></p><p>  if(key_

78、n==12)</p><p><b>  {</b></p><p>  if((s%2)==0)</p><p><b>  {</b></p><p><b>  TR2=1;</b></p><p><b>  ET2=1;</b&

79、gt;</p><p><b>  EA=1;</b></p><p><b>  }</b></p><p>  if((s%2)!=0)</p><p><b>  {</b></p><p><b>  TR2=0;</b>&

80、lt;/p><p><b>  ET2=0;</b></p><p><b>  EA=0;</b></p><p><b>  }</b></p><p><b>  }</b></p><p><b>  }</

81、b></p><p><b>  if(m==0)</b></p><p><b>  {</b></p><p><b>  TR2=0;</b></p><p><b>  ET2=0;</b></p><p><b

82、>  EA=0;</b></p><p><b>  }</b></p><p><b>  p=m/10;</b></p><p><b>  t=m%10;</b></p><p>  Font_code=dofly[p];</p>&l

83、t;p>  reg_code=0x20;</p><p>  delay(10);</p><p>  Font_code=dofly[t];</p><p>  reg_code=0x40;</p><p>  delay(10);</p><p><b>  }</b></p&

84、gt;<p><b>  }</b></p><p>  timer2() interrupt 5</p><p><b>  {</b></p><p>  static uchar t;</p><p><b>  TF2=0;</b></p>

85、<p><b>  t++;</b></p><p><b>  if(t==10)</b></p><p><b>  {</b></p><p><b>  t=0;</b></p><p><b>  if(m!=0)</b

86、></p><p><b>  {</b></p><p><b>  m--;</b></p><p><b>  }</b></p><p><b>  }</b></p><p><b>  }</b&g

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 眾賞文庫僅提供信息存儲(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)論