




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
/XX科技學院天平學院單片機課程設(shè)計報告作息時間控制器設(shè)計姓名:王亞明學號:0930117114專業(yè)班級:電氣0921指導老師:徐樹梅2012年目錄1概述31.1課程設(shè)計的目的和意義31.2單片機課程設(shè)計的要求31.3作息時間控制器的設(shè)計要求32系統(tǒng)總體方案及硬件設(shè)計32.1系統(tǒng)總體設(shè)計32.2系統(tǒng)各個部分的電路設(shè)計43軟件的設(shè)計63.1概述63.2主模塊的設(shè)計63.3顯示模塊設(shè)計73.4時間設(shè)定模塊設(shè)計73.5聲光顯示功能的實現(xiàn)84Proteus軟件仿真84.1仿真結(jié)果84.2性能及誤差分析95課程設(shè)計體會10參考文獻10附1程序源代碼10附2原理圖15第一部分概述1.1課程設(shè)計的目的和意義:綜合利用所學單片機知識完成一個單片機應(yīng)用系統(tǒng)設(shè)計并仿真、由硬件實現(xiàn),從而加深對單片機軟硬知識的理解,獲得初步的應(yīng)用經(jīng)驗,為走出校門從事單片機應(yīng)用的相關(guān)工作打下良好基礎(chǔ)。1.2單片機課程設(shè)計的要求:1、進一步熟悉和掌握單片機的內(nèi)部結(jié)構(gòu)和工作原理,了解單片機應(yīng)用系統(tǒng)設(shè)計的基本方法和步驟;2、掌握單片機仿真軟件Proteus的使用方法;3、掌握鍵盤和顯示器在的單片機控制系統(tǒng)中的應(yīng)用。4、掌握撰寫課程設(shè)計報告的方法。1.3作息時間控制器的設(shè)計要求:1、設(shè)計制作一個單片機數(shù)字鐘及控制電路。2、使用LED顯示器來顯示現(xiàn)在的時間。顯示格式為"時-分-秒",由LED閃動作為秒計數(shù)表示。3、可以設(shè)定作息時間,并進行到時提示。4、能夠根據(jù)預先設(shè)定好的作息時間表自動啟??刂齐娐?完成對外部設(shè)備的實時控制。5、可以設(shè)置現(xiàn)在的時間及顯示定時設(shè)置時間。第二部分系統(tǒng)總體方案及硬件設(shè)計2.1系統(tǒng)總體設(shè)計:1、方案設(shè)計:用單片機來設(shè)計制作完成,由于其功能的實現(xiàn)主要通過軟件編程來完成,那么就降低了硬件電路的復雜性,而且其成本也有所降低,2、單片機的選型:AT89C52是低功耗、高性能的CMOS型8位單片機。片內(nèi)帶有4KB的Flash存儲器,且允許在系統(tǒng)內(nèi)改寫或用編程器編程。另外,AT89C51的指令系統(tǒng)和引腳與8051完全兼容,片內(nèi)有128B的RAM、32條I/O口線、2個16位定時計數(shù)器、5個中斷源、一個全雙工串行口等?;谝陨蟽?yōu)點,本設(shè)計采用AT89C52單片機。3、總體電路的設(shè)計:時間作息控制的主體電路應(yīng)包括秒信號發(fā)生器、時間顯示電路、按鍵電路、供電電源以及鬧鈴指示電路等幾部分。按鍵功能說明:K1設(shè)置時間;K2加一;K3,減一;K4;聲光控制開關(guān)。時間作息控制的系統(tǒng)框圖1如下所示:ATAT89C52復位、時鐘等電路按鈕電路LED顯示電路聲光指示電路電源供電電路圖12.2系統(tǒng)各個部分的電路設(shè)計:1、系統(tǒng)復位電路的設(shè)計:單片機系統(tǒng)一般應(yīng)有手動或上電復位電路。復位電路的實現(xiàn)通常有兩種方式:1RC復位電路;2專用μP監(jiān)控電路。前者實現(xiàn)簡單,成本低,但復位可靠性相對較低;后者成本較高,但復位可靠性高,尤其是高可靠重復復位。對于復位要求高、并對電源電壓進行監(jiān)視的場合,大多采用這種方式。復位電路主要用來在單片機的程序進入死循環(huán)后,能使單片機重新從頭執(zhí)行程序而不會無休止的執(zhí)行程序。本設(shè)計采用了上電按鈕電平復位電路,如圖2圖22、系統(tǒng)時鐘電路設(shè)計:對于時間要求不是很高的系統(tǒng),只要按圖進行設(shè)計就能使系統(tǒng)可靠起振并穩(wěn)定運行。但由于實際工作過程中的C1、C2電容起著系統(tǒng)時鐘頻率微調(diào)和穩(wěn)定的作用,因此,在實際應(yīng)用中一定要注意正確選擇參數(shù)〔30±10PF,并保證對稱性〔盡可能匹配,這兩個電容元件對鬧鐘的走時誤差有很大關(guān)系,并且選用正規(guī)的瓷片或云母電容,如果可能的話,溫度系數(shù)要盡可能低。另外,瓷片電容的實際焊接距離不應(yīng)該離單片機太遠否則誤差較大。具體的時鐘電路如圖三所示:圖33、聲光指示電路設(shè)計:聲光指示可以有聲或光兩種形式。本系統(tǒng)采用聲音和光混合指示。關(guān)鍵元件是蜂鳴器和發(fā)光二極管。鬧鐘電路是用比較器來比較計時系統(tǒng)和定時系統(tǒng)的輸出狀態(tài),如果計時系統(tǒng)和定時系統(tǒng)的輸出狀態(tài)相同,則發(fā)出一個脈沖信號,再和一個高頻信號混合,送到放大電路驅(qū)動揚聲器發(fā)聲,從而實現(xiàn)定時鬧響的功能。其電路設(shè)計參見系統(tǒng)原理圖。4、顯示電路的設(shè)計:本設(shè)計采用了4位數(shù)碼管顯示電路。在4位LED顯示時,為了簡化電路,降低成本,采用動態(tài)顯示的方式,4個LED顯示器共用一個8位的I/O,4位LED數(shù)碼管的位選線分別由相應(yīng)的P2.2~P2.5控制,而將其相應(yīng)的段選線并聯(lián)在一起,由一個8位的I/O口控制,即P0口。由于采用了四位數(shù)碼管,所以數(shù)碼管顯示"時"、"分";秒的顯示選用了一個發(fā)光二極管,兩滅周期為兩秒,即點亮和熄滅時間均為一秒。到達定時時間時,由計時系統(tǒng)的輸出狀態(tài)產(chǎn)生一脈沖信號,然后去觸發(fā)蜂鳴器實現(xiàn)鬧鈴。校時電路是用來對"時"、"分"、"秒"顯示數(shù)字進行校對調(diào)整的。具體的電路設(shè)計如圖4示:圖45、定時和調(diào)時電路的設(shè)計:本設(shè)計因為使用到的鍵數(shù)目比較少,不宜采用矩陣式鍵盤,采用了功能直觀簡潔方便的獨立式鍵盤,而且考慮了鍵盤的消抖問題。比較容易理解。每個鍵的具體功能如下:K1設(shè)置時間;K2加一;K3,減一;K4;聲光控制開關(guān)。按鍵定義如圖5所示:圖5第三部分軟件的設(shè)計3.1概述:軟件設(shè)計的重點在于秒脈沖信號的產(chǎn)生、顯示的實現(xiàn)、以及按鍵的處理等方面?;谲浖拿朊}沖信號通常有延時法和定時中斷法。延時法一般采用查詢方式,在延時子程序前后必然需要查詢和處理的程序,導致誤差的產(chǎn)生,因此其秒脈沖的精度不高;中斷法的原理是,利用單片機內(nèi)部的定時器溢出中斷來實現(xiàn)。本設(shè)計使定時器每50ms中斷1次,則20次的周期為1s。這種實現(xiàn)法的特點是精度高,秒脈沖的發(fā)生和其他處理可以并行進行。本系統(tǒng)中所使用的晶振頻率為12MHZ。3.2主模塊的設(shè)計:主模塊是系統(tǒng)軟件的主框架。結(jié)構(gòu)化程序設(shè)計一般有"自上而下"和"自下而上"兩種方式,"自上而下"法的核心就是主框架的構(gòu)建。它的合理與否關(guān)系到程序最終的功能的多少和性能的好壞。本系統(tǒng)的主模塊的程序框圖如下圖6所示:單片機系統(tǒng)初始化單片機系統(tǒng)初始化定時初始化中斷初始化串口初始化顯示待機指示符設(shè)定鬧鈴時間判設(shè)置鬧鈴時間否?顯示刷新啟動走時有關(guān)變量初始化刷新顯示判時或分變化否?秒指示判1秒到否?鬧鈴判是否到鬧鈴時間?延時YYYY圖63.3顯示模塊設(shè)計:顯示是由顯示代碼取得相應(yīng)的段碼,顯示段碼數(shù)據(jù)的并行發(fā)送,用LED顯示器代替指針顯示進而顯示時間,減小了計時誤差,這種表具有時,分,秒顯示時間的功能,還可以進行時和分的校對,片選的靈活性好。程序流程如圖7所示。圖七3.4時間設(shè)定模塊設(shè)計:時間設(shè)定模塊的設(shè)計要點是按鍵的去抖處理與多種狀態(tài)公用一個鍵的處理問題。即只涉及4個鍵完成了4位時間參數(shù)的設(shè)定。軟件法去抖動的實質(zhì)是用延時,即檢測到某一鍵狀態(tài)變化后延時一段時間,再檢測該按鍵的狀態(tài)是否還保持著,如是則作為按鍵處理,否則,視為抖動,不予理睬。去抖中的延時時間一般參考資料多描述為10ms左右,實際應(yīng)用中,應(yīng)大于20ms,否則,會導致按一次作多次處理,影響程序正常執(zhí)行。 按鍵消抖流程圖原理如圖8所示:圖83.5聲光功能的實現(xiàn):鬧鈴功能的實現(xiàn)涉及到兩個方面:鬧鈴時間設(shè)定和是否鬧鈴判別與相應(yīng)處理。鬧鈴時間設(shè)定模塊的設(shè)計可參照時間設(shè)定模塊,這里著重闡述鬧鈴判別與處理模塊的設(shè)計問題。鬧鈴判別與鬧鈴處理的關(guān)鍵在于判別何時要進行鬧鈴。在每次循環(huán)掃描的過程中,判斷現(xiàn)在的時間和定時的時間是否一致。一致的話,鬧鈴電路根據(jù)計時系統(tǒng)的輸出狀態(tài)產(chǎn)生一脈沖信號,然后加上一個高頻或低頻信號送到放大電路驅(qū)動蜂鳴器發(fā)聲實現(xiàn)報時。時間調(diào)節(jié)電路根據(jù)不同狀態(tài)下的具體按鍵意義將相對應(yīng)的計數(shù)器加以改變,并通過數(shù)碼管顯示出來。第四部分Proteus軟件仿真本次課程設(shè)計所采用的程序調(diào)試軟件為wave6000集成調(diào)試軟件,所采用的仿真軟件為proteusprofessional軟件。本設(shè)計在Proteus軟件上進行了仿真,實現(xiàn)了設(shè)計所要求的具體內(nèi)容。4.1仿真結(jié)果:1、啟動初值〔如圖9圖92、聲光控制報警〔如圖10圖103、定時響鈴功能〔如圖11圖114.2性能及誤差分析:該作息時間控制器有四個按鍵:K1,K2,K3和K4。初始加電時數(shù)碼管顯示時鐘計數(shù)初值并運行。按K1鍵進行校時,可以分別按K2和K3鍵進行對時及分進行單獨校時,使其校正到標準時間;并按K4鍵退出。時鐘正常顯示運行狀態(tài)時,按K2鍵顯示閃爍并進行定時時間設(shè)置,按K1鍵和K3進行分和時的定時時間設(shè)定;并按K4鍵退出。該電路顯示的誤差主要由晶振自身的誤差所造成,晶振的誤差約為0.0001~0.000001。在軟件的編程過程中所產(chǎn)生的誤差比較小,另外在中斷的過程中,只會在第一次計時時產(chǎn)生時間的偏移,而它所產(chǎn)生累計誤差很小,可以忽略。綜合以上分析,本次設(shè)計時鐘誤差較小,能得到比較理想結(jié)果,性能穩(wěn)定。第五部分課程設(shè)計體會在整個設(shè)計過程中,充分發(fā)揮人的主觀能動性,自主學習,學到了許多沒學到的知識。這次畢業(yè)論文的制作過程是我的一次再學習,再提高的過程。在論文中我充分地運用了大學期間所學到的知識。我從資料的收集中,掌握了很多單片機、LED顯示屏的知識,讓我對我所學過的知識有所鞏固和提高,并且讓我對當今單片機、LED顯示屏的最新發(fā)展技術(shù)有所了解。在整個過程中,我學到了新知識,增長了見識。在今后的日子里,我仍然要不斷地充實自己,爭取在所學領(lǐng)域有所作為。腳踏實地,認真嚴謹,實事求是的學習態(tài)度,不怕困難、堅持不懈、吃苦耐勞的精神是我在這次設(shè)計中最大的收益。我想這是一次意志的磨練,是對我實際能力的一次提升,也會對我未來的學習和工作有很大的幫助。在此次設(shè)計中,知道了做凡事要有一顆平常的心,不要想著走捷徑,一步一腳印。也練就了我們的耐心,做什么事都在有耐心。此次論文中學了很多很多東西,這是最重要的。我認為這個收獲應(yīng)該說是相當大的。一開始我們從參考書上找來了課題,但是畢竟是參考書,做到后來發(fā)現(xiàn)很多程序都是不完整的,這讓我們傷透了腦筋??粗鴦e的小組都弄得有模有樣了,可是我們連一個課題都還沒有定好。好不容易又找到了課題,可是結(jié)果還是很不盡人意。程序接線什么的都弄好了,調(diào)試也沒有問題,可是就是無法達到預期想要的結(jié)果。參考書畢竟只是一個參考,設(shè)計這種東西最后還是要靠自己動腦筋。然后我們大家一起齊心協(xié)力,從平時做的實驗﹑老師上課的舉例﹑書本上的知識和其他同學的幫助下終于完成了。應(yīng)該說這是通過我們小組成員的共同努力和動腦完成的,雖然內(nèi)容并不是很復雜,但是我們覺得設(shè)計的過程相當重要,學到了很多,收獲了很多。我覺得課程設(shè)計反映的是一個從理論到實際應(yīng)用的過程,但是更遠一點可以聯(lián)系到以后畢業(yè)之后從學校轉(zhuǎn)到踏上社會的一個過程。小組人員的配合﹑相處,以及自身的動腦和努力,都是以后工作中需要的。參考文獻:[1]余發(fā)山,王福忠編著.單片機原理及應(yīng)用技術(shù).XX:中國礦業(yè)大學出版社,2008.[2]陳奧初,竇振中等編著.單片機應(yīng)用系統(tǒng)設(shè)計與實踐.北京:北京航空航天大學出版社,1991.[3]陳偉人編著.MCS-51系列單片機實用子程序集錦[M].北京:清華大學出版社.1993.附錄附錄一:程序源代碼#include<reg52.h>#defineucharunsignedchar#defineuintunsignedintsbitE=P3^4;sbitRS=P3^5;sbitkey1=P2^4;sbitkey2=P2^5;sbitkey3=P2^6;sbitkey4=P2^7;sbitmbkey=P2^2;sbitbeep=P2^3;ucharcount,shi=1,fen=59,miao=58,key1num,flag,flag1,xqnum;//flag鬧鐘ucharkey2num,jinzhi=3,naonum=1,ms,mbmiao,mbfen,mbkeynum,num; //ms秒表進數(shù),mbmiao.mbfen秒表的秒.分 key2num是key5的計數(shù)jinzhi進制轉(zhuǎn)換參數(shù)uintnian=2009,yue=11,ri=19,count2;ucharcodetable[]="2012-6-06WED";ucharcodetable1[]="24d01:59:58ON";ucharcodetable2[]="MON,TUE,WED,THU,FRI,SAT,SUN";ucharcodetable3[]="am,pm,24d";ucharcodetable4[]="ON,OFF";ucharcodetable5[]="00:00:00mb";voiddelay<uintz>{ uintx,y; for<x=z;x>0;x--> for<y=110;y>0;y-->;}voiddi<uintx>//蜂鳴器發(fā)聲函數(shù){ beep=0; delay<x>; beep=1;}voidwrite_com<ucharcom>//給寫液晶命令{ RS=0; P0=com; delay<5>; E=1; delay<5>; E=0;}voidwrite_date<uchardate>//給液晶寫數(shù)據(jù){ RS=1; P0=date; delay<5>; E=1; delay<5>; E=0;}voidinit<>//初始化函數(shù){ ucharnum; E=0; write_com<0x38>; write_com<0x0c>; write_com<0x06>; write_com<0x01>;//清零 write_com<0x80>; for<num=0;num<16;num++> { write_date<table[num]>; delay<20>; } write_com<0x80+0x40>; //第二行 for<num=0;num<16;num++> { write_date<table1[num]>; delay<20>; } TMOD=0X01; TH0=<65536-50000>/256; TL0=<65536-50000>%256; EA=1; ET0=1; TR0=1; TH1=<65536-10000>/256; TL1=<65536-10000>%256; ET1=0; TR1=0; }voidwrite_nian<ucharadd,uintdate>//年顯示函數(shù){ucharqian,bai,shi,ge; qian=date/1000; bai=<date-1000*qian>/100; shi=<date-qian*1000-bai*100>/10; ge=date%10; write_com<0x80+add>; write_date<0x30+qian>; write_date<0x30+bai>; write_date<0x30+shi>; write_date<0x30+ge>;}voidwrite_yue<ucharadd,uchardate> //月顯示函數(shù){ucharshi,ge; shi=date/10; ge=date%10; write_com<0x80+add>; write_date<0x30+shi>; write_date<0x30+ge>;}voidwrite_ri<ucharadd,uchardate> //日顯示函數(shù){ucharshi,ge; shi=date/10; ge=date%10; write_com<0x80+add>; write_date<0x30+shi>; write_date<0x30+ge>;}voidwrite_sfm<ucharadd,uchardate> //秒顯示函數(shù){ ucharshi,ge; shi=date/10; ge=date%10; write_com<0x80+0x40+add>; write_date<0x30+shi>; write_date<0x30+ge>;}voidwrite_week<ucharweek> //星期顯示函數(shù){ ucharweek_num; week_num=week; switch<week_num> { case1: write_com<0x80+13>; write_date<table2[0]>; write_date<table2[1]>; write_date<table2[2]>; write_com<0x80+13>; break; case2: write_com<0x80+13>; write_date<table2[4]>; write_date<table2[5]>; write_date<table2[6]>; write_com<0x80+13>; break; case3: write_com<0x80+13>; write_date<table2[8]>; write_date<table2[9]>; write_date<table2[10]>; write_com<0x80+13>; break; case4: write_com<0x80+13>; write_date<table2[12]>; write_date<table2[13]>; write_date<table2[14]>; write_com<0x80+13>; break; case5: write_com<0x80+13>; write_date<table2[16]>; write_date<table2[17]>; write_date<table2[18]>; write_com<0x80+13>; break; case6: write_com<0x80+13>; write_date<table2[20]>; write_date<table2[21]>; write_date<table2[22]>; write_com<0x80+13>; break; case7: write_com<0x80+13>; write_date<table2[24]>; write_date<table2[25]>; write_date<table2[26]>; write_com<0x80+13>; break; }}voidwrite_jinzhi<ucharjinzhi> //jinzhi進制顯示函數(shù){ ucharjznum; jznum=jinzhi; switch<jznum> { case1: write_com<0x80+0x40+0>; write_date<table3[0]>; write_date<table3[1]>; write_date<table3[2]>; write_com<0x80+0x40+0>; break; case2: write_com<0x80+0x40+0>; write_date<table3[4]>; write_date<table3[5]>; write_date<table3[6]>; write_com<0x80+0x40+0>; break; case3: write_com<0x80+0x40+0>; write_date<table3[8]>; write_date<table3[9]>; write_date<table3[10]>; write_com<0x80+0x40+0>; break; }}voidwrite_nao<ucharnao> //鬧鐘開關(guān)顯示函數(shù){ ucharnaonum; naonum=nao; switch<naonum> { case1: write_com<0x80+0x40+13>; write_date<table4[0]>; write_date<table4[1]>; write_date<table4[2]>; write_com<0x80+0x40+13>; break; case2: write_com<0x80+0x40+13>; write_date<table4[4]>; write_date<table4[5]>; write_date<table4[6]>; write_com<0x80+0x40+13>; break; }}voidkeyboard<>//按鍵掃描函數(shù){ if<flag==1> { //鬧鐘暫停函數(shù) if<key4==0> { delay<5>; if<key4==0> { while<!key4>; beep=1; flag=0; } } } if<key1==0> { delay<5>;//消斗 if<key1==0> { key1num++; while<!key1>; // di<1>; if<key1num==1> { TR0=0; write_com<0x80+0x40+10>; write_com<0x0f>;//光標閃爍 } if<key1num==2> { write_com<0x80+0x40+7>; } if<key1num==3> { write_com<0x80+0x40+4>; } if<key1num==4> { write_com<0x80+0x40>; } if<key1num==5> { write_com<0x80+2>; } if<key1num==6> { write_com<0x80+7>; } if<key1num==7> { write_com<0x80+10>; } if<key1num==8> { write_com<0x80+13>; } if<key1num==9> { write_com<0x80+0x40+13>; } if<key1num==10> { key1num=0; write_com<0x0c>;//光標停止閃爍 TR0=1;//打開定時器 } } } if<key1num!=0> { if<key2==0> { delay<5>; if<key2==0> { while<!key2>;//等待松手 di<100>; if<key1num==1> { miao++; if<miao==60> miao=0; write_sfm<10,miao>; write_com<0x80+0x40+10>; } if<key1num==2> { fen++; if<fen==60> fen=0; write_sfm<7,fen>; write_com<0x80+0x40+7>; } if<key1num==3> { shi++; if<jinzhi==3> { if<shi==24> shi=0; } else { if<shi>12> shi=shi-12; } write_sfm<4,shi>; write_com<0x80+0x40+4>; } if<key1num==4> { jinzhi++; if<jinzhi==4> jinzhi=1; write_jinzhi<jinzhi>; } if<key1num==5> { nian++; write_nian<2,nian>; write_com<0x80+2>; } if<key1num==6> { yue++; if<yue==13> yue=1; write_yue<7,yue>; write_com<0x80+7>; } if<key1num==7> { ri++; if<ri==32> ri=1; write_ri<10,ri>; write_com<0x80+10>; } if<key1num==8> { xqnum++; if<xqnum==8> xqnum=1; write_week<xqnum>; } if<key1num==9> { naonum++; if<naonum==3> naonum=1; write_nao<naonum>; } if<key1num==10> { key1num=0; write_com<0x0c>;//光標停止閃爍 TR0=1;//打開定時器 } } } if<key3==0> { delay<5>; if<key3==0> { while<!key3>; di<100>; if<key1num==1> { miao--; if<miao==-1> miao=59; write_sfm<10,miao>; write_com<0x80+0x40+10>; } if<key1num==2> { fen--; if<fen==-1> fen=59; write_sfm<7,fen>; write_com<0x80+0x40+7>; } if<key1num==3> { shi--;/* if<shi==-1> shi=23;*/ if<jinzhi==3> { if<shi==-1> shi=23; } else { if<shi<1> shi=shi+12; } write_sfm<4,shi>; write_com<0x80+0x40+4>; } if<key1num==4> { jinzhi--; if<jinzhi==0> jinzhi=3; write_jinzhi<jinzhi>; } if<key1num==5> { nian--; write_nian<2,nian>; write_com<0x80+4>; } if<key1num==6> { yue--; if<yue==0> yue=12; write_yue<7,yue>; write_com<0x80+7>; } if<key1num==7> { ri--; if<ri==0> ri=31; write_ri<10,ri>; write_com<0x80+13>;/* if<key1num==8> { xqnum--; if<xqnum==0> xqnum=7; write_week<xqnum>; write_com<0x80+10>; } if<key1num==9> { naonum--; if<naonum==0> naonum=2; write_nao<naonum>; write_com<0x80+0X40+13>; }*/ } } }}}voidmbiao<> //秒表函數(shù){if<mbkey==0>{ mbkeynum++; while<!mbkey>; if<mbkeynum==1> //關(guān)閉時鐘定時器 { TR0=0; ET0=0; write_com<0x80+0x40>; for<num=0;num<16;num++> write_date<table5[num]>; ms=0; mbmiao=0; mbfen=0; TR1=0; ET1=0; } if<mbkeynum==2> //打開秒表定時器關(guān)閉時鐘定時器 { TR1=1; ET1=1; TR0=0; ET0=0; } if<mbkeynum==3> //關(guān)閉秒表定時器 { TR1=0; ET1=0; TR0=0; ET0=0; } if<mbkeynum==4> //顯示時鐘狀態(tài)打開時鐘定時器 { TR0=1; ET0=1; TR1=0; ET1=0; write_sfm<10,miao>; write_sfm<7,fen>; write_sfm<4,shi>; write_jinzhi<jinzhi>; write_com<0x80+0x
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 上海市澄衷高級中學2025年高三4月調(diào)研測試(二模)物理試題含解析
- 四川省攀枝花市西區(qū)2025屆三年級數(shù)學第二學期期末調(diào)研模擬試題含解析
- 遼寧省沈陽市第一三四中學2025年初三最后一模(5月月考)生物試題含解析
- 委托合同協(xié)議書范本十
- 四川省瀘州市瀘縣一中2025屆招生全國統(tǒng)一考試(模擬)化學試題含解析
- 設(shè)備買賣合作合同
- 產(chǎn)品陳列合同
- 餐廳主管勞動合同
- 統(tǒng)編版二年級語文下冊期中測試卷(B)(含答案)
- 江西省贛州市龍南市2024-2025學年七年級下學期期中地理試題(含答案)
- 智能建造技術(shù)在橋梁施工中的應(yīng)用
- 西門子S7-1500PLC技術(shù)及應(yīng)用課件:S7-1500 PLC 基本指令系統(tǒng)
- 人教版英語七年級下冊知識講義Unit 1 section B (教師版)
- 拆除臨時用電施工方案
- 2025年初中藝術(shù)考試 考點梳理 課件人音版八年級下冊 全部歌曲考點
- 小區(qū)物業(yè)消防安全實施方案
- 【八年級下冊歷史】單元測試 第一、二單元測試題
- 《微觀經(jīng)濟學》試題及參考答案(三)
- 智能人行通道速、擺閘建筑施工安裝布線調(diào)試方案
- 郵政金融主任競聘
- 紡織材料創(chuàng)新與應(yīng)用
評論
0/150
提交評論