【正文】
Y JNB ,$+9 JNB ,TIME3SET1 DJNZ 40H,$12 CLR 0AH LCALL DISPLAY LCALL KEY JNB ,$6 。 INTT1: PUSH ACC PUSH PSW MOV TL1,00H MOV TH1,4CH DJNZ R2,INTT1OUT MOV R2,06H JNB 01H,$+7 CPL 02H SJMP INTT1OUT JNB 03H,$+7 CPL 04H SJMP INTT1OUT JNB 05H,$+5 CPL 06H INTT1OUT: POP PSW POP ACC RETI。等待鍵釋放 INC 32H MOV A,32H CJNE A,18H,$+6 MOV 32H,00H SETB 05H SETB 06H SJMP TIMEHOUR CLR 05H CLR 06H INC 32H MOV A,32H CJNE A,18H,$+6 MOV 32H,00H SJMP TIMEHOUR1 TIMEMIN: CLR 05H CLR 06H SETB 03H 。鬧鈴2顯示標(biāo)志位置位 SJMP RING TIME3: JNB 0DH,OUTTIME MOV A,31H CJNE A,3DH,OUTTIME MOV A,32H CJNE A,3EH,OUTTIME SETB 0AH 。重裝初值(高8位修正值) SETB TR0 DJNZ R4, $+5 。50MS定時初值(T0計時用) MOV TH0,4CH MOV TL1,00H MOV TH1,4CH SETB EA SETB ET0 SETB TR0 MOV R4,14H START1: LCALL DISPLAY LCALL KEY JB ,$+6 DATE1: LCALL DATE JB ,$+6 TIMEA: LCALL TIME JB ,$+6 SETTIME1: LCALL SETTIME JB ,$+6 JNB 0EH,$+6 。 定時音與顯示相沖突問題及解決方案,頻率1K~2K,~1毫秒,小于6 毫秒,因顯示時每個數(shù)碼管顯示1毫秒,至少需要6毫秒,故蜂鳴器響時無法進(jìn)行顯示。 誤差分析及校正當(dāng)T0中斷時,需重裝定時初值,且要加上從斷開T0中斷到允許T0中斷共有13個周期,以減小誤差,故理論重裝定時初值為(TH0)=4CH,(TL0)=13H。圖53 計時子程序流程圖 圖54 顯示子程序流程圖 顯示子程序模塊的實(shí)現(xiàn)顯示原理在前面已給予了說明,流程圖如圖54所示。其模塊結(jié)構(gòu)圖如圖51所示。單片機(jī)軟件的設(shè)計主要包括執(zhí)行軟件(完成各種實(shí)質(zhì)性功能)的設(shè)計和監(jiān)控軟件的設(shè)計。依次遞推,直到最后一位數(shù)碼管,然后再循環(huán)。由于AT89S52具有ISP 的功能,即可以通過并口線直接將程序下載到單片機(jī)內(nèi),因此, AT89S52 具有兩種狀態(tài),下載程序狀態(tài)和運(yùn)行狀態(tài)。按使用情況不同可分成低128字節(jié)(00H~7FH)和高128字節(jié)(80H~FFH)。當(dāng)路定時設(shè)置完后按K2鍵保存定時設(shè)定值并返回時間顯示。鍵盤及數(shù)碼管排列如圖21所示。(5)智能儀表與集成智能傳感器 目前在各種電氣測量儀表中普遍采用了單片機(jī)應(yīng)用系統(tǒng)來代替?zhèn)鹘y(tǒng)的測量系統(tǒng),使得測量系統(tǒng)具有存儲、數(shù)據(jù)處理、查詢及聯(lián)網(wǎng)等智能功能。目前世界各大公司為了提高競爭力,在提高單片機(jī)性能的同時,十分注意降低其產(chǎn)品的價格。例如,有的芯片以51內(nèi)核為核心,集成了USB控制器、SMART CARD接口、MP3解碼器、CAN或者I*I*C總線控制器等,LED、LCD或VFD顯示驅(qū)動器也開始集成在8位單片機(jī)中。2 單片機(jī)的選擇 單片機(jī)微型計算機(jī)是微型計算機(jī)的一個重要分支,也是頗具生命力的機(jī)種。早期常用的一些時間控制單元都使用模擬電路設(shè)計制作的,其定時準(zhǔn)確性和重復(fù)精度都不是很理想,現(xiàn)在基本上都是基于數(shù)字技術(shù)的新一代產(chǎn)品,隨著單片機(jī)性價比的不斷提高,新一代產(chǎn)品的應(yīng)用也越來越廣泛。但是,一旦重要事情,一時的耽誤可能釀成大禍。大則可以構(gòu)成復(fù)雜的工業(yè)過程控制系統(tǒng),完成復(fù)雜的控制功能;小則可以用于家電控制,甚至可以用于兒童電子玩具。主要工作放在軟件編程上,用實(shí)驗(yàn)板實(shí)現(xiàn)時間、日期、定時及它們的設(shè)定功能,詳細(xì)對軟件編程流程以及調(diào)試進(jìn)行了說明,并對計時誤差進(jìn)行了分析及校正,提出了定時音與顯示相沖突問題及解決方案。關(guān)鍵詞:單片機(jī);時鐘;定時器;數(shù)碼管Abstract: This design is the clock design based on mcu. The design mainly uses single chip to achieve its function, in this design, we use LED digital display hours,minutes, seconds, to 24 hour time, according to the principle of dynamic display of digital tube to display, use the 12MHz crystal oscillation pulse, the timer count,and a digital circuit implementation of the when, sub, seconds the figures show that the timing device, can display the basic function of time, also can realize the adjustment of the time, the clock of high precision, convenient use,multiple functions, easy integration, based on introducing the development situation of the micro controller, the design and implementation of the function, as well as the experimental board hardware conditions, and the function of each circuit are analyzed. The main work in the software programming, using experimental board to realize the time, date, time and setting of their functions,the software programming and debugging process in detail are described, and the timing error analysis and correction, the timing and tone and display conflict problems and solutions. The experiment proved that the effect is good, can be put into use. Therefore, the design and development of the clock has a good application prospect.Keywords: single chip microputer。這些具有人們所需要的智能化特性的產(chǎn)品減輕了人的勞動,擴(kuò)大了數(shù)字化的范圍,為家庭數(shù)字化提供了可能。單片機(jī)應(yīng)用的重要意義還在于,它從根本上改變了傳統(tǒng)的控制系統(tǒng)設(shè)計思想和設(shè)計方法。隨著電子技術(shù)的飛速發(fā)展,家用電器和辦公電子設(shè)備逐漸增多,不同的設(shè)備都有自己的控制器,使用起來很不方便。因此,單片機(jī)只需要和適當(dāng)?shù)能浖巴獠吭O(shè)備相結(jié)合,便可成為一個單片機(jī)控制系統(tǒng)。使用高級語言可以降低開發(fā) 難度,縮短開發(fā)周期,增強(qiáng)軟件的可讀性和可移植性,便于改進(jìn)和擴(kuò)充功能。(2)辦公自動化領(lǐng)域 單片機(jī)作為嵌入式系統(tǒng)廣泛應(yīng)用于現(xiàn)代辦公設(shè)備,如計算機(jī)的鍵盤、磁盤驅(qū)動、打印機(jī)、復(fù)印機(jī)、電話機(jī)和傳真機(jī)等。(6)現(xiàn)代交通與航空航天領(lǐng)域通常應(yīng)用于電子綜合顯示系統(tǒng)、動力監(jiān)控系統(tǒng)、自動駕駛系統(tǒng)、通信系統(tǒng)以及運(yùn)行監(jiān)視系統(tǒng)等。如圖31所示。片上Flash允許程序存儲器在線編程,也適于常規(guī)編程器。圖41 片內(nèi)RAM區(qū) 實(shí)驗(yàn)板電路原理圖實(shí)驗(yàn)板電路結(jié)構(gòu)框圖如圖42所示,原理電路圖如圖43所示。SN74F244有一片選信號線,當(dāng)此口線為低電平時,A1~A4與Y1~Y4接通,反之,A1~A4與Y1~Y4斷開。此電路用于定時時發(fā)出提示音。 數(shù)據(jù)單元分配 數(shù)據(jù)存儲單元分配數(shù)據(jù)存儲單元分配如下表所示:項(xiàng)目秒分時日月年存儲單元30H31H32H33H34H35H項(xiàng)目定時1:開關(guān)定時1:分定時1:時定時2:開關(guān)定時2:分定時2:時存儲單元36H37H38H39H3AH3BH項(xiàng)目定時3:開關(guān)定時3:分定時3:時存顯示首地址堆棧起始單元存儲單元3CH3DH3EH3FH50H 標(biāo)志位單元分配 標(biāo)志位單元(20H)分配如下表所示:位單元項(xiàng)目位單元項(xiàng)目01H2位數(shù)碼管閃爍標(biāo)志位08H定時1顯示標(biāo)志位02H09H定時2顯示標(biāo)志位03H4位數(shù)碼管閃爍標(biāo)志位0AH定時3顯示標(biāo)志位04H0BH定時1響鈴標(biāo)志位05H6位數(shù)碼管顯示標(biāo)志位0CH定時2響鈴標(biāo)志位06H0DH定時3響鈴標(biāo)志位07H日期顯示標(biāo)志位0EH總響鈴標(biāo)志位 計時時鐘實(shí)現(xiàn)的基本方法時鐘的最小計時單位是秒,使用定時器的方式1,最大的定時時間也只能達(dá)到131毫秒。