版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、<p><b> ?。薄‰娮訒r鐘</b></p><p> 1.1 電子時鐘簡介 </p><p> 1957年,Ventura發(fā)明了世界上第一個電子表,從而奠定了電子時鐘的基礎(chǔ),電子時鐘開始迅速發(fā)展起來。現(xiàn)代的電子時鐘是基于單片機(jī)的一種計時工具,采用延時程序產(chǎn)生一定的時間中
2、斷,用于一秒的定義,通過計數(shù)方式進(jìn)行滿六十秒分鐘進(jìn)一,滿六十分小時進(jìn)一,滿二十四小時小時清零。從而達(dá)到計時的功能,是人民日常生活補(bǔ)課缺少的工具。</p><p> 1.2電子時鐘的基本特點(diǎn)</p><p> 現(xiàn)在高精度的計時工具大多婁都使用了石英晶體振蕩器,由于電子鐘、石英鐘、石英表都采用了石英,因此走時精度高,穩(wěn)定性好,使用方便,不需要經(jīng)常調(diào)試,數(shù)字式電子鐘用集成電路計時時,譯碼代替
3、機(jī)械式傳動,用LED顯示器代替指針顯示進(jìn)而顯示時間,減小了計時誤差,這種表具有時、分、秒顯示時間的功能,還可以進(jìn)行時和分的核對,片選的靈活性好。</p><p> 1.3 電子時鐘的原理 </p><p> 該電子時鐘由89C2051,BUTTON,六段數(shù)碼管等構(gòu)成,采用晶振電路作為驅(qū)動電路,由延時程序和循環(huán)程序產(chǎn)生的一秒定時,
4、達(dá)到時分秒的計時,六十秒為一分鐘,六十分鐘為一小時,滿二十四小時為一天。而電路中唯一的一個控制鍵卻擁有多種不同的功能,按下又松開,可以實(shí)現(xiàn)屏蔽數(shù)碼管顯示的功能,達(dá)到省電的目的;直接按下不松開,則可以通過按鍵實(shí)現(xiàn)分鐘的累加,每按一次分鐘加一;而連續(xù)兩次按下按鍵不放松,則可實(shí)現(xiàn)小時的調(diào)節(jié),同樣每按一次小時加一。</p><p> 2 單片機(jī) </p&g
5、t;<p> 2.1 單片機(jī)簡介 </p><p> 單片機(jī)全稱為單片機(jī)微型計算機(jī)(Single Chip Microsoftcomputer)。從應(yīng)用領(lǐng)域來看,單片機(jī)主要用來控制,所以又稱為微控制器(Microcontroller Unit)或嵌入式控制器。單片機(jī)是將計算機(jī)的基本部件微型化并集成在一塊芯片上的微型計算機(jī)。</p><p> 2.2 單片機(jī)
6、的發(fā)展史</p><p> 1 . 4位單片機(jī) </p><p> 1975年,美國德克薩斯儀器公司首次推出4位單片機(jī)TMS-1000;此后,各個計算機(jī)公司競相推出四位單片機(jī)。日本松下公司的MN1400系列,美國洛克威爾公司的PPS/1系列等。四位單片機(jī)的主要應(yīng)用領(lǐng)域有:
7、PC機(jī)的輸入裝置,電池充電器,運(yùn)動器材,帶液晶顯示的音/視頻產(chǎn)品控制器,一般家用電器的控制及遙控器,電子玩具,鐘表,計算器,多功能電話等。 </p><p> 2 . 8位單片機(jī) </p&
8、gt;<p> 1972年,美國Intel公司首先推出8位微處理器8008,并于1976年9月率先推出MCS-48系列單片機(jī)。在這以后,8位單片機(jī)紛紛面市。例如,莫斯特克和仙童公司合作生產(chǎn)的3870系列,摩托羅拉公司生產(chǎn)的6801系列等。隨著集成電路工藝水平的提高,一些高性能的8位單片機(jī)相繼問世。例如,1978年摩托羅拉公司的MC6801系列及齊洛格公司的Z8系列,1979年NEC公司的UPD78XX系列。這類單片機(jī)的尋
9、址能力達(dá)64KB,片內(nèi)ROM容量達(dá)4--8KB,片內(nèi)除帶有并行I\O口外,還有串行I\O口,甚至還有A\D轉(zhuǎn)化器功能。8位單片機(jī)由于功能強(qiáng),被廣泛用于自動化裝置、智能儀器儀表、智能接口、過程控制、通信、家用電器等各個領(lǐng)域。</p><p> 3 . 16位單片機(jī)
10、 </p><p> 1983年以后,集成電路的集成度可達(dá)幾十萬只管/片,各系列16位單片機(jī)紛紛面市。這一階段的代表產(chǎn)品有1983年Intel公司推出的MCS-96系列,1987年Intel推出了80C96,美國國家半導(dǎo)體公司推出的HPC16040,NEC公司推出的783XX系列等。16位單片機(jī)主要用于工業(yè)控制,智能儀器儀表,便攜式設(shè)備等場合。</p><p> 4 . 32位單片機(jī)
11、 </p><p> 隨著高新技術(shù)只智能機(jī)器人,光盤驅(qū)動器,激光打印機(jī),圖像與數(shù)據(jù)實(shí)時處理,復(fù)雜實(shí)時控制,網(wǎng)絡(luò)服務(wù)器等領(lǐng)域的應(yīng)用與發(fā)展,20世紀(jì)80年代末推出了32位單片機(jī),如Motorlora公司的MC683XX系列,Intel的80960系列,以及近年來流行的ARM系列單片
12、機(jī)。32位單片機(jī)是單片機(jī)的發(fā)展趨勢,隨著技術(shù)的發(fā)展及開發(fā)成本和產(chǎn)品價格的下降,將會與8位單片機(jī)并駕齊驅(qū)。</p><p> 5 . 64位單片機(jī) </p><p> 近年來,64位單片機(jī)在引擎控制,智能機(jī)器人,磁盤控制,語音圖像通信,算法密集的實(shí)時控制場合已有應(yīng)
13、用,如英國Inmos公司的Transputer T800是高性能的64位單片機(jī)。</p><p> 2.3 單片機(jī)的特點(diǎn) </p><p> 1 . 單片機(jī)的存儲器ROM和RAM時嚴(yán)格區(qū)分的。ROM稱為程序存儲器,只存放程序,固定常數(shù),及數(shù)據(jù)表格。RAM則為數(shù)據(jù)存儲器,用作工作區(qū)及存放用戶數(shù)據(jù)。
14、 </p><p> 2 . 采用面向控制的指令系統(tǒng)。為滿足控制需要,單片機(jī)有更強(qiáng)的邏輯控制能力,特別是單片機(jī)具有很強(qiáng)的位處理能力。 3 . 單片機(jī)的I/O口通常時多功能的。由于單片機(jī)芯片上引腳數(shù)目有限,為了解決實(shí)際引腳數(shù)和需要的信號線的矛盾,采用了引腳功能復(fù)用的方法,引腳處于何種功能,可
15、由指令來設(shè)置或由機(jī)器狀態(tài)來區(qū)分。 </p><p> 4 . 單片機(jī)的外部擴(kuò)展能力很強(qiáng)。在內(nèi)部的各種功能部件不能滿足應(yīng)用的需求時,均可在外部進(jìn)行擴(kuò)展,與許多通用的微機(jī)接口芯片兼容,給應(yīng)用系統(tǒng)設(shè)計帶來了很大的方便。</p><p> 2.4 89C2051單片機(jī)介紹
16、 </p><p> 89C2051是由ATMEL公司推出的一種小型單片機(jī)。95年出現(xiàn)在中國市場。其主要特點(diǎn)為采用FLASH存貯技術(shù),降低了制造成本,其軟件、硬件與MCS-51完全兼容,可以很快被中國廣大用戶接受,其程序的電可擦寫特性,使得開發(fā)與試驗(yàn)比較容易?! ?lt;/p><p> 2.4.1
17、 構(gòu)成:</p><p> 89C2051共有20條引腳,詳見下圖。從圖中可見,2051繼承了8031最重要引腳:</p><p> 1.引腳:P1口共8腳,準(zhǔn)雙向端口,P3共7腳,也是準(zhǔn)雙向端口,并且保留了全部的P3的第二功能,如P3.0、P3.1的串行通訊功能,P3.2、P3.3的中斷輸入功能,P3.4、P3.5的定時器功能。在引腳的驅(qū)動能力上面,89C2051具有很強(qiáng)的下拉能力,
18、P1、P3口的下拉能力均可達(dá)到20mA,相比之下,89C51/87C51的端口的下拉能力每腳最大為15mA。但是限定9腳電流之和小于71mA。這樣,引腳的平均電流只有9mA。89C2051驅(qū)動能力的增強(qiáng),使得它可以直接驅(qū)動LED數(shù)碼管。為了增加對模擬量的輸入功能,2051在其內(nèi)部構(gòu)造了一個模擬信號比較器,其輸入端辦連到P1.0和P1.1口比較結(jié)果存入P3.6對應(yīng)寄存器,(P3.6在2051外部無引腳)。對于一些不大復(fù)雜的控制電路我們就可
19、以增加少量元件來實(shí)現(xiàn),例如,對溫度的控制,過壓的控制等。RST:復(fù)位輸入。當(dāng)振蕩器復(fù)位器件時,要保持RST腳兩個機(jī)器周期的高電平時間。</p><p> 2.電源:89C2051有很寬的工作電源電壓,可為2.7到6V,當(dāng)工作在3V時,電流相當(dāng)于6V工作時的1/4。89C2051工作于12Hz時,動態(tài)電流為5.5mA,空閑時為1mA,掉電態(tài)僅為20nA。這樣小的功耗很適合于電池供電的小型控制系統(tǒng)。</p&g
20、t;<p> 3.存儲器:89C2051片內(nèi)含有2k字節(jié)的Flash程序存儲器,128字節(jié)的片內(nèi)RAM,與80C31內(nèi)部完全類似。由于2051內(nèi)部設(shè)計全靜態(tài)工作,所以允許工作的時鐘為0--20MHz,也就是說,允許在低速工作時,不破壞RAM內(nèi)容。相比之下,一般8031對最低工作時鐘限制為3.5MHz,因?yàn)槠鋬?nèi)部的RAM是動態(tài)刷新的。89C2051不允許構(gòu)造外部總線來擴(kuò)充程序/數(shù)據(jù)存儲器,所以它也不需要ALEPSEN、RD
21、、WR一類的引腳。</p><p> 4.內(nèi)部I/O控制:89C2051在內(nèi)部I/O控制上繼承了MCS51的特性:5路2級優(yōu)待中斷,串等口,2路定時器/計數(shù)器?! ?lt;/p><p> 2.4.2 實(shí)物:</p><p> 89C2051實(shí)物圖</p><p> AT89C2051是美國ATM
22、EL公司生產(chǎn)的低電壓、高性能CMOS 8位單片機(jī),片內(nèi)含2k bytes的可反復(fù)擦寫的只讀程序存儲器(PEROM)和128bytes的隨機(jī)數(shù)據(jù)存儲器(RAM),器件采用ATMEL公司的高密度、非易失性存儲技術(shù)生產(chǎn),兼容標(biāo)準(zhǔn)MCS-51指令系統(tǒng),片內(nèi)置通用8位中央處理器和Flash存儲單元,功能強(qiáng)大AT89C2051單片機(jī)可為您提供許多高性價比的應(yīng)用場合。</p><p><b> 程序保密</b
23、></p><p> 89C2051設(shè)計有2個程序保密位,保密位1被編程之后,程序存儲器不能再被編程除非做一次擦除,保密位2被編程之后,程序不能被讀出。</p><p><b> 軟硬件的開發(fā)</b></p><p> 89C2051可以采用下面2種方法開發(fā)應(yīng)用系統(tǒng)。</p><p> ?。?) 由于89C2
24、051內(nèi)部程序存貯器為Flash,所以修改它內(nèi)部的程序十分方便快捷,只要配備一個可以編程89C2051的編程器即可。調(diào)試人員可以采用程序編輯-編譯-固化-插到電路板中試驗(yàn)這樣反復(fù)循環(huán)的方法,對于熟練的MCS-51程序員來說,這種調(diào)試方法并不十分困難。當(dāng)做這種調(diào)試不能夠了解片內(nèi)RAM的內(nèi)容和程序的走向等有關(guān)信息。</p><p> (2) 將普通8031/80C31仿真器的仿真插頭中P1.0~P1.7和P3.0~
25、P3.6引出來仿真2051,這種方法可以運(yùn)用單步、斷點(diǎn)的調(diào)試方法,但是仿真不夠真實(shí),比如,2051的內(nèi)部模擬比較器功能,P1口、P3口的增強(qiáng)下拉能力等等。</p><p> 2.4.3 主要性能:</p><p> 和MCS-51產(chǎn)品兼容;</p><p> 2KB可重編程FLASH存儲器(1000次);</p><p> 2.7-
26、6V電壓范圍;</p><p> 全靜態(tài)工作:0Hz-24KHz</p><p> 2級程序存儲器保密鎖定</p><p> 128*8位內(nèi)部RAM</p><p> 15條可編程I/O線</p><p> 兩個16位定時器/計數(shù)器</p><p><b> 6個中斷源&l
27、t;/b></p><p><b> 可編程串行通道</b></p><p> 高精度電壓比較器(P1.0,P1.1,P3.6)</p><p> 直接驅(qū)動LED的輸出端口</p><p> 3 控制系統(tǒng)的硬件設(shè)計</p><p> 3.1 單片機(jī)型號的選擇
28、 </p><p> 通過對多種單片機(jī)性能的分析,最終認(rèn)為89C2051是最理想的電子時鐘開發(fā)芯片。</p><p> 采用ATMEL的AT89C2051的微處理器是基于以下因素:</p><p> 89C2051為51內(nèi)核,仿真調(diào)試軟硬件資源豐富;<
29、;/p><p> 性價比高,貨源充足;</p><p> DIP20封裝,體積小,便于產(chǎn)品小型化;</p><p> 為EEPROM程序存儲介質(zhì),1000次以上擦/寫周期,便于編程調(diào)試;</p><p> 具有IDLE和POWER-DOWN兩種工作模式,便于進(jìn)行低功耗設(shè)計;</p><p> 工作電壓范圍寬:2.
30、7--6V。便于交直流供電。</p><p> 3.2 數(shù)碼管顯示工作原理</p><p> 數(shù)碼管是一種把多個LED顯示段集成在一起的顯示設(shè)備。有兩種類型,一種是共陽型,一種是共陰型。共陽型就是把多個LED顯示段的陽極接在一起,又稱為公共端。共陰型就是把多個LED顯示段的陰極接在一起,即為公共商。陽極即為二極管的正極,又稱為正極,陰極即為二極管的負(fù)極,又稱為負(fù)極。通常的數(shù)碼管又分為
31、8段,即8個LED顯示段,這是為工程應(yīng)用方便如設(shè)計的,分別為A、B、C、D、E、F、G、DP,其中DP 是小數(shù)點(diǎn)位段。而多位數(shù)碼管,除某一位的公共端會連接在一起,不同位的數(shù)碼管的相同端也會連接在一起。即,所有的A段都會連在一起,其它的段也是如此,這是實(shí)際最常用的用法。數(shù)碼管顯示方法可分為靜態(tài)顯示和動態(tài)顯示兩種。靜態(tài)顯示就是數(shù)碼管的8段輸入及其公共端電平一直有效。動態(tài)顯示的原理是,各個數(shù)碼管的相同段連接在一起,共同占用8 位段引管線;每位
32、數(shù)碼管的陽極連在一起組成公共端。利用人眼的視覺暫留性,依次給出各個數(shù)碼管公共端加有效信號,在此同時給出該數(shù)碼管加有效的數(shù)據(jù)信號,當(dāng)全段掃描速度大于視覺暫留速度時,顯示就會清晰顯示出來。</p><p> 如下圖所示即為數(shù)碼管圖:</p><p> 3.3 鍵盤電路設(shè)計 </p>
33、<p> 該設(shè)計只用了一個鍵盤,但實(shí)現(xiàn)的功能卻是比較完善,減少了硬件資源的損耗,該鍵盤可以實(shí)現(xiàn)小時和分鐘的調(diào)節(jié)以及控制是否進(jìn)入省電模式。當(dāng)按鍵按下又松開,可以實(shí)現(xiàn)屏蔽數(shù)碼管顯示的功能,達(dá)到省電的目的;直接按下不松開,則可以通過按鍵實(shí)現(xiàn)分鐘的累加,每按一次分鐘加一;而連續(xù)兩次按下按鍵不放松,則可實(shí)現(xiàn)小時的調(diào)節(jié),同樣每按一次小時加一。達(dá)到時間調(diào)節(jié)的目的。</p><p> 3.4 整個電路原理圖 &l
34、t;/p><p> 4 控制系統(tǒng)的軟件設(shè)計 </p><p> 4.1 程序設(shè)計 </p><p> 本系統(tǒng)的軟件系統(tǒng)主要可分為主程序、定時計數(shù)中斷程序、時間調(diào)整程序、延時程序四大模塊。在程序
35、設(shè)計過程中,加強(qiáng)了部分軟件抗干擾措施,下面對主程序及顯示程序作一下簡單介紹:</p><p><b> 主程序:</b></p><p> START: MOV R0,#70H ;清70H---7AH共11個內(nèi)存單元</p><p> MOV R7,#0BH </p><p>
36、 CLEARDISP: MOV @R0,#00H </p><p> INC R0 </p><p> DJNZ R7,CLEARDISP </p><p> MOV 20H,#00H ;清20H(標(biāo)志用)</p><p> MOV
37、 7AH,#0AH ;放入"熄滅符"數(shù)據(jù)</p><p> MOV TMOD,#11H ;設(shè)定T0,T1為16位定時器</p><p> MOV TL0,#0B0H ;以下為T0,T1的定時初值</p><p> MOV TH0,#3CH</p><p>
38、 MOV TL1,#0B0H</p><p> MOV TH1,#3CH</p><p> SETB EA ;以下為開中斷并啟動T0</p><p><b> SETB ET0</b></p><p><b> SETB TR0</b></p&
39、gt;<p> MOV R4,#14H ;1秒定時用初值50乘20</p><p> START1: LCALL DISPLAY ;調(diào)用顯示子程序</p><p> JNB P3.7,SETMM1 ;P3.7為0時轉(zhuǎn)時間調(diào)整程序</p><p> SJMP START1
40、 ;P3.7為1時轉(zhuǎn)START1</p><p> SETMM1: LJMP SETMM ;轉(zhuǎn)時間調(diào)整程序SETMM</p><p><b> 顯示子程序:</b></p><p> 顯示數(shù)據(jù)在70H--75H單元內(nèi),用六位LED共陽數(shù)碼管顯示,P1口輸出段碼數(shù)據(jù),P3口作掃描控制,每個LED數(shù)
41、碼管亮1ms時間再逐位循環(huán)。</p><p> DISPLAY: MOV R1,#70H ;指向顯示數(shù)據(jù)首址</p><p> MOV R5,#0FEH ;掃描控制字初值</p><p> PLAY: MOV A,R5 ;掃描字給A</p><p>
42、 MOV P3,A ;從P3口輸出</p><p> MOV A,@R1 ;取顯示數(shù)據(jù)到A</p><p> MOV DPTR,#TAB ;取段碼表地址</p><p> MOVC A,@A+DPTR ;查顯示數(shù)據(jù)對應(yīng)段碼</p><p> MOV
43、P1,A ;段碼放入P1口</p><p> LCALL DL1MS ;顯示1ms</p><p> INC R1 ;指向下一地址</p><p> MOV A,R5 ;</p><p> JNB ACC.5,ENDOUT
44、 ;ACC.5=0時一次顯示結(jié)束</p><p> RL A ;A中數(shù)據(jù)循環(huán)左移</p><p> MOV R5,A ;放入R5內(nèi)</p><p> AJMP PLAY ;跳回PLAY循環(huán)</p><p> ENDOUT: SETB
45、 P3.5 ;一次顯示結(jié)束,P3口復(fù)位</p><p> MOV P1,#0FFH ;P1口復(fù)位</p><p><b> RET</b></p><p> TAB: DB 0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,90H,0FFH</p>
46、<p> 4.2 程序流程圖</p><p> 系統(tǒng)的流程圖如圖4.1和圖4.2所示:</p><p><b> 主程序流程圖:</b></p><p> 是 否 </p><p>
47、 ;時間調(diào)整 程序流程圖;</p><p><b> ?。捣抡娼Y(jié)果</b></p><p><b> 5.1 仿真圖</b></p><p> 圖4.3 開始運(yùn)行程序仿真圖</p><p> 圖4.4 運(yùn)行一段時間后仿真圖</p><p> 5.2 仿真結(jié)果分
48、析</p><p> 功能太過單調(diào),只能實(shí)現(xiàn)時、分、秒的顯示,設(shè)計比較簡單。電路圖的設(shè)計過于單調(diào),用的器件太少,實(shí)現(xiàn)調(diào)節(jié)時間的按鈕太少,不能很好的實(shí)現(xiàn)時間的調(diào)節(jié)。在測試過程中,六位數(shù)碼顯示管只顯示五位數(shù)字,有一位數(shù)字不亮,通過多次的修改程序并在PROTEUS軟件環(huán)境中進(jìn)行仿真,最終解決了這個問題,同時也透露出本人在單片機(jī)電路設(shè)計和程序設(shè)計方面的不足。不過最后的仿真效果非常好,實(shí)現(xiàn)了預(yù)期的效果,能過通過多功能控制
49、鍵調(diào)節(jié)時間和是否進(jìn)入省電模式,是一個比較令人滿意的設(shè)計。</p><p><b> 6 結(jié)束語</b></p><p> 在xx老師耐心的指導(dǎo)下,我順利完成了這次單片機(jī)課程設(shè)計課題中的電子時鐘設(shè)計,通過這次的設(shè)計使我認(rèn)識到本人對單片機(jī)方面的知識知道的太少了,對于書本上的很多知識還不能靈活運(yùn)用,尤其是對程序設(shè)計語句的理解和運(yùn)用,不能夠充分理解每個語句的具體含義,導(dǎo)
50、致編程的程序過于復(fù)雜,使得需要的存儲空間增大。損耗了過多的內(nèi)存資源。</p><p> 本次的設(shè)計使我從中學(xué)到了一些很重要的東西,感謝余老師對我的細(xì)心的指導(dǎo)。相信這對我以后的課程設(shè)計和畢業(yè)設(shè)計將會有很大的幫助!</p><p><b> 參考文獻(xiàn)</b></p><p> [1] 謝自美.電子線路設(shè)計·實(shí)驗(yàn)·測試[M]
51、.武漢:華中理工大學(xué)出版社,1992.</p><p> [2] 何立民.單片機(jī)應(yīng)用系統(tǒng)設(shè)計[M].北京:北京航空航天大學(xué)出版社,1993.</p><p> [3] 樓然笛.單片機(jī)開發(fā)[M].北京:人民郵電出版社,1994.[4] 付家才.單片機(jī)控制工程實(shí)踐技術(shù)[M].北京:化學(xué)工業(yè)出版社 2004.3.[5] 李光才.單片機(jī)課程設(shè)計 實(shí)例指導(dǎo)[M]. 北京:北京航空航天大學(xué)出版
52、社 2004.</p><p> [6] 朱定華.單片機(jī)原理及接口技術(shù)實(shí)驗(yàn)[M].北京:北方交通大學(xué)出版社2002.11.</p><p> [7] 劉湘濤.江世明.單片機(jī)原理與應(yīng)用[M]. 北京:電子工業(yè)出版社,2006.</p><p><b> 附錄</b></p><p> 程序源代碼:
53、 </p><p><b> ORG 0000H</b></p><p> LJMP START</p><p><b> ORG 0003H</b></p><p><b> RETI</b></p><p><
54、b> ORG 000BH</b></p><p> LJMP INTT0</p><p><b> ORG 0013H</b></p><p><b> RETI</b></p><p><b> ORG 001BH</b></p&g
55、t;<p> LJMP INTT1</p><p><b> ORG 0023H</b></p><p><b> RETI</b></p><p><b> ;主程序</b></p><p> START:MOV R0,#70H</p
56、><p> MOV R7,#0BH ;</p><p> CLEARDISP: ;</p><p> MOV @R0,#00H ;清零</p><p> INC R0 ;</p><p> DJ
57、NZ R7,CLEARDISP ;</p><p> MOV 20H,#00H ;清20H(標(biāo)志用)</p><p> MOV 7AH,#0AH ;放入熄滅符數(shù)據(jù)</p><p> MOV TMOD,#11H ;T0,T1為16位定時器</p><p> MO
58、V TL0,#0B0H ;以下為T0,T1的定時初值</p><p> MOV TH0,#3CH</p><p> MOV TL1,#0B0H</p><p> MOV TH1,#3CH</p><p> SETB EA ;以下為開中斷并啟動T0</p><
59、p><b> SETB ET0</b></p><p><b> SETB TR0</b></p><p> MOV R4,#14H ;1秒定時用初值50乘20</p><p><b> START1:</b></p><p> LC
60、ALL DISPLAY</p><p> JNB P3.7,SETMM1 ;P3.7為0時轉(zhuǎn)時間調(diào)整程序</p><p> SJMP START1 ;為1時轉(zhuǎn)START1</p><p> SETMM1: LJMP SETMM ;轉(zhuǎn)時間調(diào)整程序</p><p><b> ;1
61、s計時程序</b></p><p> INTT0: PUSH ACC</p><p><b> PUSH PSW</b></p><p><b> CLR ET0</b></p><p><b> CLR TR0</b></p>&l
62、t;p> MOV A,#0B7H</p><p> ADD A,TL0</p><p> MOV TL0, A</p><p> MOV A,#3CH</p><p> ADDC A,TH0</p><p> MOV TH0,A</p><p><b>
63、SETB TR0</b></p><p> DJNZ R4,OUTT0</p><p> ADDSS: MOV R4,#14H</p><p> MOV R0,#71H</p><p> ACALL ADD1</p><p><b> MOV A,R3</b>
64、;</p><p><b> CLR C</b></p><p> CJNE A,#60H,ADDMM</p><p> ADDMM: JC OUTT0</p><p> ACALL CLR0</p><p> MOV R0,#77H</p><p&g
65、t; ACALL ADD1</p><p> MOV A,R3</p><p><b> CLR C</b></p><p> CJNE A,#60H,ADDHH</p><p> ADDHH: JC OUTT0</p><p> ACALL CLR0</p&
66、gt;<p> MOV R0,#79H</p><p> ACALL ADD1</p><p> MOV A,R3</p><p><b> CLR C</b></p><p> CJNE A,#24H,HOUR</p><p> HOUR : JC
67、 OUTT0</p><p> ACALL CLR0</p><p> OUTT0: MOV 72H,76H</p><p> MOV 73H,77H</p><p> MOV 74H,78H</p><p> MOV 75H,79H</p><p> POP
68、 PSW</p><p> POP ACC</p><p> SETB ET0</p><p><b> RETI</b></p><p><b> ;;;</b></p><p><b> ;;;;閃動調(diào)時</b></p&
69、gt;<p> INTT1: PUSH ACC</p><p><b> PUSH PSW</b></p><p> MOV TL1,#0B0H</p><p> MOV TH1,#3CH</p><p> DJNZ R2,INTT1OUT</p><p>
70、 MOV R2,#06H</p><p> CPL 02H</p><p> JB 02H,FLASH1</p><p> MOV 72H,76H</p><p> MOV 73H,77H</p><p> MOV 74H,78H</p><p> M
71、OV 75H,79H</p><p> INTT1OUT: POP PSW</p><p> POP ACC</p><p><b> RETI</b></p><p> FLASH1: JB 01H,FLASH2</p><p> MOV 72
72、H,7AH</p><p> MOV 73H,7AH</p><p> MOV 74H,78H</p><p> MOV 75H,79H</p><p> AJMP INTT1OUT</p><p> FLASH2: MOV 72H,76H</p><p&
73、gt; MOV 73H,77H</p><p> MOV 74H,7AH</p><p> MOV 75H,7AH</p><p> AJMP INTT1OUT</p><p> ;;;;;;加1程序;</p><p> ADD1: MOV A,@R0</p
74、><p><b> DEC R0</b></p><p><b> SWAP A</b></p><p> ORL A,@R0</p><p> ADD A,#01H</p><p><b> DA A</b></p
75、><p> MOV R3,A</p><p> ANL A,#0FH</p><p> MOV @R0,A</p><p> MOV A,R3</p><p><b> INC R0</b></p><p><b> SWAP A&
76、lt;/b></p><p> ANL A,#0FH</p><p> MOV @R0,A</p><p><b> RET</b></p><p><b> ;;;清零程序</b></p><p> CLR0: CLR A</p>
77、;<p> MOV @R0,A</p><p><b> DEC R0</b></p><p> MOV @R0,A</p><p><b> RET</b></p><p><b> ; 時鐘調(diào)整程序</b></p><
78、;p> SETMM: CLR ET0</p><p><b> CLR TR0</b></p><p> LCALL DL1S</p><p> JB P3.7,CLOSEDIS</p><p> MOV R2,#06H</p><p> SETB ET
79、1</p><p> SETB TR1</p><p> SET2: JNB P3.7,SET1</p><p> SETB 00H</p><p> SET4: JB P3.7,SET3</p><p> LCALL DL05S</p><p> J
80、NB P3.7,SETHH</p><p> MOV R0,#77H</p><p> LCALL ADD1</p><p> MOV A,R3</p><p><b> CLR C</b></p><p> CJNE A,#60H,HHH</p
81、><p> HHH: JC SET4</p><p> LCALL CLR0</p><p><b> CLR C</b></p><p> AJMP SET4</p><p> CLOSEDIS: SETB ET0</p><p&g
82、t;<b> SETB TR0</b></p><p> CLOSE: JB P3.7,CLOSE</p><p> LCALL DISPLAY</p><p> JB P3.7,CLOSE</p><p> WAITH: JNB P3.7,WAITH</p&g
83、t;<p> LJMP START1</p><p> SETHH: CLR 00H</p><p> SETHH1: JNB P3.7,SET5</p><p> SETB 01H</p><p> SET6: JB P3.7,SET7</p>
84、<p> LCALL DL05S</p><p> JNB P3.7,SETOUT</p><p> MOV R0,#79H</p><p> LCALL ADD1</p><p> MOV A,R3</p><p><b> CLR C</b&
85、gt;</p><p> CJNE A,#24H,HOUU</p><p> HOUU: JC SET6</p><p> LCALL CLR0</p><p> AJMP SET6</p><p> SETOUT: JNB P3.7,SETOUT1</p>&
86、lt;p> LCALL DISPLAY</p><p> JNB P3.7,SETOUT</p><p> CLR 01H</p><p> CLR 00H</p><p> CLR 02H</p><p> CLR TR1</p><
87、p> CLR ET1</p><p> SETB TR0</p><p> SETB ET0</p><p> LJMP START1</p><p> SET1: LCALL DISPLAY</p><p> AJMP SET2</p><
88、;p> SET3: LCALL DISPLAY</p><p> AJMP SET4</p><p> SET5: LCALL DISPLAY</p><p> AJMP SETHH1</p><p> SET7: LCALL DISPLAY</p><p&g
89、t; AJMP SET6</p><p> SETOUT1: LCALL DISPLAY</p><p> AJMP SETOUT</p><p><b> ; 顯示程序</b></p><p> DISPLAY: MOV R1,#70H ;指向顯示數(shù)據(jù)首址</p>
90、;<p> MOV R5,#0FEH ;掃描控制字初值</p><p> PLAY: MOV A,R5 ;掃描字給A</p><p> MOV P3,A ;從P3口輸出</p><p> MOV A,@R1 ;取顯示數(shù)據(jù)到A</p&g
91、t;<p> MOV DPTR,#TAB ;取段碼表地址</p><p> MOVC A,@A+DPTR ;查顯示數(shù)據(jù)對應(yīng)段碼</p><p> MOV P1,A ;段碼放入P1口</p><p> LCALL DL1MS ;顯示1ms</p>&
92、lt;p> INC R1 ;指向下一地址</p><p> MOV A,R5 ;</p><p> JNB ACC.5,ENDOUT ;ACC.5=0時一次顯示結(jié)束</p><p> RL A ;A中數(shù)據(jù)循環(huán)左移</p><p
93、> MOV R5,A ;放入R5內(nèi)</p><p> AJMP PLAY ;跳回PLAY循環(huán)</p><p> ENDOUT: SETB P3.5 ;一次顯示結(jié)束,P3口復(fù)位</p><p> MOV P1,#0FFH ;P1口復(fù)位</p>
94、<p><b> RET</b></p><p> TAB: DB 0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,90H,0FFH</p><p><b> ;延時程序</b></p><p> DL1MS: MOV R6,#14H</p>&l
95、t;p> DL1: MOV R7,#19H</p><p> DL2: DJNZ R7,DL2</p><p> DJNZ R6,DL1</p><p><b> RET</b></p><p><b> ;20MS</b></p>&l
96、t;p> DS20MS: ACALL DISPLAY</p><p> ACALL DISPLAY</p><p> ACALL DISPLAY</p><p><b> RET</b></p><p><b> ;ANJIAN</b></p><
97、p> DL1S: LCALL DL05S</p><p> LCALL DL05S</p><p><b> RET</b></p><p> DL05S: MOV R3,#20H</p><p> DL05S1: LCALL DISPLAY</p><p>
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 單片機(jī)數(shù)字時鐘課程設(shè)計--單片機(jī)多功能電子鐘設(shè)計
- 基于單片機(jī)的多功能電子鐘課程設(shè)計
- 單片機(jī)課程設(shè)計--多功能數(shù)字電子鐘
- 單片機(jī)課程設(shè)計— 多功能數(shù)字電子鐘
- 單片機(jī)課程設(shè)計報告---多功能電子鐘
- 單片機(jī)課程設(shè)計--基于單片機(jī)的電子鐘的設(shè)計
- 單片機(jī)課程設(shè)計---基于51單片機(jī)的電子鐘設(shè)計
- 單片機(jī)課程設(shè)計--基于單片機(jī)的數(shù)字電子鐘
- 單片機(jī)微型機(jī)課程設(shè)計---多功能電子鐘
- 單片機(jī)課程設(shè)計報告---單片機(jī)的電子鐘設(shè)計
- 單片機(jī)c語言課程設(shè)計--基于單片機(jī)的電子鐘設(shè)計
- 電子鐘課程設(shè)計--基于單片機(jī)的電子鐘設(shè)計
- 基于單片機(jī)的電子鐘課程設(shè)計
- 單片機(jī)課程設(shè)計--- 基于51單片機(jī)的簡約電子鐘
- 電子鐘單片機(jī)課程設(shè)計
- 單片機(jī)課程設(shè)計--電子鐘
- 單片機(jī)課程設(shè)計(電子鐘)
- 基于51單片機(jī)的多功能電子鐘設(shè)計
- 基于單片機(jī)的電子鐘課程設(shè)計
- 單片機(jī)課程設(shè)計---電子鐘的設(shè)計
評論
0/150
提交評論