2023年全國(guó)碩士研究生考試考研英語(yǔ)一試題真題(含答案詳解+作文范文)_第1頁(yè)
已閱讀1頁(yè),還剩30頁(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、<p><b>  摘 要</b></p><p>  如今的科技已是飛躍的進(jìn)步,然而定時(shí)器的應(yīng)用永遠(yuǎn)不會(huì)退休?!岸〞r(shí)器”總的來(lái)說(shuō)有兩種類型,一種以機(jī)械時(shí)鐘形式的產(chǎn)品,這種定時(shí)器功能簡(jiǎn)單,應(yīng)用于成本比較低的產(chǎn)品中,如比較古老的滴水計(jì)時(shí)器、傳統(tǒng)的電風(fēng)扇。當(dāng)然滴水計(jì)時(shí)已被淘汰,而低價(jià)的風(fēng)扇中還是不會(huì)淘汰這種機(jī)械運(yùn)轉(zhuǎn)的精度不高的定時(shí)器。另一種是基于電子電路數(shù)字技術(shù)的新一代產(chǎn)品,這種產(chǎn)品

2、功能強(qiáng),精度高,控制和使用都比較直觀而靈活,是前者的替代之物。</p><p>  本設(shè)計(jì)開(kāi)發(fā)了一種基于單片機(jī)的專用定時(shí)器。它造價(jià)低,功能全,整體性價(jià)比高,可適應(yīng)很多的場(chǎng)合做為保護(hù)或定時(shí)預(yù)警系統(tǒng)中。</p><p>  此設(shè)計(jì)是最典型且經(jīng)典的單片機(jī)定時(shí)功能應(yīng)用設(shè)計(jì),設(shè)計(jì)中使用了單片機(jī)定時(shí)器的設(shè)計(jì)、單片機(jī)中斷使用方法、LED顯示技術(shù)等??梢詫?shí)現(xiàn)在100小時(shí)內(nèi)的任意時(shí)間定時(shí),另可外控負(fù)載和提示

3、報(bào)警等。</p><p>  設(shè)計(jì)中的硬件電路主要含蓋了STC89C51RC單片機(jī)、有源蜂鳴器、LED數(shù)字顯示數(shù)碼管等。在硬件的設(shè)計(jì)基礎(chǔ)上,通過(guò)軟件進(jìn)行數(shù)碼管的數(shù)值顯示、鍵掃描程序、蜂鳴器的提示音效和報(bào)警音效的處理。</p><p>  關(guān)鍵詞:定時(shí)器、STC89C51單片機(jī)、LED數(shù)字顯示數(shù)碼管</p><p><b>  ABSTRACT</b&

4、gt;</p><p>  Today, technology is a leap of progress, however, the application of the timer never retired. "Timer" In general there are two types, a mechanical clock in the form of products, such a

5、 simple timer function, used in low-cost products, such as the old drip timer, traditional fans . Of course, dripping timing has been eliminated, and cheap fan or accuracy of this mechanical operation of the timer will n

6、ot be eliminated. Another is based on a new generation of electronic circuits digital technology</p><p>  The design and development of a microcontroller-based dedicated timer. It is low cost, full-function,

7、 and overall cost-effective, and can be adapted to many occasions as a protection or in the timing early warning system.</p><p>  This design is the most typical and classic the microcontroller timing functi

8、on application design, the design used in the design of a microcontroller timer, microcontroller interrupt usage, LED display technologies. The arbitrary timing can be achieved in 100 hours, another may be outside the co

9、ntrol load and prompted alarm.</p><p>  The hardware circuit design covers Microcontroller STC89C51RC active buzzer, LED digital display digital tube. Hardware design based on the value of the digital tube d

10、isplay, key scanner prompt sound and alarm buzzer sound processing through software.</p><p>  Keywords: timer, STC89C51 microcontroller, LED digital display digital tube</p><p><b>  目 錄

11、</b></p><p><b>  前 言4</b></p><p>  第一章 系統(tǒng)任務(wù)與總體方案論證5</p><p><b>  1、設(shè)計(jì)任務(wù)5</b></p><p><b>  2、方案論證6</b></p><p>&l

12、t;b>  3、方案選擇7</b></p><p>  第二章 8051單片機(jī)的結(jié)構(gòu)7</p><p>  1、8051單片機(jī)的特點(diǎn)7</p><p>  2、8051單片機(jī)的片內(nèi)資源7</p><p>  3、8051的引腳信號(hào)8</p><p><b>  4、復(fù)位電路10&

13、lt;/b></p><p>  5、 時(shí)鐘電路10</p><p>  第三章 LED數(shù)碼管接口技術(shù)11</p><p>  1、LED數(shù)碼管的結(jié)構(gòu)與原理11</p><p>  2、多位LED顯示器的顯示方式13</p><p>  3、 LED顯示器接口技術(shù)14</p><p&

14、gt;  第四章 多用途定時(shí)器裝置的硬件設(shè)計(jì)15</p><p>  1、硬件電路結(jié)構(gòu)15</p><p><b>  2、電源電路16</b></p><p>  3、蜂鳴器報(bào)警電路16</p><p>  4、系統(tǒng)結(jié)構(gòu)原理整圖17</p><p><b>  5、硬件焊接

15、17</b></p><p>  第五章 多用途定時(shí)器裝置的軟件流程19</p><p>  1、所需要完成的定時(shí)器裝置功能19</p><p>  2、軟件設(shè)計(jì)思路19</p><p>  3、軟件程序流程圖20</p><p>  4、多用途定時(shí)器裝置的源程序如下20</p>&

16、lt;p>  5.多用途定時(shí)器裝置的實(shí)際應(yīng)用29</p><p><b>  結(jié) 論29</b></p><p><b>  參考文獻(xiàn)29</b></p><p><b>  致 謝30</b></p><p><b>  前 言</b

17、></p><p>  含有微處理器、存儲(chǔ)器、輸入/輸出電路及一些諸如中斷控制器、定時(shí)器/計(jì)數(shù)器等資源的集成電路芯片,它包含了作為一個(gè)計(jì)算機(jī)所必需的基本部件,在外部只需添加少許的外圍器件就可以組成完整的計(jì)算機(jī)實(shí)現(xiàn)控制目的,這樣的器件通常稱為單片機(jī)或微型控制器。單片機(jī)是通過(guò)內(nèi)部總線把計(jì)算機(jī)的各主要部件接為一體,其內(nèi)部總線包括地址總線、數(shù)據(jù)總線和控制總線。其中,地址總線的作用是在進(jìn)行數(shù)據(jù)交換時(shí)提供地址,CPU通

18、過(guò)它們將地址輸出到存儲(chǔ)器或I/O接口;/數(shù)據(jù)總線的作用是在CPU與存儲(chǔ)器或I/O接口之間,或存儲(chǔ)器與外設(shè)之間交換數(shù)據(jù);控制總線包括CPU發(fā)出的控制信號(hào)線和外部送入CPU的應(yīng)答信號(hào)線等。單片機(jī)誕生于20世紀(jì)70年代末,經(jīng)歷了單片微型計(jì)算(SCM)、微控制器(MCU)、單片應(yīng)用系統(tǒng)(SOC)三大階段。</p><p>  在日新月異的21世紀(jì)里,家用電子產(chǎn)品得到了迅速發(fā)展。現(xiàn)在的家用電器基本上都采用了單片機(jī)控制,從電

19、飯褒、洗衣機(jī)、電冰箱、空調(diào)機(jī)、彩電、其他音響視頻器材、再到電子秤量設(shè)備,五花八門(mén),無(wú)所不在。單片機(jī)在工商,金融,科研、教育,國(guó)防航空航天等領(lǐng)域都有著十分廣泛的用途。許多家電設(shè)備都趨于人性化、智能化,正是因?yàn)檫@些電器設(shè)備大部分都含有CPU控制器或者是單片機(jī)。用單片機(jī)來(lái)控制的小型家電產(chǎn)品具有便攜實(shí)用,操作簡(jiǎn)單的特點(diǎn)。</p><p>  單片機(jī)體積小,重量輕,具有很強(qiáng)的靈活性,而且價(jià)格低兼,越來(lái)越受到廣泛的應(yīng)用,該最

20、小系統(tǒng)選用的STC89C51RC單片機(jī)具有優(yōu)于其它同類別單片機(jī)的ISP在線編程功能,改寫(xiě)單片機(jī)存儲(chǔ)器內(nèi)的程序不需要把芯片從工作環(huán)境中剝離,實(shí)時(shí)修改程序的不足之處,并立即從目標(biāo)系統(tǒng)中反映出修改的結(jié)果,大大縮短單片機(jī)學(xué)習(xí)開(kāi)發(fā)的周期,提高效率;全新的加密算法,這使得對(duì)于89S51的解密變?yōu)椴豢赡埽绦虻谋C苄源蟠蠹訌?qiáng)這樣就可以有效的保護(hù)知識(shí)產(chǎn)權(quán)不被侵犯。該系統(tǒng)的資源可重復(fù)利用性使系統(tǒng)上的所有資源均能重復(fù)利用并能通過(guò)軟件調(diào)配或通過(guò)擴(kuò)展槽增加其它

21、的功能提高系統(tǒng)的實(shí)用性。</p><p>  論文的第一章確立系統(tǒng)任務(wù)與總體方案認(rèn)證,第二章對(duì)單片機(jī)及其應(yīng)用領(lǐng)域做了簡(jiǎn)單的介紹,第三章針對(duì)主要的顯示器件做全面性的了解和分析,第四章針對(duì)本設(shè)計(jì)講述硬件電路,從各個(gè)功能模塊出發(fā),具體的分析了電源電路、顯示電路、報(bào)警電路等幾個(gè)重要模塊的功能結(jié)構(gòu),第五章針對(duì)本設(shè)計(jì)講述軟件的流程。</p><p>  第一章 系統(tǒng)任務(wù)與總體方案論證</p>

22、;<p><b>  1、設(shè)計(jì)任務(wù)</b></p><p>  按照系統(tǒng)設(shè)計(jì)功能的要求,可初步確定設(shè)計(jì)系統(tǒng)由以下模塊組成。主控制模塊、顯示模塊、報(bào)警提示模塊、鍵盤(pán)模塊??梢詫?shí)現(xiàn)在100小時(shí)內(nèi)的任意時(shí)間定時(shí)操作,每分鐘還具有短音提示,按鍵按下時(shí)帶有按鍵音效。在非設(shè)定定時(shí)模式中,可以查看當(dāng)前定時(shí)的時(shí)間,顯示時(shí)間約半秒即可。當(dāng)報(bào)警后可用按鍵取消報(bào)警聲音,獨(dú)立完成系統(tǒng)的分析、設(shè)計(jì)和程序

23、編寫(xiě),并記錄開(kāi)發(fā)過(guò)程中的問(wèn)題及解決辦法,帶原理圖和硬件實(shí)物制作。主要技術(shù)參數(shù)含:</p><p>  主控模塊,以C51單片機(jī)為核心。</p><p>  顯示模塊,以傳統(tǒng)的LED數(shù)字顯示數(shù)碼管,電路越精簡(jiǎn)越節(jié)省成本為最好。</p><p>  鍵盤(pán)模塊,以操作簡(jiǎn)單易用為優(yōu)先。</p><p>  報(bào)警提示模塊,以蜂鳴器代替即可。</p

24、><p>  基于單片機(jī)系統(tǒng)的定時(shí)器電路還需要包含的功能模塊有:</p><p>  基本的單片機(jī)最小系統(tǒng)</p><p>  單片機(jī)的定時(shí)中斷資源</p><p><b>  單片機(jī)的電源選取</b></p><p><b>  2、方案論證</b></p>&l

25、t;p>  方案一:利用計(jì)算機(jī)的強(qiáng)大功能完成定時(shí)要求。</p><p>  利用計(jì)算機(jī)的操作系統(tǒng),在操作系統(tǒng)中安裝一個(gè)定時(shí)功能的應(yīng)用程序,具有直觀的操作界面,同時(shí)可用音箱系統(tǒng)做為報(bào)警的提示音,另外還可以擴(kuò)展計(jì)算機(jī)的并行端口或串行端口來(lái)控制外部設(shè)備的定時(shí)運(yùn)行。</p><p>  方案一的原理框圖如下:</p><p><b>  應(yīng)用程序</b

26、></p><p><b>  計(jì)算機(jī)串口控制信號(hào)</b></p><p>  計(jì)算機(jī)應(yīng)用程序界面 控制卡可定時(shí)啟動(dòng)報(bào)警</p><p>  圖1-1 方案一原理框圖</p><p>  方案二:利用單片機(jī)的定時(shí)器完成定時(shí)要求。</p><p>  利用單片機(jī)的定時(shí)

27、器,定時(shí)設(shè)定的時(shí)間,用LED數(shù)碼管顯示所設(shè)定的定時(shí)時(shí)間,設(shè)定好后由00:00向所設(shè)定的時(shí)間進(jìn)行正計(jì)時(shí)。時(shí)間長(zhǎng)短由按鍵按鍵調(diào)節(jié),正計(jì)時(shí)的時(shí)間與設(shè)定的時(shí)間一致時(shí)便控制蜂鳴器所報(bào)警,同時(shí)可擴(kuò)展輸出兩路正負(fù)信號(hào),以便將來(lái)用于控制外部設(shè)部。而串行端口用來(lái)對(duì)單片機(jī)在線編程。</p><p>  方案二的原理框圖如下:</p><p>  圖1-2 方案二原理框圖</p><p>

28、;<b>  3、方案選擇</b></p><p><b>  方案一:</b></p><p>  優(yōu)點(diǎn)是利用計(jì)算機(jī)的操作系統(tǒng)可安裝應(yīng)用程序的強(qiáng)大功能。在應(yīng)用程序界面中可很好的進(jìn)行時(shí)間顯示等控制輸出信息,操作非常簡(jiǎn)便。時(shí)間精確度可與計(jì)算機(jī)的本地時(shí)間同步、高穩(wěn)定性、高可靠性。基本無(wú)硬件原理,不需使用元器件,也無(wú)須制作硬件實(shí)物調(diào)試。</p&g

29、t;<p>  缺點(diǎn)是使用計(jì)算機(jī)來(lái)操作,從應(yīng)用角度來(lái)說(shuō)一個(gè)小型的定時(shí)器裝置,使用一臺(tái)功能強(qiáng)大的計(jì)算控制可謂是大材小用,殺雞用上了牛刀。從應(yīng)用程序角度來(lái)說(shuō)開(kāi)發(fā)人員必須對(duì)操作系統(tǒng)有一定的了解,對(duì)計(jì)算機(jī)的應(yīng)用程序的開(kāi)發(fā)要相當(dāng)熟悉。從性價(jià)比上來(lái)說(shuō)一臺(tái)計(jì)算機(jī)也行花上千來(lái)元,可謂是下了血本。從實(shí)際角度來(lái)說(shuō)這樣的設(shè)計(jì)毫無(wú)控制的實(shí)用價(jià)值。</p><p><b>  方案二:</b></

30、p><p>  優(yōu)點(diǎn)是利用單片機(jī)的定時(shí)器進(jìn)行定時(shí),時(shí)間精確、穩(wěn)定且可靠,并且還可以利用單片機(jī)的進(jìn)行時(shí)間的顯示、按鍵的檢測(cè)以及報(bào)警音效的提示等。其原理簡(jiǎn)單,元器件使用少,有實(shí)物可調(diào)試,出錯(cuò)率極低。此方案最為突出是的成本低。用單片機(jī)完成的定時(shí)器裝置,操作簡(jiǎn)單易懂,可應(yīng)用于生活中的廚房定時(shí)或冰箱保護(hù)裝置中。</p><p>  缺點(diǎn)是使用單片機(jī)需要進(jìn)行編程,而對(duì)不熟悉編程語(yǔ)言的人來(lái)就要獨(dú)立完成設(shè)計(jì)有

31、一定的困難。</p><p>  綜上所述,對(duì)兩個(gè)方案進(jìn)行了比較,從實(shí)際生活應(yīng)用以及成本上的考慮優(yōu)先選用方案二進(jìn)行設(shè)計(jì)。</p><p>  第二章 8051單片機(jī)的結(jié)構(gòu)</p><p>  1、8051單片機(jī)的特點(diǎn)</p><p>  8051單片機(jī)是在一塊芯片中集成了 CPU、 RAM、 ROM、定時(shí)器/ 計(jì)數(shù)器和多種功能的I/O接口等一

32、臺(tái)計(jì)算機(jī)所需要的基本功能部件。</p><p>  2、8051單片機(jī)的片內(nèi)資源</p><p>  單片機(jī)內(nèi)包含下列幾個(gè)部件:</p><p><b>  ·一個(gè)8位CPU;</b></p><p>  ·一個(gè)片內(nèi)振蕩器及時(shí)鐘電路;</p><p>  ·4K字節(jié)R

33、OM程序存儲(chǔ)器:</p><p>  ·128字節(jié)RAM數(shù)據(jù)存儲(chǔ)器;</p><p>  ·兩個(gè) 16位定時(shí)器/計(jì)數(shù)器;</p><p>  ·可尋址 64K外部數(shù)據(jù)存儲(chǔ)器和 64K外部程序存儲(chǔ)器空間的控制電路;</p><p>  ·32條可編程的I/O線(四個(gè)6位并行I/O端口)</p>

34、<p>  ·一個(gè)可編程全雙工串行口;</p><p>  ·具有五個(gè)中斷源、兩個(gè)優(yōu)先級(jí)嵌套中斷結(jié)構(gòu)。</p><p>  8051單片機(jī)框圖如圖2-1所示。各功能部件由內(nèi)部總線聯(lián)接在一起。</p><p>  圖中4K(4096)字節(jié)的ROM存儲(chǔ)器部分用EPROM替換就成為8751;</p><p>  圖

35、中去掉ROM部分就成為8031的結(jié)構(gòu)圖。</p><p><b>  圖 2—1</b></p><p>  3、8051的引腳信號(hào)</p><p>  8051單片機(jī)都采用 40引腳的雙列直播封裝方式。圖 2-2(A)為引腳排列圖,(b)為邏輯符號(hào)圖。</p><p><b>  圖2—2</b>

36、</p><p>  40條引腳說(shuō)明如下:</p><p>  1、主電源引腳VCC和VSS VCC——(40腳)接+5V電壓; VSS——(20腳)接地。 </p><p>  2、外接晶體引腳XTAL1和XTAL2 XTAL1(19腳)接外部晶體的一個(gè)引腳。在單片機(jī)內(nèi)部,它是一個(gè)反相放大器的輸入端,這個(gè)放大器構(gòu)成了片內(nèi)振蕩器。當(dāng)采用外部振蕩器時(shí),對(duì)HMOS

37、單片機(jī),此引腳應(yīng)接地;對(duì)CHMOS單片機(jī),此引腳作為驅(qū)動(dòng)端。 XTAL2(18腳)接外晶體的另一端。在單片機(jī)內(nèi)部,接至上述振蕩器的反相放大器的輸出端。采用外部振蕩器時(shí),對(duì)HMOS單片機(jī),該引腳接外部振蕩器的信號(hào),即把外部振蕩器的信號(hào)直接接到內(nèi)部時(shí)鐘發(fā)生器的輸入端;對(duì)XHMOS,此引腳應(yīng)懸浮。 </p><p>  3、控制或與其它電源復(fù)用引腳RST/VPD、ALE/PROG、PSEN和EA/VPP ①RST

38、/VPD(9腳)當(dāng)振蕩器運(yùn)行時(shí),在此腳上出現(xiàn)兩個(gè)機(jī)器周期的高電平將使單片機(jī)復(fù)位。推薦在此引腳與VSS引腳之間連接一個(gè)約8.2k的下拉電阻,與VCC引腳之間連接一個(gè)約10μF的電容,以保證可靠地復(fù)位。 VCC掉電期間,此引腳可接上備用電源,以保證內(nèi)部RAM的數(shù)據(jù)不丟失。當(dāng)VCC主電源下掉到低于規(guī)定的電平,而VPD在其規(guī)定的電壓范圍(5±0.5V)內(nèi),VPD就向內(nèi)部RAM提供備用電源。 ②ALE/PROG(30腳):當(dāng)訪問(wèn)外部

39、存貯器時(shí),ALE(允許地址鎖存)的輸出用于鎖存地址的低位字節(jié)。即使不訪問(wèn)外部存儲(chǔ)器,ALE端仍</p><p>  不變的頻率周期性地出現(xiàn)正脈沖信號(hào),此頻率為振蕩器頻率的1/6。因此,它可用作對(duì)外輸出的時(shí)鐘,或用于定時(shí)目的。然而要注意的是,每當(dāng)訪問(wèn)外部數(shù)據(jù)存儲(chǔ)器時(shí),將跳過(guò)一個(gè)ALE脈沖。ALE端可以驅(qū)動(dòng)(吸收或輸出電流)8個(gè)LS型的TTL輸入電路。 對(duì)于EPROM單片機(jī)(如8751),在EPROM編程期間,此引

40、腳用于輸入編程脈沖(PROG)。 ③PSEN(29腳):此腳的輸出是外部程序存儲(chǔ)器的讀選通信號(hào)。在從外部程序存儲(chǔ)器取指令(或常數(shù))期間,每個(gè)機(jī)器周期兩次PSEN有效。但在此期間,每當(dāng)訪問(wèn)外部數(shù)據(jù)存儲(chǔ)器時(shí),這兩次有效的PSEN信號(hào)將不出現(xiàn)。PSEN同樣可以驅(qū)動(dòng)(吸收或輸出)8個(gè)LS型的TTL輸入。 ④EA/VPP(引腳):當(dāng)EA端保持高電平時(shí),訪問(wèn)內(nèi)部程序存儲(chǔ)器,但在PC(程序計(jì)數(shù)器)值超過(guò)0FFFH(對(duì)851/8751/80C51)

41、或1FFFH(對(duì)8052)時(shí),將自動(dòng)轉(zhuǎn)向執(zhí)行外部程序存儲(chǔ)器內(nèi)的程序。當(dāng)EA保持低電平時(shí),則只訪問(wèn)外部程序存儲(chǔ)器,不管是否有內(nèi)部程序存儲(chǔ)器。對(duì)于常用的8031來(lái)說(shuō),無(wú)內(nèi)部程序存儲(chǔ)器,所以EA腳必須常接地,這樣才能只選擇外部程序存儲(chǔ)器。 對(duì)于EPROM型的單片機(jī)</p><p><b>  4、輸入/輸出引腳</b></p><p>  P0.0~P0.7,P1.0~P

42、1.7,P2.0~P2.7,P3.0~P3.7</p><p>  ·P0.0~P0.7: P0是一個(gè) 8位漏極開(kāi)路型雙向 I/O口。在訪問(wèn)外部存儲(chǔ)器時(shí),它是分時(shí)傳送的低字節(jié)地址和數(shù)據(jù)總線。PO口能以吸收電流的方式驅(qū)動(dòng)八個(gè)LSTTL負(fù)載。</p><p>  ·P1.0~P1.7: P1是一個(gè)帶有內(nèi)部提升電阻的 8位準(zhǔn)雙向 I/O口。它能驅(qū)動(dòng)(吸收或輸出電流)四個(gè)LST

43、TL負(fù)載。</p><p>  ·P2.0~P2.7: P2是一個(gè)帶有內(nèi)部提升電阻的8位準(zhǔn)雙向I/O口。在訪問(wèn)外部存儲(chǔ)器時(shí),它輸出高8位地址。P2口可以驅(qū)動(dòng)(吸收或輸出電流)四個(gè)LSTTL負(fù)載。</p><p>  ·P3.0~P3.7:P3是一個(gè)帶有內(nèi)部提升電阻的 8位準(zhǔn)雙向 I/O口。能驅(qū)動(dòng)(吸收或輸出電流)四個(gè)LSTTL負(fù)載。P3口還用于第二功能請(qǐng)參看表2-1。&

44、lt;/p><p>  表2—1 P3各口線的第二功能定義</p><p><b>  4、復(fù)位電路</b></p><p>  8051單片機(jī)的復(fù)位電路如圖2-3所示。在RESET(圖中表示為RST)輸入端出現(xiàn)高電平時(shí)實(shí)現(xiàn)復(fù)位和初始化。在振蕩器運(yùn)行的情況下,要實(shí)現(xiàn)復(fù)位操作,必須使RST引腳至少保持兩個(gè)機(jī)器周期(24個(gè)振蕩器周期)

45、高電平。CPU在第二個(gè)機(jī)器周期內(nèi)執(zhí)行內(nèi)部復(fù)位操作、以后每一個(gè)機(jī)器周期重復(fù)一次,直至 RST端電平變低。復(fù)位期間不產(chǎn)生 ALE及PSEN信號(hào)。</p><p><b>  圖2—3</b></p><p><b>  5、 時(shí)鐘電路</b></p><p>  8051片內(nèi)設(shè)有一個(gè)由反向放大器所構(gòu)成的振蕩電路,XTALl和X

46、TAL2 分別為振蕩電路的輸入端和輸出端。時(shí)鐘可以由內(nèi)部方式產(chǎn)生或外部方式產(chǎn)生。</p><p><b>  圖2—4</b></p><p>  內(nèi)部方式時(shí)鐘電路如圖2-4(a)所示。在XTAL1 和XTAL2引腳上外接定時(shí)元件,內(nèi)部振蕩電路就產(chǎn)生自激振蕩。定時(shí)元件通常采用石英晶體和電容組成的并聯(lián)諧振回路。晶體可以在 1.2 MHZ到 12MHZ之間選擇,電容值在

47、5~30 PF之間選擇,電容的大小可起頻率微調(diào)作用。外部方式的時(shí)鐘電路如圖2-4(b)所示,XTALl接地;XTAL2接外部振蕩器。對(duì)外部振蕩信號(hào)無(wú)特殊要求,只要保證脈沖寬度,一般采用頻率低于 12MHZ的方波信號(hào)。</p><p>  第三章 LED數(shù)碼管接口技術(shù)</p><p>  1、LED數(shù)碼管的結(jié)構(gòu)與原理</p><p>  八段LED顯示器的每一段均由一

48、個(gè)或幾個(gè)LED組成,依靠段的組合來(lái)顯示所需的數(shù)字或字符。</p><p>  段的標(biāo)記一般采用字母a、b、c、d、e、f、g、h來(lái)表示,見(jiàn)圖3-1(a)。</p><p>  八段LED顯示器有共陰極的和共陽(yáng)極的兩種,圖3-1(b)、(c)。</p><p><b>  圖3—1</b></p><p><b>

49、;  顯示原理</b></p><p>  八段LED顯示器與單片機(jī)的接口比較簡(jiǎn)單,只要將一個(gè)8位并行口與顯示器的引腳對(duì)應(yīng)相接即可,如圖3-2。由8位并行口輸出不同的字節(jié)數(shù)據(jù),顯示出不同的數(shù)字或字符。</p><p><b>  圖3—2</b></p><p>  控制LED顯示出不同的數(shù)字或字符的8位字節(jié)數(shù)據(jù)稱為“段選碼”。共陰

50、極LED與共陽(yáng)極LED的段選碼互為補(bǔ)碼。</p><p><b>  常用字符的段選碼</b></p><p>  設(shè)8位并行口與LED數(shù)碼管各段的連接是(表3-1):</p><p>  表3-1 8為并行口與LED的連接 </p><p>  常用字符的段選碼如下(表3-2): </p><

51、;p>  表3-2 常用字符段選碼</p><p>  2、多位LED顯示器的顯示方式</p><p>  將多個(gè)LED顯示塊組合在一起就構(gòu)成了多位LED顯示器。每個(gè)LED顯示器的段引腳稱為段選線,公共端稱為位選線。段選線控制顯示的字符,位選線控制該LED的亮和滅。按照顯示器的工作方式不同,位選線和段選線的連接方法也不同。</p><p>  LED顯示器有

52、靜態(tài)顯示和動(dòng)態(tài)顯示兩種方式:</p><p><b>  ① 靜態(tài)顯示</b></p><p>  所謂靜態(tài)顯示,就是當(dāng)顯示器顯示某一個(gè)字符時(shí),相應(yīng)的發(fā)光二極管恒定地導(dǎo)通或截止。例如,七段顯示器的a,b,c,d,e,f導(dǎo)通,g截止,則顯示0。</p><p>  這種顯示器方式,每一位都需要有一個(gè)8位輸出口控制。所以占用硬件多,一般用于顯示器位

53、數(shù)較?。ê苌伲┑膱?chǎng)合。當(dāng)位數(shù)較多時(shí);用靜態(tài)顯示所需的I/O口太多,一般采用動(dòng)態(tài)顯示方法。</p><p><b> ?、?動(dòng)態(tài)顯示</b></p><p>  所謂動(dòng)態(tài)顯示,就是將所有各位的段選線并聯(lián)在一起,由一個(gè)8位并行口控制,而各位的公共端COM分別由相應(yīng)的I/O口線控制。要使各位顯示出不同的字符,就得采用掃描的方法,一位一位地輪流點(diǎn)亮各位顯示器(掃描)。對(duì)于每一

54、位顯示器來(lái)說(shuō),每隔一段時(shí)間點(diǎn)亮一次。</p><p>  顯示器的點(diǎn)亮既跟點(diǎn)亮?xí)r的導(dǎo)通電流有關(guān),也跟點(diǎn)亮?xí)r間和間隔時(shí)間的比例有關(guān)。調(diào)整電流和時(shí)間的參數(shù),可實(shí)現(xiàn)亮度較高較穩(wěn)定的顯示。</p><p>  若顯示器的位數(shù)不大于 8位,則控制顯示器公共極電位只需一個(gè) I/O口(稱為位選口),制各位顯示器所顯示的字形也需一個(gè)I/O口(稱為段選口)。</p><p>  圖3

55、-3是一種采用8155與6位共陰極LED顯示器的接口電路。</p><p><b>  圖3—3</b></p><p>  3、 LED顯示器接口技術(shù)</p><p>  為了顯示相應(yīng)的字符,必須將該字符轉(zhuǎn)換成相應(yīng)的段選碼。這種轉(zhuǎn)換也稱為譯碼。譯碼可以采用硬件的方法,也可以采用軟件的方法。</p><p> ?、?采用

56、硬件譯碼的LED顯示器接口技術(shù)</p><p>  在有些場(chǎng)合中,僅要求 LED顯示器能顯示十六進(jìn)制和十進(jìn)制帶小數(shù)點(diǎn)的數(shù)。這時(shí),可選用Motorola公司的MC14495(CMOS BCD-7段十六進(jìn)制鎖存譯碼驅(qū)動(dòng)器),如圖3-4。</p><p> ?、?采用軟件譯碼的LED顯示器接口技術(shù)</p><p>  在有些應(yīng)用場(chǎng)合中,不僅要求LED顯示器能顯示十六進(jìn)制數(shù)

57、,還要求能顯示某些特殊的字符(如“CPU”),這時(shí)就需要采用軟件譯碼。</p><p>  由于單片機(jī)本身具有較強(qiáng)的邏輯控制能力,采用軟件譯碼并不復(fù)雜。其譯碼邏輯可以隨意編程設(shè)定,不受硬件邏輯限制,同時(shí)還能簡(jiǎn)化硬件電路結(jié)構(gòu)。因此,在單片機(jī)應(yīng)用系統(tǒng)中使用非常廣泛。</p><p><b>  圖3—4</b></p><p>  軟件譯碼的基本方

58、法:</p><p>  將所有要顯示的字符的段選碼列成一個(gè)表(字庫(kù)),存放在存儲(chǔ)器中,使用時(shí),按照所需顯示的字符從表中查取相應(yīng)的段選碼送到顯示口。</p><p>  第四章 多用途定時(shí)器裝置的硬件設(shè)計(jì)</p><p><b>  1、硬件電路結(jié)構(gòu)</b></p><p>  以下用一個(gè)完整的電路方框圖來(lái)簡(jiǎn)述本定時(shí)器裝

59、置</p><p><b>  2、電源電路</b></p><p>  電源電路本想使用電池進(jìn)行供電,而考慮到顯示是以功耗比較大的LED數(shù)碼管,為能長(zhǎng)時(shí)間持久使用因此選擇了USB頭做為電源的接口,這樣只需要外接USB接口的電源即可,如計(jì)算機(jī)的USB口或手機(jī)充電器等。工作電壓當(dāng)然是5V,而端口處使用電容器進(jìn)行電源濾波。</p><p><

60、b>  3、蜂鳴器報(bào)警電路</b></p><p>  蜂鳴器選用有源蜂鳴器,這樣只需要加電即可進(jìn)行報(bào)警,而STC89C51單片機(jī)的IO端口驅(qū)動(dòng)能力有限,蜂鳴器的內(nèi)阻比較小,因此需要外加一個(gè)PNP型的三極管以為單片機(jī)的IO端口擴(kuò)大輸出電流來(lái)控制蜂鳴器發(fā)出報(bào)警聲音。</p><p>  4、系統(tǒng)結(jié)構(gòu)原理整圖</p><p>  整體電路中,包含有ST

61、C89C51單片機(jī)最小系統(tǒng),及復(fù)位電路、時(shí)鐘電路、串行在線編程端口。</p><p>  按鍵設(shè)定了三個(gè)按鍵,低電平有效。K1鍵是設(shè)置鍵,K2鍵是加數(shù)值,K3鍵是減數(shù)值。</p><p>  L1指示燈,接在單片機(jī)P25和P26端口上,此兩個(gè)端口輸出的就是正負(fù)信號(hào)。當(dāng)P25輸出為高電平,P26輸出為低電平時(shí)指示燈就點(diǎn)亮了,反之則處于熄滅狀態(tài)。</p><p>  C

62、51單片機(jī)P0口是開(kāi)漏,所以作為輸入輸出端口使用時(shí)接口需要外接上拉電阻,電路圖中外接了一個(gè)1K的上拉電阻。本想使用共陰型數(shù)碼管,這樣數(shù)碼管的八段為高電平時(shí),每路LED的電流均勻流入,在共陰極端流出,而1K的上拉電阻便是每段LED的限流電阻,這樣的設(shè)計(jì)即可省去擴(kuò)流電路的驅(qū)動(dòng)三極管。</p><p>  在元件采購(gòu)時(shí)購(gòu)買到了共陽(yáng)型的數(shù)碼管,程序設(shè)計(jì)完后進(jìn)行驅(qū)動(dòng)時(shí)發(fā)現(xiàn)數(shù)碼管的亮度非常低,這樣的顯示效果肯定是不行的。而為

63、了節(jié)省成本,并不對(duì)硬件進(jìn)行大的修改,便在共陽(yáng)端外接了一個(gè)上拉排阻,這樣共陽(yáng)端口為低電平時(shí)數(shù)碼管不顯示,而為高電平時(shí)雖然每一位的IO輸出電流比較小,不足以驅(qū)動(dòng)8段LED,而外接的上拉電阻正好可以為8段LED提供足夠的顯示亮度的電流。</p><p><b> ?。?、硬件焊接</b></p><p>  硬件的設(shè)計(jì)為了降低設(shè)計(jì)成本,因此初調(diào)并不未開(kāi)設(shè)PCB板,而是采用萬(wàn)能

64、電路板進(jìn)行手工焊接。元件布局如圖4-1所示,焊接走線效果圖如圖4-2所示。</p><p><b>  圖4-1元件布局圖</b></p><p><b>  圖4-2焊接效果圖</b></p><p>  第五章 多用途定時(shí)器裝置的軟件流程</p><p>  1、所需要完成的定時(shí)器裝置功能<

65、;/p><p>  能在數(shù)碼管上顯示時(shí)分</p><p>  設(shè)置按鍵,可對(duì)定時(shí)時(shí)間進(jìn)行設(shè)定</p><p>  設(shè)定的時(shí)間到需要具有報(bào)警提示音</p><p>  在完成定時(shí)功能的基礎(chǔ)上可發(fā)揮擴(kuò)展功能(任意)</p><p><b>  2、軟件設(shè)計(jì)思路</b></p><p&g

66、t;  用STC89C51單片機(jī)的P0口對(duì)數(shù)碼管的段送顯示數(shù)據(jù)</p><p>  用STC89C51單片機(jī)的P2口對(duì)數(shù)碼管的位進(jìn)行動(dòng)態(tài)掃描</p><p>  用STC89C51單片機(jī)的P2.0驅(qū)動(dòng)蜂鳴器報(bào)警</p><p>  用STC89C51單片機(jī)的P3.5、P3.6、P3.7分別對(duì)定時(shí)器裝置進(jìn)行設(shè)置,對(duì)時(shí)進(jìn)行加1和減1、分進(jìn)行加1和減1操作</p&g

67、t;<p>  采用定時(shí)器0進(jìn)行定時(shí),累加計(jì)算</p><p>  設(shè)置累加半秒標(biāo)志,定時(shí)到半秒時(shí)在數(shù)碼管的時(shí)鐘個(gè)位的小數(shù)點(diǎn)進(jìn)行亮滅操作</p><p>  設(shè)置累加一分鐘標(biāo)志,進(jìn)行短蜂鳴提示</p><p>  為按鍵增加按鍵提示音效</p><p>  定時(shí)時(shí)間到后讓綠色LED點(diǎn)亮,否則不點(diǎn)亮</p><

68、p><b>  3、軟件程序流程圖</b></p><p>  左圖為前臺(tái)服務(wù)程序流程圖,右邊為后臺(tái)服務(wù)程序(定時(shí)器0中斷)的流程圖</p><p>  4、多用途定時(shí)器裝置的源程序如下</p><p>  #include <REGX51.H></p><p>  #define uint unsig

69、ned int</p><p>  #define uchar unsigned char</p><p>  #define true 1</p><p>  #define false 0</p><p>  sbit Mode_key = P3^5;</p><p>  sbit INC_key = P3^6;

70、</p><p>  sbit DEC_key = P3^7;</p><p>  sbit Beep = P2^0;</p><p>  sbit COM0 = P2^4;//最右</p><p>  sbit COM1 = P2^1;</p><p>  sbit COM2 = P2^2;</p>

71、<p>  sbit COM3 = P2^3;//最左</p><p>  sbit LED = P0^7;</p><p>  sbit LED_A = P2^5; //定時(shí)時(shí)間到,正負(fù)極對(duì)稱輸出信號(hào) 可外接繼電器等負(fù)載</p><p>  sbit LED_K = P2^6;</p><p>  #define SEG

72、 P0</p><p>  uchar code seg_dat[] =</p><p><b>  {</b></p><p>  0xC0,/*0*/</p><p>  0xF9,/*1*/</p><p>  0xA4,/*2*/</p><p>  0xB0,/*

73、3*/</p><p>  0x99,/*4*/</p><p>  0x92,/*5*/</p><p>  0x82,/*6*/</p><p>  0xF8,/*7*/</p><p>  0x80,/*8*/</p><p>  0x90,/*9*/</p><p&g

74、t;  // 0x7F,/*.*/</p><p><b>  };</b></p><p>  char hour, min, sec;</p><p>  char mode = 0, hour_c = 0, min_c = 3;//初始上電設(shè)置報(bào)警時(shí)間是3分鐘</p><p>  bit f

75、lag = false, key_ok = false, flag_c = true;</p><p>  bit beep_en, music_en, dis_f = 0;</p><p>  /****************************************************************************</p><p>

76、<b>  函數(shù)名:延時(shí)函數(shù)</b></p><p>  調(diào) 用:delayms(uint t);</p><p><b>  參 數(shù):無(wú)</b></p><p><b>  返回值:無(wú)</b></p><p>  結(jié) 果:占用CPU時(shí)間</p><p

77、><b>  備 注:</b></p><p>  /****************************************************************************/ </p><p>  void delayms(uint t) // 晶振頻率12M</p>

78、<p><b>  {</b></p><p><b>  uint i;</b></p><p>  while(t --)</p><p>  for(i = 0;i < 125;i ++);</p><p><b>  }</b></p>

79、<p>  /*****************************************************************************</p><p>  函數(shù)名:系統(tǒng)初始化函數(shù)</p><p>  調(diào) 用:sys_init();</p><p><b>  參 數(shù):無(wú)</b></p>

80、<p><b>  返回值:無(wú)</b></p><p><b>  結(jié) 果:</b></p><p><b>  備 注:</b></p><p>  /*****************************************************************

81、**********/</p><p>  void sys_init()</p><p><b>  {</b></p><p>  SEG = 0xFF;//關(guān)秒指示</p><p>  P2 = 0xFF;//關(guān)顯示</p><p>  TMOD = 0x01;

82、 //T0工作在方式1,16位計(jì)數(shù)器</p><p>  TH0 = 0xd8; //10MS</p><p>  TL0 = 0xf0; </p><p>  TR0 = 1; //開(kāi)定時(shí)器0;</p><p><b>  ET0 = 1;</b></p><p>

83、<b>  EA = 1;</b></p><p>  LED_A = 0;</p><p>  LED_K = 1;</p><p><b>  }</b></p><p>  /***********************************************************

84、***************</p><p>  函數(shù)名:數(shù)碼管顯示函數(shù)</p><p>  調(diào) 用:display();</p><p><b>  參 數(shù):無(wú)</b></p><p><b>  返回值:無(wú)</b></p><p>  結(jié) 果:循環(huán)顯示數(shù)據(jù)<

85、/p><p><b>  備 注:</b></p><p>  /************************************************************************/</p><p>  void display()</p><p><b>  {</b>

86、</p><p>  switch(mode)</p><p><b>  {</b></p><p><b>  case 0:</b></p><p><b>  if(dis_f)</b></p><p><b>  {</b>

87、;</p><p>  //顯示設(shè)定的時(shí)間值 </p><p>  SEG = seg_dat[hour_c / 10]; // 顯示時(shí)的十位</p><p>  COM3 = true;</p><p>  delayms(2);</p><p>  COM3 = false;</p&g

88、t;<p>  SEG = seg_dat[hour_c % 10] & 0x7F; // 顯示時(shí)的個(gè)位</p><p>  COM2 = true;</p><p>  delayms(2);</p><p>  COM2 = false;</p><p>  SEG = seg_dat[min_c /

89、 10]; // 顯示分的十位</p><p>  COM1 = true;</p><p>  delayms(2);</p><p>  COM1 = false;</p><p>  SEG = seg_dat[min_c % 10]; // 顯示分的個(gè)位</p><p>  

90、COM0 = true;</p><p>  delayms(2);</p><p>  COM0 = false;</p><p><b>  }</b></p><p><b>  else</b></p><p><b>  {</b></p

91、><p>  //正常計(jì)時(shí)顯示 </p><p>  SEG = seg_dat[hour / 10]; // 顯示時(shí)的十位</p><p>  COM3 = true;</p><p>  delayms(2);</p><p>  COM3 = false;</p><p&g

92、t;  SEG = seg_dat[hour % 10]; // 顯示時(shí)的個(gè)位</p><p><b>  if(flag)</b></p><p>  LED = ~ LED;</p><p>  COM2 = true;</p><p>  delayms(2);</p><p&g

93、t;  COM2 = false;</p><p>  SEG = seg_dat[min / 10]; // 顯示分的十位</p><p>  COM1 = true;</p><p>  delayms(2);</p><p>  COM1 = false;</p><p>  SEG = seg

94、_dat[min % 10]; // 顯示分的個(gè)位</p><p>  COM0 = true;</p><p>  delayms(2);</p><p>  COM0 = false;</p><p><b>  }</b></p><p><b>  break;

95、</b></p><p>  case 1://調(diào)時(shí)狀態(tài) </p><p>  SEG = seg_dat[hour_c / 10];// 顯示分的十位</p><p>  COM3 = true;</p><p>  delayms(2);</p><p>  COM3 = f

96、alse;</p><p>  SEG = seg_dat[hour_c % 10];// 顯示分的個(gè)位</p><p><b>  if(flag)</b></p><p>  LED = ~ LED;</p><p>  COM2 = true;</p><p>  delayms(2)

97、;</p><p>  COM2 = false;</p><p><b>  break;</b></p><p>  case 2://調(diào)分狀態(tài)</p><p>  SEG = seg_dat[min_c / 10]; // 顯示分的十位</p><p>  COM

98、1 = true;</p><p>  delayms(2);</p><p>  COM1 = false;</p><p>  SEG = seg_dat[min_c % 10]; // 顯示分的個(gè)位</p><p><b>  if(flag)</b></p><p>  LED

99、 = ~ LED;</p><p>  COM0 = true;</p><p>  delayms(2);</p><p>  COM0 = false;</p><p><b>  break;</b></p><p><b>  }</b></p><

100、;p>  if((hour == hour_c) && (min == min_c) && (mode == 0))</p><p>  //時(shí) 分 不是在調(diào)節(jié)模式時(shí)數(shù)據(jù)一致則產(chǎn)生提示</p><p><b>  {</b></p><p>  music_en = 1;</p><p

101、>  LED_A = 1;</p><p>  LED_K = 0;//正負(fù)信號(hào)輸出</p><p><b>  }</b></p><p><b>  }</b></p><p>  /**************************************************

102、*************************</p><p>  函數(shù)名:按鍵處理函數(shù)</p><p>  調(diào) 用:read_key();</p><p><b>  參 數(shù):無(wú)</b></p><p><b>  返回值:無(wú)</b></p><p><b&g

103、t;  結(jié) 果:</b></p><p><b>  備 注:</b></p><p>  /*************************************************************************/</p><p>  void read_key(void)</p>&l

104、t;p><b>  {</b></p><p>  static uchar state = 0;</p><p>  static uchar long_time;</p><p>  static uchar save_keyval;</p><p>  static uchar key_val;</p&

105、gt;<p>  uchar temp;</p><p>  temp = P3; //無(wú)鍵值 0x24</p><p>  temp &= 0xE0;</p><p>  switch(state)</p><p><b>  {</b></p><

106、;p><b>  case 0:</b></p><p>  if(temp != 0xE0)//按下</p><p><b>  {</b></p><p><b>  state ++;</b></p><p>  save_keyval = temp;&l

107、t;/p><p><b>  }</b></p><p><b>  break;</b></p><p>  case 1://去抖還是按下</p><p>  if(temp == save_keyval)</p><p><b>  {</

108、b></p><p><b>  state ++;</b></p><p>  long_time = 25;</p><p>  key_val = 0;</p><p>  beep_en = 1;</p><p><b>  }</b></p&

109、gt;<p><b>  else</b></p><p><b>  {</b></p><p>  state = 0;//是抖動(dòng)</p><p>  save_keyval = 0;</p><p><b>  }</b></p>

110、<p><b>  break;</b></p><p><b>  case 2:</b></p><p>  LED_A = 0;</p><p>  LED_K = 1;</p><p>  music_en = 0;//Set鍵可永久清除提示音 加減鍵只在按下時(shí)清除<

111、/p><p>  if(temp != save_keyval)//已釋放 短按</p><p><b>  {</b></p><p>  switch(save_keyval)</p><p><b>  {</b></p><p>  case 0xC0:

112、//P35設(shè)置</p><p>  if(++ mode >= 3)</p><p><b>  mode = 0;</b></p><p>  hour = 0;//按下設(shè)置鍵 計(jì)時(shí)從0開(kāi)始</p><p><b>  min = 0;</b></p><p&g

113、t;<b>  sec = 0;</b></p><p><b>  break;</b></p><p>  case 0xA0: //P36+</p><p>  if(mode == 1)</p><p><b>  {</b></p><p

114、>  if(++ hour_c >= 100)//時(shí)</p><p>  hour_c = 0;</p><p><b>  }</b></p><p>  else if(mode == 2)</p><p><b>  {</b></p><p>  if(+

115、+ min_c >= 60) //分</p><p>  min_c = 0;</p><p><b>  }</b></p><p>  else//顯示當(dāng)前設(shè)定的時(shí)間是多少</p><p><b>  {</b></p><p>  dis_f = 1;<

116、;/p><p><b>  }</b></p><p><b>  break;</b></p><p>  case 0x60: //P37-</p><p>  if(mode == 1)</p><p><b>  {</b></p&g

117、t;<p>  if(-- hour_c < 0)//時(shí)</p><p>  hour_c = 99;</p><p><b>  }</b></p><p>  else if(mode == 2)</p><p><b>  {</b></p><p&g

118、t;  if(-- min_c < 0) //分</p><p>  min_c = 59;</p><p><b>  }</b></p><p>  else//顯示當(dāng)前設(shè)定的時(shí)間是多少</p><p><b>  {</b></p><p>  dis_f

119、= 1;</p><p><b>  }</b></p><p><b>  break;</b></p><p><b>  }</b></p><p>  state = 0;</p><p><b>  }</b></p

120、><p>  else if(-- long_time == 0) //長(zhǎng)按 </p><p><b>  {</b></p><p>  long_time = 5;</p><p>  key_val = save_keyval | 0x01;</p><p>  if(key_val == 0x

121、A1)</p><p><b>  {</b></p><p>  if(mode == 1)</p><p><b>  {</b></p><p>  if(++ hour_c >= 100)//時(shí)</p><p>  hour_c = 0;</p>

122、<p><b>  }</b></p><p>  else if(mode == 2)</p><p><b>  {</b></p><p>  if(++ min_c >= 60) //分</p><p>  min_c = 0;</p><p>

123、;<b>  }</b></p><p><b>  }</b></p><p>  else if(key_val == 0x61)</p><p><b>  {</b></p><p>  if(mode == 1)</p><p><b

124、>  {</b></p><p>  if(-- hour_c < 0)//時(shí)</p><p>  hour_c = 99;</p><p><b>  }</b></p><p>  else if(mode == 2)</p><p><b>  {<

125、/b></p><p>  if(-- min_c < 0) //分</p><p>  min_c = 59;</p><p><b>  }</b></p><p><b>  }</b></p><p>  state = 2;</p>

126、<p><b>  }</b></p><p><b>  break;</b></p><p><b>  }</b></p><p><b>  }</b></p><p>  /***************************

127、**********************************************</p><p><b>  函數(shù)名:主函數(shù)</b></p><p><b>  調(diào) 用:無(wú)</b></p><p><b>  參 數(shù):無(wú)</b></p><p><b>

128、;  返回值:無(wú)</b></p><p><b>  結(jié) 果:</b></p><p><b>  備 注:</b></p><p>  /**************************************************************************/ </p&g

溫馨提示

  • 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ù)僅提供信息存儲(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)論