畢業(yè)設(shè)計(jì)---基于單片機(jī)的定時(shí)打鈴器設(shè)計(jì)_第1頁(yè)
已閱讀1頁(yè),還剩52頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、<p><b>  畢 業(yè) 論 文</b></p><p>  基于單片機(jī)的定時(shí)打鈴器設(shè)計(jì)</p><p><b>  2011年4月5日</b></p><p> 學(xué)生姓名</p><p> 院 系計(jì)算機(jī)與電子信息</p><p> 班 級(jí)電子07-2

2、</p><p> 專(zhuān) 業(yè)電子信息科學(xué)與技術(shù)</p><p> 指導(dǎo)教師</p><p><b>  摘 要</b></p><p>  電子技術(shù)飛速發(fā)展,被普遍地應(yīng)用于生活和生產(chǎn)的各個(gè)領(lǐng)域。而定時(shí)打鈴器主要是利用電子技術(shù)將時(shí)鐘電子化、數(shù)字化,擁有時(shí)鐘精確、體積小、成本低、可擴(kuò)展性強(qiáng)等特點(diǎn),被廣泛應(yīng)用于生活和工作

3、當(dāng)中。</p><p>  本設(shè)計(jì)應(yīng)用單片機(jī)STC89C52芯片作為核心,8位LED數(shù)碼管顯示,4*4鍵盤(pán)控制,能進(jìn)行時(shí)、分、秒的顯示以及定時(shí)打鈴。這種實(shí)現(xiàn)方法的優(yōu)點(diǎn)是電路簡(jiǎn)單,性能可靠,實(shí)時(shí)性好,操作簡(jiǎn)單,編程容易等。</p><p>  關(guān)鍵字:?jiǎn)纹瑱C(jī);定時(shí)打鈴器</p><p><b>  Abstract</b></p>

4、<p>  The rapid development of electronic technology is widely used in various fields of life and production. And the Time a bell device is using electronic technology to make clock computerization, the digitizatio

5、n, with the clock precision, small size, low cost, scalable performance and other characteristics, is widely used in life and job. </p><p>  This design application STC89C52 chip as a core chips, 8 LED digit

6、al displaying, 4*4keyboard controlling, can display hours, minutes, seconds and timing the ring . This method has the advantage of being simple circuit, reliable performance, good real-time, simple operation, easy progra

7、mming and so on. </p><p>  Key words: single chip microcomputer; Time a bell device</p><p><b>  目錄</b></p><p><b>  摘要</b></p><p><b>  1 緒

8、論1</b></p><p>  1.1 課題背景1</p><p>  1.2 課題意義1</p><p>  1.3 本章小節(jié)2</p><p>  2 系統(tǒng)功能及操作3</p><p>  2.1 系統(tǒng)功能的確定3</p><p>  2.1.1 基本功能3<

9、;/p><p>  2.1.2 擴(kuò)展功能3</p><p>  2.2 系統(tǒng)操作說(shuō)明4</p><p>  2.3 本章小節(jié)4</p><p>  3 系統(tǒng)硬件設(shè)計(jì)—實(shí)驗(yàn)板介紹5</p><p>  3.1 芯片的選擇5</p><p>  3.2 實(shí)驗(yàn)板電路原理圖6</p>

10、<p>  3.3 功能電路分析6</p><p>  3.3.1 時(shí)鐘電路6</p><p>  3.3.2 復(fù)位電路6</p><p>  3.3.3 鍵盤(pán)電路7</p><p>  3.3.4 數(shù)碼顯示電路7</p><p>  3.3.5 蜂鳴器電路8</p><p

11、>  3.4 本章小節(jié)8</p><p>  4 系統(tǒng)軟件設(shè)計(jì)9</p><p>  4.1 數(shù)據(jù)單元分配9</p><p>  4.1.1 數(shù)據(jù)存儲(chǔ)單元分配9</p><p>  4.1.2 標(biāo)志位單元分配9</p><p>  4.2 計(jì)時(shí)時(shí)鐘實(shí)現(xiàn)的基本方法9</p><p&g

12、t;  4.3 實(shí)現(xiàn)時(shí)鐘程序設(shè)計(jì)步驟10</p><p>  4.3.1 主程序模塊設(shè)計(jì)10</p><p>  4.3.2 計(jì)時(shí)子程序模塊的實(shí)現(xiàn)11</p><p>  4.3.3 顯示子程序模塊的實(shí)現(xiàn)12</p><p>  4.3.4 時(shí)鐘設(shè)定子程序模塊的實(shí)現(xiàn)12</p><p>  4.3.5 日期、

13、定時(shí)設(shè)定子程序模塊的實(shí)現(xiàn)12</p><p>  4.4 程序說(shuō)明12</p><p>  4.4.1 定時(shí)器初值計(jì)算12</p><p>  4.4.2 程序初始化12</p><p>  4.4.3 誤差分析及校正13</p><p>  4.4.4 實(shí)現(xiàn)閃動(dòng)設(shè)定13</p><p&

14、gt;  4.4.5 實(shí)現(xiàn)連續(xù)加113</p><p>  4.4.6 定時(shí)音與顯示相沖突問(wèn)題及解決方案13</p><p>  4.5 本章小節(jié)13</p><p><b>  5 系統(tǒng)調(diào)試14</b></p><p><b>  結(jié)束語(yǔ)15</b></p><p&g

15、t;<b>  致謝16</b></p><p>  附錄A:實(shí)驗(yàn)板原理圖17</p><p>  附錄B:程序清單18</p><p><b>  參考文獻(xiàn)45</b></p><p><b>  緒論</b></p><p><b>

16、;  1.1 課題背景</b></p><p>  單片機(jī)自1976年由Intel公司推出MCS-48開(kāi)始,迄今已有二十多年了。由于單片機(jī)集成度高、功能強(qiáng)、可靠性高、體積小、功耗低、使用方便、價(jià)格低廉等一系列優(yōu)點(diǎn),目前已經(jīng)滲入到人們工作和生活的方方面面,單片機(jī)的應(yīng)用領(lǐng)域已從面向工業(yè)控制、通訊、交通、智能儀表等迅速發(fā)展到家用消費(fèi)產(chǎn)品、辦公自動(dòng)化、汽車(chē)電子、PC機(jī)外圍以及網(wǎng)絡(luò)通訊等廣大領(lǐng)域。</p&

17、gt;<p>  單片機(jī)有兩種基本結(jié)構(gòu):一種是在通用微型計(jì)算機(jī)中廣泛采用的,程序存儲(chǔ)器和數(shù)據(jù)存儲(chǔ)器共用一個(gè)存儲(chǔ)器空間的結(jié)構(gòu),稱(chēng)為“馮·諾依曼”(Von Neumann)結(jié)構(gòu)。另一種是將程序存儲(chǔ)器和數(shù)據(jù)存儲(chǔ)器截然分開(kāi),分別尋址的結(jié)構(gòu),稱(chēng)為“哈佛”(Harvard)結(jié)構(gòu),目前的單片機(jī)采用此種結(jié)構(gòu)為多。</p><p>  本文討論的單片機(jī)多功能時(shí)鐘系統(tǒng)的核心是目前應(yīng)用極為廣泛的51系列單片機(jī),

18、配置了外圍設(shè)備,構(gòu)成了一個(gè)可編程的計(jì)時(shí)定時(shí)系統(tǒng),具有體積小,可靠性高,功能多等特點(diǎn)。不僅能滿(mǎn)足所需要求而且還有很多功能可供擴(kuò)展,有著廣泛的應(yīng)用領(lǐng)域。</p><p><b>  1.2 課題意義</b></p><p>  在日常生活和工作中,我們常常用到定時(shí)控制,如擴(kuò)印過(guò)程中的曝光定時(shí)等。早期常用的一些時(shí)間控制單元都使用模擬電路設(shè)計(jì)制作的,其定時(shí)準(zhǔn)確性和重復(fù)精度都不

19、是很理想,現(xiàn)在基本上都是基于數(shù)字技術(shù)的新一代產(chǎn)品,隨著單片機(jī)性?xún)r(jià)比的不斷提高,新一代產(chǎn)品的應(yīng)用也越來(lái)越廣泛。大則可以構(gòu)成復(fù)雜的工業(yè)過(guò)程控制系統(tǒng),完成復(fù)雜的控制功能;小則可以用于家電控制,甚至可以用于兒童電子玩具。它功能強(qiáng)大、體積小、質(zhì)量輕、靈活好用,配以適當(dāng)?shù)慕涌谛酒梢詷?gòu)成各種各樣、功能各異的微電子產(chǎn)品。</p><p>  隨著電子技術(shù)的飛速發(fā)展,家用電器和辦公電子設(shè)備逐漸增多,不同的設(shè)備都有自己的控制器,

20、使用起來(lái)很不方便。這些具有人們所需要的智能化特性的產(chǎn)品減輕了人的勞動(dòng),擴(kuò)大了數(shù)字化的范圍,為家庭數(shù)字化提供了可能。</p><p>  根據(jù)這種實(shí)際情況,設(shè)計(jì)了一個(gè)單片機(jī)多功能定時(shí)打鈴器,它有基本的定時(shí)打鈴功能,還有時(shí)間功能,方便使用者能隨時(shí)掌握時(shí)間,方便人們的生活。</p><p><b>  1.3 本章小節(jié)</b></p><p>  本

21、章主要介紹了課題背景和課題意義,對(duì)單片機(jī)的優(yōu)點(diǎn)及結(jié)構(gòu)作了簡(jiǎn)要敘述,也對(duì)本系統(tǒng)的應(yīng)用及概況進(jìn)行了說(shuō)明。</p><p><b>  2 系統(tǒng)功能及操作</b></p><p>  2.1 系統(tǒng)功能的確定</p><p>  2.1.1 基本功能</p><p>  系統(tǒng)具有定時(shí)打鈴、時(shí)間、密碼控制功能,并可以對(duì)時(shí)間、定時(shí)打

22、鈴時(shí)間、密碼進(jìn)行設(shè)定,有定時(shí)提示音。要求十組以上打鈴、打鈴持續(xù)時(shí)間可調(diào)。</p><p>  2.1.2 擴(kuò)展功能</p><p>  該系統(tǒng)可以增加溫度傳感器,實(shí)現(xiàn)溫度測(cè)量,以實(shí)時(shí)顯示溫度,用1、2位數(shù)碼管顯示;還可以增加濕度傳感器,實(shí)現(xiàn)濕度測(cè)量,以實(shí)時(shí)顯示濕度,用5、6位數(shù)碼管顯示。</p><p>  2.2 系統(tǒng)操作說(shuō)明</p><p&g

23、t; ?。?)按K1鍵顯示日期,3秒后自動(dòng)返回時(shí)間顯示,3秒內(nèi)按K2鍵進(jìn)入日期設(shè)置,此時(shí)年位閃爍,按K1鍵進(jìn)行年位加1或連續(xù)加1調(diào)整。按K2鍵依次切換到月位、日位,分別按K1鍵進(jìn)行月位、日位調(diào)整,日位設(shè)置好后,再按K2鍵保存日期設(shè)定值,并返回顯示時(shí)間。</p><p> ?。?)按K2鍵大于1秒進(jìn)入時(shí)間設(shè)置,此時(shí)小時(shí)位閃爍,秒位自動(dòng)清零,按K1鍵進(jìn)行小時(shí)調(diào)整,按K2鍵切換到分鐘位,按K1鍵進(jìn)行分鐘調(diào)整,分位設(shè)置好

24、后,再按K2鍵保存時(shí)間設(shè)定值,并返回顯示時(shí)間,按所設(shè)定的時(shí)間值進(jìn)行計(jì)時(shí)。</p><p> ?。?)連續(xù)按K3鍵顯示3路定時(shí)及其開(kāi)關(guān)狀態(tài),當(dāng)顯示某一路定時(shí)時(shí),3秒后自動(dòng)返回時(shí)間顯示,3秒內(nèi)按K2鍵進(jìn)入定時(shí)設(shè)置,設(shè)置同日期(5、6位顯示00為當(dāng)路定時(shí)關(guān),顯示01為當(dāng)路定時(shí)開(kāi))。當(dāng)路定時(shí)設(shè)置完后按K2鍵保存定時(shí)設(shè)定值并返回時(shí)間顯示。</p><p> ?。?)按K4鍵顯示實(shí)時(shí)溫度和濕度,5秒后

25、自動(dòng)返回時(shí)間顯示。</p><p><b>  2.3 本章小節(jié)</b></p><p>  本章主要對(duì)本系統(tǒng)的基本功能和擴(kuò)展功能進(jìn)行了說(shuō)明,也對(duì)本系統(tǒng)的系統(tǒng)的顯示情況及操作作了詳細(xì)說(shuō)明。</p><p>  3 系統(tǒng)硬件設(shè)計(jì)—實(shí)驗(yàn)板介紹</p><p><b>  3.1 芯片的選擇</b><

26、;/p><p>  本設(shè)計(jì)選用STC89C52芯片,它是一種低功耗、高性能CMOS 8位微控制器,具有8K(0000H~1FFFH)在線(xiàn)系統(tǒng)可編程Flash存儲(chǔ)器。片上Flash允許程序存儲(chǔ)器在線(xiàn)編程,也適于常規(guī)編程器。在單芯片上,擁有靈巧的8位CPU和在線(xiàn)系統(tǒng)可編程Flash,使得AT89S52為眾多嵌入式控制應(yīng)用系統(tǒng)提供靈活、高效的解決方案。</p><p>  AT89S52具有以下標(biāo)準(zhǔn)

27、功能:8K(0000H~1FFFH)Flash,256字節(jié)(00H~FFH)數(shù)據(jù)存儲(chǔ)器(RAM),64K(0000H~FFFFH)程序存儲(chǔ)器(ROM),32位I/O口線(xiàn),看門(mén)狗定時(shí)器,2個(gè)數(shù)據(jù)指針,三個(gè)16位定時(shí)器/計(jì)數(shù)器,一個(gè)6向量2級(jí)中斷結(jié)構(gòu),全雙工串行口內(nèi)晶振及時(shí)鐘電路。</p><p>  其中,數(shù)據(jù)存儲(chǔ)器(RAM)用于存放各種運(yùn)算的中間結(jié)果,作緩存和數(shù)據(jù)暫存,以及設(shè)置特征標(biāo)志等。AT89S52的片內(nèi)數(shù)據(jù)

28、存儲(chǔ)器用位尋址方式,最大尋址范圍為256字節(jié)(00H~FFH)。按使用情況不同可分成低128字節(jié)(00H~7FH)和高128字節(jié)(80H~FFH)。其中低128字節(jié)為真正的RAM存儲(chǔ)器,高128字節(jié)為特殊功能寄存器(SFR)區(qū),如累加器ACC、程序狀態(tài)字PSW、數(shù)據(jù)指針DPTR、程序計(jì)數(shù)器PC等。整個(gè)片內(nèi)RAM區(qū)分布如圖3-1所示。</p><p>  圖3-1 片內(nèi)RAM區(qū)</p><p&g

29、t;  3.2 實(shí)驗(yàn)板電路原理圖</p><p>  實(shí)驗(yàn)板電路結(jié)構(gòu)框圖如圖3-2所示,原理電路圖(只有本設(shè)計(jì)所需部分)見(jiàn)附錄A。</p><p>  圖3-2 實(shí)驗(yàn)板結(jié)構(gòu)框圖</p><p>  3.3 功能電路分析</p><p>  3.3.1 時(shí)鐘電路</p><p>  實(shí)驗(yàn)板的時(shí)鐘振蕩源電路如圖3-3所示。

30、其中JT 為11.0592MHz 的晶振,改變兩電容CB的值即可對(duì)此晶振頻率進(jìn)行調(diào)節(jié)。該電路提供單片機(jī)工作所需的振蕩頻率,計(jì)算定時(shí)器初值即需此晶振頻率,在通信時(shí)也需知道晶振頻率,以對(duì)波特率進(jìn)行計(jì)算。</p><p>  圖 3-3 時(shí)鐘電路</p><p>  3.3.2 復(fù)位電路</p><p>  如圖3-4所示為實(shí)驗(yàn)板的復(fù)位電路,當(dāng)RESET 信號(hào)為低電平時(shí),

31、實(shí)驗(yàn)板為工作狀態(tài),當(dāng)RESET信號(hào)為高電平時(shí),實(shí)驗(yàn)板為復(fù)位或下載程序狀態(tài)。由于A(yíng)T89S52具有ISP 的功能,即可以通過(guò)并口線(xiàn)直接將程序下載到單片機(jī)內(nèi),因此, AT89S52 具有兩種狀態(tài),下載程序狀態(tài)和運(yùn)行狀態(tài)。該復(fù)位電路能實(shí)現(xiàn)上電自動(dòng)復(fù)位,也能手動(dòng)復(fù)位,一般復(fù)位時(shí)RESET應(yīng)保持20毫秒以上高電平,此復(fù)位時(shí)間由接地電容控制。</p><p>  圖 3-4 復(fù)位電路</p><p>

32、  3.3.3 鍵盤(pán)電路</p><p>  如圖3-5所示為陣列按鍵電路,各設(shè)置及轉(zhuǎn)換信號(hào)由此電路輸入,實(shí)驗(yàn)板提供了16個(gè)按鍵,由P1口經(jīng)SN74F244(驅(qū)動(dòng)芯片)輸出擴(kuò)展成4×4的陣列按鍵,P1.0~P1.3為行線(xiàn),P1.4~P1.7為列線(xiàn)。SN74F244有一片選信號(hào)線(xiàn),當(dāng)此口線(xiàn)為低電平時(shí),A1~A4與Y1~Y4接通,反之,A1~A4與Y1~Y4斷開(kāi)。</p><p> 

33、 此鍵盤(pán)用掃描工作方式,若有鍵按下,則相應(yīng)位端口被拉低為低電平,由于本系統(tǒng)只用了4個(gè)按鍵,所以只需對(duì)4個(gè)按鍵進(jìn)行掃描。掃描時(shí),先置P3.3口為高電平,向P1口送0EFH(MOV P1,#0EFH),再置P3.3口為低電平,讀P1口(MOV A,P1),最后判斷P1口低4位哪位是低電平,若某位為低電平,則相應(yīng)按鍵被按下,如P1.0為低電平(ACC.0=0),則K1鍵被按下。</p><p>  圖 3-5 陣列

34、按鍵</p><p>  3.3.4 數(shù)碼顯示電路</p><p>  如圖3-6所示為數(shù)碼顯示電路,實(shí)驗(yàn)板使用了6個(gè)共陽(yáng)數(shù)碼管,P0口為段碼信號(hào)線(xiàn),B1~B6為位控線(xiàn),是P1口經(jīng)SN74F573(反向驅(qū)動(dòng)芯片,即輸入為高電平,則輸出為低電平,反之則輸出為高電平,該芯片也有一片選信號(hào)C,當(dāng)此信號(hào)為高電平時(shí)有效)反向得到,再由B1~B6控制晶體管Q1~Q6,以達(dá)到控制每位數(shù)碼管的目的。<

35、;/p><p>  系統(tǒng)采用動(dòng)態(tài)顯示,先向P0口送第一位數(shù)碼管需要顯示的段碼值,再給P1口送0FEH,延時(shí)1毫秒使第一位數(shù)碼管顯示,又向P0口送第二位數(shù)碼管需要顯示的段碼值,P1口送0FDH,延時(shí)1毫秒,使第二位數(shù)碼管顯示。依次遞推,直到最后一位數(shù)碼管,然后再循環(huán)。改變延時(shí)時(shí)長(zhǎng)可以調(diào)節(jié)數(shù)碼管顯示的亮度,由于單片機(jī)執(zhí)行速度很快(微秒級(jí)),所以看上去數(shù)碼管一直亮著。</p><p>  圖 3-6

36、 數(shù)碼顯示電路</p><p>  3.3.5 蜂鳴器電路</p><p>  其硬件原理圖如圖3-7所示。此電路用于定時(shí)時(shí)發(fā)出提示音。SPEAKER與P3.2口相連,當(dāng)SPEAKER輸出高電平時(shí)蜂鳴器不響,而SPEAKER輸出低電平時(shí)蜂鳴器發(fā)出響聲。只需控制SPEAKER輸出高低電平的時(shí)間和變化頻率,就可以讓蜂鳴器發(fā)出不同的聲音。此電路用于產(chǎn)生定時(shí)器提示音。</p><

37、;p>  圖 3-7 蜂鳴器電路</p><p><b>  3.4 本章小節(jié)</b></p><p>  本章主要對(duì)芯片作了介紹,對(duì)其內(nèi)存單元作了詳細(xì)說(shuō)明,并對(duì)系統(tǒng)硬件(實(shí)驗(yàn)板)的結(jié)構(gòu)框圖和各功能電路作了說(shuō)明,以及這些電路在本設(shè)計(jì)中的用途。</p><p><b>  4 系統(tǒng)軟件設(shè)計(jì)</b></p>

38、<p>  4.1 數(shù)據(jù)單元分配</p><p>  4.1.1 數(shù)據(jù)存儲(chǔ)單元分配</p><p>  數(shù)據(jù)存儲(chǔ)單元分配如下表所示:</p><p>  4.1.2 標(biāo)志位單元分配</p><p>  標(biāo)志位單元(20H)分配如下表所示:</p><p>  4.2 計(jì)時(shí)時(shí)鐘實(shí)現(xiàn)的基本方法</p>

39、;<p>  時(shí)鐘的最小計(jì)時(shí)單位是秒,使用定時(shí)器的方式1,最大的定時(shí)時(shí)間也只能達(dá)到131毫秒??砂讯〞r(shí)器的定時(shí)時(shí)間定為50毫秒,這樣,計(jì)數(shù)溢出20次即可得到時(shí)鐘的最小計(jì)時(shí)單位─秒。計(jì)數(shù)20次可以用軟件實(shí)現(xiàn),對(duì)定時(shí)器溢出次數(shù)進(jìn)行計(jì)數(shù),計(jì)滿(mǎn)20次即為1秒。從秒到分,從分到時(shí),以及日、月、年都是通過(guò)軟件累加并進(jìn)行比較的方法實(shí)現(xiàn)的。</p><p>  4.3 實(shí)現(xiàn)時(shí)鐘程序設(shè)計(jì)步驟</p>&

40、lt;p>  系統(tǒng)采用模塊化結(jié)構(gòu),主程序只需調(diào)用各個(gè)子程序模塊即可實(shí)現(xiàn)相應(yīng)功能。其模塊結(jié)構(gòu)圖如圖4-1所示。</p><p>  圖4-1 程序各模塊方框圖</p><p>  4.3.1 主程序模塊設(shè)計(jì)</p><p>  整個(gè)程序進(jìn)行模塊化設(shè)計(jì),主程序只需調(diào)用相應(yīng)的程序即可。主程序流程如圖4-2所示。</p><p>  圖4-2

41、主程序流程圖</p><p>  4.3.2 計(jì)時(shí)子程序模塊的實(shí)現(xiàn)</p><p>  當(dāng)T0中斷時(shí),執(zhí)行本程序,因T0設(shè)為50毫秒中斷,故中斷20次為1秒。中斷程序分別有20次計(jì)數(shù)(1秒),60次計(jì)數(shù)(1分),60次計(jì)數(shù)(1小時(shí)),24次計(jì)數(shù)(1天),28、29、30、31次計(jì)數(shù)(1個(gè)月),12次計(jì)數(shù)(1年)。當(dāng)前位到設(shè)定數(shù)值時(shí)寫(xiě)0或1,下一位加1。由于本世紀(jì)是21世紀(jì),年位前兩位是4的

42、倍數(shù),故判斷閏年時(shí)只需對(duì)年的后兩位進(jìn)行計(jì)算,能被4整除為閏年,否則為平年,年位只進(jìn)行加1,大于99時(shí)又重新開(kāi)始。計(jì)時(shí)中斷流程圖如圖4-3所示。</p><p>  圖4-3 計(jì)時(shí)子程序流程圖 圖4-4 顯示子程序流程圖</p><p>  4.3.3 顯示子程序模塊的實(shí)現(xiàn)</p><p>  顯示原理在3.3.4節(jié)已給予了說(shuō)明,流

43、程圖如圖4-4所示。</p><p>  4.3.4 時(shí)鐘設(shè)定子程序模塊的實(shí)現(xiàn)</p><p>  當(dāng)設(shè)定時(shí)間時(shí),斷開(kāi)T0中斷,秒單元清0,進(jìn)入時(shí)、分單元設(shè)定。設(shè)定好后重裝T0初值,開(kāi)T0中斷。流程圖如圖4-6所示。</p><p>  圖4-6 時(shí)鐘設(shè)定子程流程圖</p><p>  4.3.5 日期、定時(shí)設(shè)定子程序模塊的實(shí)現(xiàn)</p&

44、gt;<p>  日期、定時(shí)的設(shè)定同時(shí)鐘設(shè)定。定時(shí)設(shè)定時(shí),把時(shí)鐘的秒位換成定時(shí)標(biāo)志位,“00”為當(dāng)路定時(shí)關(guān),“01”為當(dāng)路定時(shí)開(kāi),流程圖與時(shí)鐘設(shè)定程序相似。</p><p><b>  4.4 程序說(shuō)明</b></p><p>  4.4.1 定時(shí)器初值計(jì)算</p><p>  因定時(shí)器工作于方式1,需要50ms的中斷,所以計(jì)數(shù)初

45、值:</p><p>  χ=216 - t×fosc/12=65536 - 50×10-3×11.0592×106/12=19456</p><p>  表示成十六進(jìn)制為χ=4C00H,故(TH0)=4CH,(TL0)=00H。</p><p>  4.4.2 程序初始化</p><p>  程序初始

46、化時(shí),清相應(yīng)內(nèi)存單元(20H~4FH共48個(gè)單元),送時(shí)間(00時(shí)00分00秒)、日期(07年10月01日)初值,送定時(shí)器T0、T1初值,TH0= TH1=4CH,TL0= TL1=00H,特殊寄存器(SP=50H、TMOD=11H)值等。</p><p>  4.4.3 誤差分析及校正</p><p>  當(dāng)T0中斷時(shí),需重裝定時(shí)初值,且要加上從斷開(kāi)T0中斷到允許T0中斷共有13個(gè)周期,

47、以減小誤差,故理論重裝定時(shí)初值為(TH0)=4CH,(TL0)=13H。但該外接晶振電路的晶振頻率可調(diào),可能出現(xiàn)誤差,所以實(shí)際不是這個(gè)值。</p><p>  經(jīng)調(diào)試,當(dāng)定時(shí)初值為(TH0)=4CH,(TL0)=06H時(shí),24小時(shí)約慢2秒,所以每當(dāng)計(jì)時(shí)24小時(shí)之后,給秒單元(30H)送02H,使秒累加時(shí)從2加起,24小時(shí)就少加2秒,即可使時(shí)間得到校正。</p><p>  4.4.4 實(shí)現(xiàn)

48、閃動(dòng)設(shè)定</p><p>  閃動(dòng)可選用段碼送00H實(shí)現(xiàn),也可禁止當(dāng)前位顯示,選通位送0實(shí)現(xiàn)。本設(shè)計(jì)選用后者實(shí)現(xiàn)閃動(dòng),用定時(shí)器T1進(jìn)行控制。</p><p>  4.4.5 實(shí)現(xiàn)連續(xù)加1</p><p>  先判斷鍵是否松開(kāi),若松開(kāi),則只執(zhí)行一次加1程序段,進(jìn)行單次加1;若未松開(kāi)則連續(xù)執(zhí)行加1程序段,實(shí)現(xiàn)連續(xù)加1。每執(zhí)行一次加1程序段就調(diào)用顯示子程序進(jìn)行延時(shí),以對(duì)調(diào)

49、節(jié)速度進(jìn)行控制。本系統(tǒng)以5Hz的速度連續(xù)加1,這樣能快速對(duì)時(shí)間、日期、定時(shí)進(jìn)行設(shè)定。</p><p>  4.4.6 定時(shí)音與顯示相沖突問(wèn)題及解決方案</p><p>  由于蜂鳴器響時(shí)P3.2口的電平呈高頻變化,頻率1K~2K,其間隙時(shí)間為0.5~1毫秒,小于6 毫秒,因顯示時(shí)每個(gè)數(shù)碼管顯示1毫秒,至少需要6毫秒,故蜂鳴器響時(shí)無(wú)法進(jìn)行顯示。為解決此問(wèn)題,可增加鎖存器,采用靜態(tài)顯示;也可增

50、加一語(yǔ)音芯片,既可解決此問(wèn)題,也可把定時(shí)音換成音樂(lè)或語(yǔ)音提示,或增加其它功能,使系統(tǒng)功能更強(qiáng)。</p><p><b>  4.5 本章小節(jié)</b></p><p>  本章主要對(duì)系統(tǒng)的軟件設(shè)計(jì)進(jìn)行了詳細(xì)說(shuō)明,從數(shù)據(jù)單元及標(biāo)志單元的分配,到各子程序模塊的實(shí)現(xiàn)方法,以及對(duì)時(shí)鐘的誤差分析、校正,定時(shí)音與顯示相沖突問(wèn)題及解決方案。</p><p>&

51、lt;b>  5 系統(tǒng)調(diào)試</b></p><p>  該時(shí)鐘程序的功能模塊先后實(shí)現(xiàn)的順序?yàn)椋褐鞒绦颉鷷r(shí)間模塊→顯示模塊→鍵盤(pán)模塊→時(shí)間設(shè)定及其顯示模塊→日期及其顯示模塊→日期設(shè)定及其顯示模塊→定時(shí)及其顯示模塊→定時(shí)設(shè)定及其顯示模塊→定時(shí)提示音及與顯示相沖突的協(xié)調(diào)模塊。每完成一個(gè)模塊就與前一個(gè)已完成的模塊結(jié)合起來(lái)調(diào)試,直至實(shí)現(xiàn)相應(yīng)功能,再編寫(xiě)下一模塊程序。在與主程序銜接時(shí),主程序和各子程序也需作

52、相應(yīng)的改動(dòng),以便與子程序更好的銜接,特別是顯示子程序需作較大改動(dòng),以便對(duì)不同內(nèi)容進(jìn)行顯示。</p><p>  程序用偉福軟件進(jìn)行匯編語(yǔ)言程序編寫(xiě),該軟件還可進(jìn)行軟件仿真。用匯編語(yǔ)言編好程序后,先編譯,把匯編語(yǔ)言編譯成二進(jìn)制代碼和十六進(jìn)制代碼。若編譯無(wú)法進(jìn)行,說(shuō)明程序有語(yǔ)法錯(cuò)誤,需進(jìn)行修改。編譯成功后則可進(jìn)行軟件仿真,仿真可單步運(yùn)行,也可連續(xù)運(yùn)行。仿真時(shí)應(yīng)調(diào)出數(shù)據(jù)窗口,看各單元數(shù)據(jù)是否正確,這是軟件仿真的目的。當(dāng)

53、然,有些錯(cuò)誤軟件仿真不容易發(fā)現(xiàn),這就得把編譯得到二進(jìn)制代碼或十六進(jìn)制代碼下載到實(shí)驗(yàn)板上運(yùn)行(用Easy 51Pro下載軟件,與實(shí)驗(yàn)板相配的下載軟件。下載時(shí)先擦再寫(xiě),若不能能正常寫(xiě)入,則再擦,再寫(xiě),直到寫(xiě)入芯片),看是否正常,若不正常,再根據(jù)出錯(cuò)的地方返回用軟件仿真,查看相應(yīng)的數(shù)據(jù)單元,再修改程序,這樣反復(fù)調(diào)試,直至程序可用,在實(shí)驗(yàn)板上能正常運(yùn)行。</p><p>  待程序調(diào)試成功后即可燒寫(xiě)到實(shí)驗(yàn)板上,讓其運(yùn)行,

54、至此,完成系統(tǒng)調(diào)試。</p><p><b>  結(jié)束語(yǔ)</b></p><p>  經(jīng)過(guò)兩個(gè)多月的工作,基于單片機(jī)的電子時(shí)鐘系統(tǒng)的設(shè)計(jì)已經(jīng)完成。經(jīng)試驗(yàn)驗(yàn)證,滿(mǎn)足設(shè)計(jì)要求。由于加入了計(jì)時(shí)修正,在精度方面已經(jīng)相當(dāng)準(zhǔn)確了,不過(guò)還可以達(dá)到更高精度,需要精確計(jì)算定時(shí)器T0中斷次數(shù)的誤差,再予以修正;在軟件的定時(shí)部分可以進(jìn)行改進(jìn),用循環(huán)程序?qū)崿F(xiàn),每次循環(huán)只需更改相應(yīng)單元即可,這

55、樣使程序精簡(jiǎn)。由于時(shí)間原因,沒(méi)能實(shí)現(xiàn)這兩部分。該系統(tǒng)的擴(kuò)展功能由于硬件原因不能實(shí)現(xiàn),以后如硬件允許可以實(shí)現(xiàn)這部分功能,還可增加其它功能。</p><p>  本次設(shè)計(jì)主要涉及了單片機(jī)原理及接口技術(shù)的相關(guān)知識(shí)和匯編語(yǔ)言編程的諸多要領(lǐng)。設(shè)計(jì)中涉及的許多問(wèn)題,更是對(duì)以前所學(xué)的知識(shí)的回顧及在過(guò)去的三年中學(xué)到知識(shí)的系統(tǒng)總結(jié),這次設(shè)計(jì)對(duì)我們將來(lái)的工作有很大的幫助。</p><p>  在設(shè)計(jì)中,我積極

56、查閱資料,細(xì)心鉆研各個(gè)細(xì)節(jié),完成了多功能時(shí)鐘的開(kāi)發(fā)與調(diào)試,也讓我們明白了在設(shè)計(jì)中考慮問(wèn)題應(yīng)該全面。在設(shè)計(jì)中既鍛煉了我的動(dòng)手能力,又學(xué)會(huì)查閱資料,提煉需要的信息。</p><p>  由于本人水平有限,文中難免出現(xiàn)錯(cuò)誤與不足之處,懇請(qǐng)各位老師批評(píng)指正。</p><p><b>  致謝</b></p><p>  首先要感謝我的家人,是他們讓我能

57、上大學(xué);在大學(xué)里,先要學(xué)會(huì)學(xué)習(xí)才能學(xué)的更好,是老師教了我怎樣學(xué)習(xí),到現(xiàn)在能完成畢業(yè)設(shè)計(jì),都少不了老師的功勞;在整個(gè)設(shè)計(jì)過(guò)程中,從硬件電路圖到軟件編程,應(yīng)用了相當(dāng)多的知識(shí),包含了大學(xué)三年所學(xué)的知識(shí),在此向各位任課老師表示感謝。</p><p>  在設(shè)計(jì)過(guò)程中,指導(dǎo)老師xxx老師給予了我很大幫助,李老師對(duì)設(shè)計(jì)中出現(xiàn)的問(wèn)題作了及時(shí)講解和耐心指導(dǎo),使我的設(shè)計(jì)得以順利完成。在此,特向xxx老師、xxx老師、xxx老師等

58、表示感謝;同時(shí),很多同學(xué)也給我提供了很多幫助,也向幫助我的同學(xué)表示感謝。</p><p>  附錄A:實(shí)驗(yàn)板原理圖</p><p><b>  附錄B:程序清單</b></p><p>  ORG 0000H</p><p>  LJMP START</p><p>  ORG

59、 000BH</p><p>  LJMP INTT0</p><p>  ORG 001BH</p><p>  LJMP INTT1</p><p>  ;;;;;;;;;;;;主程序;;;;;;;;;;;;</p><p>  ORG 0020H</p><p&g

60、t;  START: MOV R0,#20H ;清20H--4FH共48個(gè)單元</p><p>  MOV R7,#30H ;20H,21H標(biāo)志用</p><p>  CLEARA: MOV @R0,#00H</p><p>  INC R0</p><p>  DJNZ

61、 R7,CLEARA</p><p>  CLR P2.2</p><p>  CLR P2.1</p><p>  CLR P2.0</p><p>  MOV SP,#50H</p><p>  MOV 33H,#01H</p><

62、p>  MOV 34H,#0AH</p><p>  MOV 35H,#07H</p><p>  MOV TMOD,#11H ;設(shè)T0、T1為16位定時(shí)器</p><p>  MOV TL0,#00H ;50MS定時(shí)初值(T0計(jì)時(shí)用)</p><p>  MOV TH

63、0,#4CH</p><p>  MOV TL1,#00H</p><p>  MOV TH1,#4CH</p><p>  SETB EA</p><p>  SETB ET0</p><p>  SETB TR0</p><p>  MOV

64、 R4,#14H</p><p>  START1: LCALL DISPLAY</p><p>  LCALL KEY</p><p>  JB ACC.3,$+6</p><p>  DATE1: LCALL DATE</p><p>  JB ACC.2,$+

65、6</p><p>  TIMEA: LCALL TIME</p><p>  JB ACC.1,$+6</p><p>  SETTIME1: LCALL SETTIME</p><p>  JB ACC.0,$+6</p><p>  JNB 0EH,$+6

66、 ;定時(shí)顯示判斷</p><p>  LCALL RING1</p><p>  SJMP START1</p><p>  ;;;;;;;;;;;;;;;;;;;計(jì)時(shí)程序;;;;;;;;;;;;;;;;;;;</p><p>  INTT0: PUSH ACC</p><p&g

67、t;  PUSH PSW</p><p>  CLR ET0</p><p>  CLR TR0</p><p>  MOV A,#06H ;TL=#06H,TH=#4CH</p><p>  ADD A,TL0 ;低8位初值修正</p><

68、p>  MOV TL0,A ;重裝初值(低8位修正值)</p><p>  MOV A,#4CH </p><p>  ADDC A,TH0 ;高8位初值修正</p><p>  MOV TH0,A ;重裝初值(高8位修正值)</p><p>  SETB

69、 TR0</p><p>  DJNZ R4, $+5 ;1s未到中斷退出</p><p>  LJMP $+6</p><p>  LJMP OUTT0</p><p>  MOV R4,#14H</p><p>  INC 30H</p>

70、<p>  MOV A,30H</p><p>  CJNE A,#3CH,$+6</p><p>  LJMP $+6</p><p>  LJMP OUTT0</p><p>  MOV 30H,#00H</p><p>  INC 31H</p&g

71、t;<p>  LCALL TIME1 ;調(diào)定時(shí)比較程序</p><p>  MOV A,31H</p><p>  CJNE A,#3CH,$+5</p><p>  SJMP $+5</p><p>  LJMP OUTT0</p><p>  

72、MOV 31H,#00H</p><p>  INC 32H</p><p>  MOV A,32H</p><p>  CJNE A,#18H,$+6</p><p>  LJMP $+6</p><p>  LJMP OUTT0</p><p&g

73、t;  MOV 32H,#00H</p><p>  INC 33H</p><p>  MOV30H,#02H;時(shí)間修正</p><p>  MOV A,34H</p><p>  CJNE A,#02H,$+6</p><p>  LJMP MON2</p&g

74、t;<p>  CJNE A,#04H,$+6</p><p>  LJMP DAY30</p><p>  CJNE A,#06H,$+6</p><p>  LJMP DAY30</p><p>  CJNE A,#09H,$+6</p><p>  LJMP

75、 DAY30</p><p>  CJNE A,#0BH,$+6</p><p>  LJMP DAY30</p><p>  MOV A,33H</p><p>  CJNE A,#20H,$+6</p><p>  LJMP LOOP1</p><p

76、>  LJMP OUTT0</p><p>  DAY30: MOV A,33H</p><p>  CJNE A,#1FH,$+6</p><p>  LJMP LOOP1</p><p>  LJMP OUTT0</p><p>  MON2: MOV A,35H

77、</p><p>  MOV B,#04H</p><p>  DIV AB</p><p>  MOV A,B</p><p>  JZ DAY29</p><p>  MOV A,33H</p><p>  CJNE A,#1DH,$+6

78、</p><p>  LJMP LOOP1</p><p>  LJMP OUTT0</p><p>  DAY29: MOV A,33H</p><p>  CJNE A,#1EH,$+6</p><p>  LJMP LOOP1</p><p>  L

79、JMP OUTT0</p><p>  LOOP1: MOV 33H,#01H</p><p>  INC 34H</p><p>  MOV A,34H</p><p>  CJNE A,#0DH,$+6</p><p>  LJMP $+6</p>&

80、lt;p>  LJMP OUTT0</p><p>  MOV 34H,#01H</p><p>  INC 35H</p><p>  MOV A,35H</p><p>  CJNE A,#64H,$+6</p><p>  LJMP $+6</p>

81、;<p>  LJMP OUTT0</p><p>  MOV 35H,#00H</p><p>  OUTT0: POP PSW</p><p>  POP ACC</p><p>  SETB ET0</p><p><b>  RETI</

82、b></p><p>  ;;;;;;;;;;;;;;;;;;;定時(shí)比較程序;;;;;;;;;;;;;;;</p><p>  TIME1: JNB 0BH,TIME2</p><p>  MOV A,31H</p><p>  CJNE A,37H,TIME2</p><p>  MO

83、V A,32H</p><p>  CJNE A,38H,TIME2</p><p>  SETB 08H ;鬧鈴1顯示標(biāo)志位置位</p><p>  SJMP RING</p><p>  TIME2: JNB 0CH,TIME3</p><p> 

84、 MOV A,31H</p><p>  CJNE A,3AH,TIME3</p><p>  MOV A,32H</p><p>  CJNE A,3BH,TIME3</p><p>  SETB 09H ;鬧鈴2顯示標(biāo)志位置位</p><p>  S

85、JMP RING</p><p>  TIME3: JNB 0DH,OUTTIME</p><p>  MOV A,31H</p><p>  CJNE A,3DH,OUTTIME</p><p>  MOV A,32H</p><p>  CJNE A,3EH,OUT

86、TIME</p><p>  SETB 0AH ;鬧鈴3顯示標(biāo)志位置位</p><p>  SJMP RING</p><p>  OUTTIME: RET</p><p>  RING: SETB 0EH</p><p><b>  RET</b>

87、;</p><p>  ;;;;;;;;;;;;;;;;;;;時(shí)鐘調(diào)整程序;;;;;;;;;;;;;;;;</p><p>  TIME: LCALL DL1S</p><p>  LCALL KEY</p><p>  JB ACC.2,$+5</p><p>  SJMP $+5&

88、lt;/p><p>  LJMP START1</p><p>  CLR ET0</p><p>  CLR TR0</p><p>  MOV 30H,#00H</p><p>  SETB 05H</p><p>  SETB 06H

89、 ;5、6位閃爍標(biāo)志位置位</p><p>  SETB ET1</p><p>  SETB TR1</p><p>  MOV R2,#06H</p><p>  LCALL DISPLAY</p><p>  LCALL KEY</p><

90、;p>  JNB ACC.2,$-6 ;等待鍵釋放</p><p>  TIMEHOUR: LCALL DISPLAY</p><p>  LCALL KEY</p><p>  JNB ACC.2,TIMEMIN ;等待鍵按下</p><p>  JB ACC.3,

91、$-9</p><p>  TIMEHOUR1: LCALL DL02S</p><p>  LCALL KEY</p><p>  JNB ACC.3,$+19 ;等待鍵釋放</p><p>  INC 32H</p><p>  MOV A,32H</p&

92、gt;<p>  CJNE A,#18H,$+6</p><p>  MOV 32H,#00H</p><p>  SETB 05H</p><p>  SETB 06H</p><p>  SJMP TIMEHOUR</p><p>  CLR 05H&

93、lt;/p><p>  CLR 06H</p><p>  INC 32H</p><p>  MOV A,32H</p><p>  CJNE A,#18H,$+6</p><p>  MOV 32H,#00H</p><p>  SJMP TI

94、MEHOUR1</p><p>  TIMEMIN: CLR 05H</p><p>  CLR 06H</p><p>  SETB 03H ;3、4位閃爍標(biāo)志位置位</p><p>  SETB 04H</p><p>  LCALL DISPLA

95、Y</p><p>  LCALL KEY</p><p>  JNB ACC.2,$-6 ;等待鍵釋放</p><p>  TIMEMIN1: LCALL DISPLAY</p><p>  LCALL KEY</p><p>  JNB ACC.2,TIMEOU

96、T ;等待鍵按下</p><p>  JB ACC.3,$-9</p><p>  TIMEMIN2: LCALL DL02S</p><p>  LCALL KEY</p><p>  JNB ACC.3,$+19 ;等待鍵釋放</p><p>  INC

97、 31H</p><p>  MOV A,31H</p><p>  CJNE A,#3CH,$+6</p><p>  MOV 31H,#00H</p><p>  SETB 03H</p><p>  SETB 04H</p><p>  S

98、JMP TIMEMIN1</p><p>  CLR 03H</p><p>  CLR 04H</p><p>  INC 31H</p><p>  MOV A,31H</p><p>  CJNE A,#3CH,$+6</p><p>

99、;  MOV 31H,#00H</p><p>  SJMP TIMEMIN2</p><p>  TIMEOUT: CLR 03H</p><p>  CLR 04H</p><p>  CLR ET1</p><p>  CLR TR1</p>

100、<p>  MOV R4,#14H</p><p>  SETB ET0</p><p>  SETB TR0</p><p>  LCALL DISPLAY</p><p>  LCALL KEY</p><p>  JNB ACC.2,$-6

101、 ;等待鍵釋放</p><p><b>  RET</b></p><p>  ;;;;;;;;;;;;;;;;;;;T1中斷程序;;;;;;;;;;;;;;</p><p>  INTT1: PUSH ACC</p><p>  PUSH PSW</p><p>  MOV

102、 TL1,#00H</p><p>  MOV TH1,#4CH</p><p>  DJNZ R2,INTT1OUT</p><p>  MOV R2,#06H</p><p>  JNB 01H,$+7</p><p>  CPL 02H</p>&l

103、t;p>  SJMP INTT1OUT</p><p>  JNB 03H,$+7</p><p>  CPL 04H</p><p>  SJMP INTT1OUT</p><p>  JNB 05H,$+5</p><p>  CPL 06H</p

104、><p>  INTT1OUT: POP PSW</p><p>  POP ACC</p><p><b>  RETI</b></p><p>  ;;;;;;;;;;;;;;;;;;;定時(shí)顯示與設(shè)定;;;;;;;;;;</p><p>  SETTIME: SETB

105、08H</p><p>  LCALL DISPLAY</p><p>  LCALL KEY</p><p>  JNB ACC.1,$-6 ;等待鍵釋放</p><p>  MOV 40H,#0FH ;顯示時(shí)長(zhǎng)</p><p>  LCALL DL

106、02S</p><p>  LCALL KEY</p><p>  JNB ACC.2,TIME1SET</p><p>  JNB ACC.1,DISPLAYTIME2</p><p>  DJNZ 40H,$-12</p><p>  CLR 08H</p&

107、gt;<p><b>  RET</b></p><p>  DISPLAYTIME2: CLR 08H</p><p>  SETB 09H</p><p>  LCALL DISPLAY</p><p>  LCALL KEY</p><p>  J

108、NB ACC.1,$-6 ;等待鍵釋放</p><p>  MOV 40H,#0FH ;顯示時(shí)長(zhǎng)</p><p>  LCALL DL02S</p><p>  LCALL KEY</p><p>  JNB ACC.2,TIME2SET1</p>&l

109、t;p>  JNB ACC.1,DISPLAYTIME3</p><p>  DJNZ 40H,$-12</p><p>  CLR 09H</p><p><b>  RET</b></p><p>  TIME2SET1: LJMP TIME2SET</p>&

110、lt;p>  DISPLAYTIME3: CLR 09H</p><p>  SETB 0AH</p><p>  LCALL DISPLAY</p><p>  LCALL KEY</p><p>  JNB ACC.1,$-6 ;等待鍵釋放</p><p&

111、gt;  MOV 40H,#0FH ;顯示時(shí)長(zhǎng)</p><p>  LCALL DL02S</p><p>  LCALL KEY</p><p>  JNB ACC.1,$+9</p><p>  JNB ACC.2,TIME3SET1</p><p>  D

112、JNZ 40H,$-12</p><p>  CLR 0AH</p><p>  LCALL DISPLAY</p><p>  LCALL KEY</p><p>  JNB ACC.1,$-6 ;等待鍵釋放</p><p><b>  RET&

113、lt;/b></p><p>  TIME3SET1: LJMP TIME3SET</p><p>  TIME1SET: SETB 05H;5、6位閃爍標(biāo)志位置位</p><p>  SETB 06H</p><p>  SETB ET1</p><p>  SETB

114、 TR1</p><p>  MOV R2,#06H</p><p>  LCALL DISPLAY</p><p>  LCALL KEY</p><p>  JNB ACC.2,$-6 ;等待鍵釋放</p><p>  TIME1HOUR: LCALL

115、DISPLAY</p><p>  LCALL KEY</p><p>  JNB ACC.2,TIME1MIN ;等待鍵按下</p><p>  JB ACC.3,$-9</p><p>  TIME1HOUR1: LCALL DL02S</p><p>  LCALL K

116、EY</p><p>  JNB ACC.3,$+19 ;等待鍵釋放</p><p>  INC 38H</p><p>  MOV A,38H</p><p>  CJNE A,#18H,$+6</p><p>  MOV 38H,#00H</p>

117、;<p>  SETB 05H</p><p>  SETB 06H</p><p>  SJMP TIME1HOUR</p><p>  CLR 05H</p><p>  CLR 06H</p><p>  INC 38H</p>&

118、lt;p>  MOV A,38H</p><p>  CJNE A,#18H,$+6</p><p>  MOV 38H,#00H</p><p>  SJMP TIME1HOUR1</p><p>  TIME1MIN: CLR 05H</p><p>  CLR

119、 06H</p><p>  SETB 03H ;3、4位閃爍標(biāo)志位置位</p><p>  SETB 04H</p><p>  LCALL DISPLAY</p><p>  LCALL KEY</p><p>  JNB ACC.2,$-6

120、 ;等待鍵釋放</p><p>  TIME1MIN1: LCALL DISPLAY</p><p>  LCALL KEY</p><p>  JNB ACC.2,TIME1SIGN ;等待鍵按下</p><p>  JB ACC.3,$-9</p><p

121、>  TIME1MIN2: LCALL DL02S</p><p>  LCALL KEY</p><p>  JNB ACC.3,$+19 ;等待鍵釋放</p><p>  INC 37H</p><p>  MOV A,37H</p><p>

122、;  CJNE A,#3CH,$+6</p><p>  MOV 37H,#00H</p><p>  SETB 03H</p><p>  SETB 04H</p><p>  SJMP TIME1MIN1</p><p>  CLR 03H</p>

123、<p>  CLR 04H</p><p>  INC 37H</p><p>  MOV A,37H</p><p>  CJNE A,#3CH,$+6</p><p>  MOV 37H,#00H</p><p>  SJMP TIME1MIN2<

溫馨提示

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

最新文檔

評(píng)論

0/150

提交評(píng)論