(精品論文)電子定時器的畢業(yè)設(shè)計論文_第1頁
(精品論文)電子定時器的畢業(yè)設(shè)計論文_第2頁
(精品論文)電子定時器的畢業(yè)設(shè)計論文_第3頁
(精品論文)電子定時器的畢業(yè)設(shè)計論文_第4頁
(精品論文)電子定時器的畢業(yè)設(shè)計論文_第5頁
已閱讀5頁,還剩45頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

電子定時器的設(shè)計 學(xué)生姓名: 學(xué) 部: 班 級: 專 業(yè): 指導(dǎo)教師: 年 月 日 電子定時器的設(shè)計Electron timer design學(xué)生: xxxx 班級: xxxxx3 學(xué)號: 0xxx學(xué)部: xxx 專業(yè): xx 指導(dǎo)老師: xxx 指導(dǎo)老師職稱: xxxx 工作單位: xxxx 畢業(yè)設(shè)計(論文)完成時間自 2008 年 12 月 至 2009 年 05 月【摘要】 隨著時代的進步,電子行業(yè)的發(fā)展,定時器的應(yīng)用也越來越廣泛。但傳統(tǒng)的定時器都是使用發(fā)條驅(qū)動式、電機傳動式或電鐘式等機械定時器。電子定時器相對產(chǎn)痛定時器來說,體積小、重量輕、造價低、精度高、壽命長、而且安全可靠、調(diào)整方便、適于頻繁使用。本設(shè)計采用AT89C2051單片機為核心,闡述了系統(tǒng)工作原理,給出了軟件流程。該電子定時器滿足對電器的電源進行控制,同時要方便用戶對電子定時器的操作。最大時間能達(dá)到30h,切最大精度可以到分鐘關(guān)鍵詞:定時器;單片機;AT89C2051;動態(tài)掃描;繼電器【Abstract】 Progress , development of electron industry , the timer application are also more and more broad with the times. But, the tradition timer all is to use spring to drive machinery timers such as style , electric motor drive style or electric clock style. Come the electron timer to say volume is small , weight is light , cost of construction is low , accuracy is high , life-span is long, and safety is reliable , adjust to be suitable for being frequently put into use conveniently relatively painful timer of product. Have designed that the monolithic machine is core originally adopt AT89C2051 , have set forth system operating principle , have given a software out technological process. The power source go along being the electron timers turn to be satisfied with electrical equipment is controlled , is wants the convenience of customers operation to electron timer at the same time. Maximal time can reach 30 hs , by all means maximal accuracy can arrive at a minuteKeywords: Timer; Monolithic machine; AT89C2051; Development is scanned; Relay目 錄1 引言71.1課題的來源和意義71.2電子定時器的應(yīng)用81.3電子定時器的發(fā)展前景82 51單片機內(nèi)部結(jié)構(gòu)及計數(shù)原理82.1 51單片機內(nèi)部機構(gòu)82.2計數(shù)原理113 電子定時器的設(shè)計193.1總體的設(shè)計要求193.2 系統(tǒng)硬件電路設(shè)計193.2.1 芯片的選擇193.2.2 交流控制接口電路193.2.3顯示電路193.2.4 報警電路193.3 系統(tǒng)程序的設(shè)計203.3.1 主程序流程圖204 重要元件及重要電路214.1 AT89C2051的內(nèi)部結(jié)構(gòu)及功能和引腳說明214.1.1 AT89C2051主要性能224.1.2 AT89C2051的內(nèi)部結(jié)構(gòu)224.1.3 AT89C2051的引腳說明244.2 繼電器264.2.1、電磁繼電器的工作原理和特性264.2.2、繼電器主要產(chǎn)品技術(shù)參數(shù)264.2.3、繼電器的電符號和觸點形式274.3數(shù)碼管284.3.1、數(shù)碼管的分類284.3.2、數(shù)碼管的驅(qū)動方式285 軟件設(shè)計295.1 偽定義295.2 中斷入口305.3 主程序315.4倒計時程序345.5 BCD子程序(加1或減1)355.6加1程序365.7調(diào)時快進程序375.8功能菜單程序375.9到點工作程序405.10響鈴程序425.11顯示程序435.12無顯示(滅燈)程序455.13延時程序455.14 ERR(出錯處理)程序47結(jié)論48參考文獻(xiàn)49致謝50附錄511 引言我們在日常生活中,經(jīng)常碰到一些需要定時的事情,例如:印相或放大照片,需要定在零點幾秒的時間,洗衣機洗滌衣物需要定在幾分鐘到幾十分鐘的時間,電風(fēng)扇需要定在數(shù)十分鐘的時間。完成這種定時的定時器有多種多樣,在家用電器中采用機械定時器就是根據(jù)一般上弦鐘表原理設(shè)計的,這種定時器雖然結(jié)構(gòu)簡單,成本低,維修也比較方便,但是它的觸頭頻繁接觸和斷開,大大的縮減了它的使用壽命,也不利于進一步全自動化。在電子技術(shù)突飛猛進的今天,電子定時器一定會逐步取而代之,這是不言而喻的。本文是基于51系列單片機設(shè)計的一種用于控制家用電器的設(shè)計方案。1.1課題的來源和意義本課題是通過導(dǎo)師篩選提出的,電子設(shè)計課題不一定很大,只要通過親手做一遍全過程,完成一個產(chǎn)品制作,收獲是很大的。本課題的意義在于通過設(shè)計和制作本課題把在學(xué)校學(xué)習(xí)到的知識融會貫通并應(yīng)用到實際當(dāng)中。做到學(xué)有所成,學(xué)有所用。并且希望通過本設(shè)計為節(jié)能減排做出貢獻(xiàn)。1.2電子定時器的應(yīng)用電子定時器在家用電器中經(jīng)常用于延時自動關(guān)機、定時。延時自動關(guān)機可用于:收音機、電視機、錄音機、催眠器、門燈、路燈、汽車頭燈、轉(zhuǎn)彎燈以及其他電器的延時斷電及延時自停電源等。定時可用于:照相定時曝光、定時閃光、定時放大、定時調(diào)速、定時烘箱、冰箱門開定時報警、水位定時報警、延時催眠器、延時電鈴、延時電子鎖、觸摸定時開關(guān)等。例如:空調(diào)中的定時器,在工作一段時間之后便能自動切斷電源停止工作。夏季夜間使用,入睡前先頂好時間,等睡熟后到了預(yù)定時間,空調(diào)自動關(guān)機。方便節(jié)能。定時器除了應(yīng)用于家用電器外,還廣泛地用于工業(yè)農(nóng)業(yè)生產(chǎn)和服務(wù)設(shè)施,甚至軍事等。1.3電子定時器的發(fā)展前景傳統(tǒng)的定時器絕大多數(shù)都是發(fā)條驅(qū)動式、電機傳動式或電鐘式等機械定時器,部分電子器械中也有試用時間繼電器的。相對于傳統(tǒng)的定時器,電子定時器的體積小、重量輕、造價低、精度高、壽命長、而且安全可靠、調(diào)整方便、適于頻繁使用。所以電子定時器的發(fā)展必定大有前途。同時隨著現(xiàn)代電子技術(shù)的發(fā)展,電子定時器也在不斷的進步,朝向著更多用途、更高精度、更小體積發(fā)展著。例如:一個可編程電子定時器,它可以設(shè)置20組開、關(guān)電源設(shè)置,可以當(dāng)時鐘使用,還也可以按星期組合讓它在一周內(nèi)的任意一天或幾天按設(shè)置程序工作。而且它只有長12.5cm寬5.5cm厚5cm大小。且它的功耗特別小只有3W??梢哉f是小巧玲瓏,節(jié)能省電。2 51單片機內(nèi)部結(jié)構(gòu)及計數(shù)原理2.1 51單片機內(nèi)部機構(gòu)51單片機內(nèi)部有一個8位的CPU,同時CPU內(nèi)部包含了運算器,控制器及若干寄存器。從上圖中我們可以看到,在虛線框內(nèi)的就是CPU的內(nèi)部結(jié)構(gòu)了,8位的MCS-51單片機的CPU內(nèi)部有數(shù)術(shù)邏輯單元ALU(Arithmetic Logic Unit)、累加器A(8位)、寄存器B(8位)、程序狀態(tài)字PSW(8位)、程序計數(shù)器PC(有時也稱為指令指針,即IP,16位)、地址寄存器AR(16位)、數(shù)據(jù)寄存器DR(8位)、指令寄存器IR(8位)、指令譯碼器ID、控制器等部件組成。1、運算器(ALU)的主要功能A)算術(shù)和邏輯運算,可對半字節(jié)(一個字節(jié)是8位,半個字節(jié)就是4位)和單字節(jié)數(shù)據(jù)進行操作。B)加、減、乘、除、加1、減1、比較等算術(shù)運算。C)與、或、異或、求補、循環(huán)等邏輯運算。D)位處理功能(即布爾處理器)。由于ALU內(nèi)部沒有寄存器,參加運算的操作數(shù),必須放在累加器A中。累加器A也用于存放運算結(jié)果。例如:執(zhí)行指令 ADD A,B執(zhí)行這條指令時,累加器A中的內(nèi)容通過輸入口In_1輸入ALU,寄存器B通過內(nèi)部數(shù)據(jù)總線經(jīng)輸入口In_2輸入ALU,A+B的結(jié)果通過ALU的輸出口Out、內(nèi)部數(shù)據(jù)總線,送回到累加器A。2、程序計數(shù)器PCPC的作用是用來存放將要執(zhí)行的指令地址,共16位,可對64K ROM直接尋址,PC低8位經(jīng)P0口輸出,高8位經(jīng)P2口輸出。也就是說,程序執(zhí)行到什么地方,程序計數(shù)器PC就指到哪里,它始終是跟躥著程序的執(zhí)行。我們知道,用戶程序是存放在內(nèi)部的ROM中的,我們要執(zhí)行程序就要從ROM中一個個字節(jié)的讀出來,然后到CPU中去執(zhí)行,那么ROM具體執(zhí)行到哪一條呢?這就需要我們的程序計數(shù)器PC來指示。程序計數(shù)器PC具有自動加1的功能,即從存儲器中讀出一個字節(jié)的指令碼后,PC自動加1(指向下一個存儲單元)。 3、指令寄存器IR指令寄存器的作用就是用來存放即將執(zhí)行的指令代碼。在這里我們先簡單的了解下CPU執(zhí)行指令的過程,首先由程序存儲器(ROM)中讀取指令代碼送入到指令寄存器,經(jīng)譯碼器譯碼后再由定時與控制電路發(fā)出相應(yīng)的控制信號,從而完成指令的功能。關(guān)于指令在單片機內(nèi)部的執(zhí)行過程,我們在后面將會以另一節(jié)課來進行詳細(xì)的講解。 4、指令譯碼器ID用于對送入指令寄存器中的指令進行譯碼,所謂譯碼就是把指令轉(zhuǎn)變成執(zhí)行此指令所需要的電信號。當(dāng)指令送入譯碼器后,由譯碼器對該指令進行譯碼,根據(jù)譯碼器輸出的信號,CPU控制電路定時地產(chǎn)生執(zhí)行該指令所需的各種控制信號,使單片機正確的執(zhí)行程序所需要的各種操作。5、地址寄存器AR(16位)AR的作用是用來存放將要尋址的外部存儲器單元的地址信息,指令碼所在存儲單元的地址編碼,由程序計數(shù)器PC產(chǎn)生,而指令中操作數(shù)所在的存儲單元地址碼,由指令的操作數(shù)給定。從上圖中我們可以看到,地址寄存器AR通過地址總線AB與外部存儲器相連。6、數(shù)據(jù)寄存器DR用于存放寫入外部存儲器或I/O端口的數(shù)據(jù)信息??梢?,數(shù)據(jù)寄存器對輸出數(shù)據(jù)具有鎖存功能。數(shù)據(jù)寄存器與外部數(shù)據(jù)總線DB直接相連。7、程序狀態(tài)字PSW用于記錄運算過程中的狀態(tài),如是否溢出、進位等。例如,累加器A的內(nèi)容83H,執(zhí)行:ADD A,#8AH ;累加器A與立即數(shù)8AH相加,并把結(jié)果存放在A中。指令后,將產(chǎn)生和的結(jié)果為10DH,而累加器A只有8位,只能存放低8位,即0DH,元法存放結(jié)果中的最高位B8。為些,在CPU內(nèi)設(shè)置一個進位標(biāo)志位C,當(dāng)執(zhí)行加法運算出現(xiàn)進位時,進位標(biāo)志位C為1。8、時序部件由時鐘電路和脈沖分配器組成,用于產(chǎn)生微操作控制部件所需的定時脈沖信號2.2計數(shù)原理80C51單片機內(nèi)部設(shè)有兩個16位的可編程定時器/計數(shù)器??删幊痰囊馑际侵钙涔δ埽ㄈ绻ぷ鞣绞?、定時時間、量程、啟動方式等)均可由指令來確定和改變。在定時器/計數(shù)器中除了有兩個16位的計數(shù)器之外,還有兩個特殊功能寄存器(控制寄存器和方式寄存器)。 定時器/計數(shù)器的結(jié)構(gòu): 從上面定時器/計數(shù)器的結(jié)構(gòu)圖中我們可以看出,16位的定時/計數(shù)器分別由兩個8位專用寄存器組成,即:T0由TH0和TL0構(gòu)成;T1由TH1和TL1構(gòu)成。其訪問地址依次為8AH-8DH。每個寄存器均可單獨訪問。這些寄存器是用于存放定時或計數(shù)初值的。此外,其內(nèi)部還有一個8位的定時器方式寄存器TMOD和一個8位的定時控制寄存器TCON。這些寄存器之間是通過內(nèi)部總線和控制邏輯電路連接起來的。TMOD主要是用于選定定時器的工作方式;TCON主要是用于控制定時器的啟動停止,此外TCON還可以保存T0、T1的溢出和中斷標(biāo)志。當(dāng)定時器工作在計數(shù)方式時,外部事件通過引腳T0(P3.4)和T1(P3.5)輸入。 定時計數(shù)器的原理: 16位的定時器/計數(shù)器實質(zhì)上就是一個加1計數(shù)器,其控制電路受軟件控制、切換。 當(dāng)定時器/計數(shù)器為定時工作方式時,計數(shù)器的加1信號由振蕩器的12分頻信號產(chǎn)生,即每過一個機器周期,計數(shù)器加1,直至計滿溢出為止。顯然,定時器的定時時間與系統(tǒng)的振蕩頻率有關(guān)。因一個機器周期等于12個振蕩周期,所以計數(shù)頻率fcount=1/12osc。如果晶振為12MHz,則計數(shù)周期為:T=1/(12106)Hz1/12=1s 這是最短的定時周期。若要延長定時時間,則需要改變定時器的初值,并要適當(dāng)選擇定時器的長度(如8位、13位、16位等)。 當(dāng)定時器/計數(shù)器為計數(shù)工作方式時,通過引腳T0和T1對外部信號計數(shù),外部脈沖的下降沿將觸發(fā)計數(shù)。計數(shù)器在每個機器周期的S5P2期間采樣引腳輸入電平。若一個機器周期采樣值為1,下一個機器周期采樣值為0,則計數(shù)器加1。此后的機器周期S3P1期間,新的計數(shù)值裝入計數(shù)器。所以檢測一個由1至0的跳變需要兩個機器周期,故外部事年的最高計數(shù)頻率為振蕩頻率的1/24。例如,如果選用12MHz晶振,則最高計數(shù)頻率為0.5MHz。雖然對外部輸入信號的占空比無特殊要求,但為了確保某給定電平在變化前至少被采樣一次,外部計數(shù)脈沖的高電平與低電平保持時間均需在一個機器周期以上。 當(dāng)CPU用軟件給定時器設(shè)置了某種工作方式之后,定時器就會按設(shè)定的工作方式獨立運行,不再占用CPU的操作時間,除非定時器計滿溢出,才可能中斷CPU當(dāng)前操作。CPU也可以重新設(shè)置定時器工作方式,以改變定時器的操作。由此可見,定時器是單片機中效率高而且工作靈活的部件。 綜上所述,我們已知定時器/計數(shù)器是一種可編程部件,所以在定時器/計數(shù)器開始工作之前,CPU必須將一些命令(稱為控制字)寫入定時/計數(shù)器。將控制字寫入定時/計數(shù)器的過程叫定時器/計數(shù)器初始化。在初始化過程中,要將工作方式控制字寫入方式寄存器,工作狀態(tài)字(或相關(guān)位)寫入控制寄存器,賦定時/計數(shù)初值。下面我們就提出的控制字的格式及各位的主要功能與大家詳細(xì)的講解。 控制寄存器 定時器計數(shù)器T0和T1有2個控制寄存器-TMOD和TCON,它們分別用來設(shè)置各個定時器計數(shù)器的工作方式,選擇定時或計數(shù)功能,控制啟動運行,以及作為運行狀態(tài)的標(biāo)志等。其中,TCON寄存器中另有4位用于中斷系統(tǒng)。 定時器/計數(shù)器方式寄存器TMOD: 定時器方式控制寄存器TMOD在特殊功能寄存器中,字節(jié)地址為89H,無位地址。TMOD的格式如下圖所示。 由圖可見,TMOD的高4位用于T1,低4使用于T0,4種符號的含義如下:GATE:門控制位。GATE和軟件控制位TR、外部引腳信號INT的狀態(tài),共同控制定時器計數(shù)器的打開或關(guān)閉。CT:定時器計數(shù)器選擇位。C/T1,為計數(shù)器方式;CT0,為定時器方式。M1M0:工作方式選擇位,定時器計數(shù)器的4種工作方式由M1M0設(shè)定。定時器/計數(shù)器方式控制寄存器TMOD不能進行位尋址,只能用字節(jié)傳送指令設(shè)置定時器工作方式,低半字節(jié)定義為定時器0,高半字節(jié)定義為定時器1。復(fù)位時,TMOD所有位均為0。定時器/計數(shù)器控制寄存器TCON:TCON在特殊功能寄存器中,字節(jié)地址為88H,位地址(由低位到高位)為88H一8FH,由于有位地址,十分便于進行位操作。TCON的作用是控制定時器的啟、停,標(biāo)志定時器溢出和中斷情況。TCON的格式如下圖所示。其中,TFl,TRl,TF0和TR0位用于定時器計數(shù)器;IEl,ITl,IE0和IT0位用于中斷系統(tǒng)。各位定義如下:TF1:定時器1溢出標(biāo)志位。當(dāng)字時器1計滿溢出時,由硬件使TF1置“1”,并且申請中斷。進入中斷服務(wù)程序后,由硬件自動清“0”,在查詢方式下用軟件清“0”。TR1:定時器1運行控制位。由軟件清“0”關(guān)閉定時器1。當(dāng)GATE=1,且INT1為高電平時,TR1置“1”啟動定時器1;當(dāng)GATE=0,TR1置“1”啟動定時器1。TF0:定時器0溢出標(biāo)志。其功能及操作情況同TF1。TR0:定時器0運行控制位。其功能及操作情況同TR1。IE1:外部中斷1請求標(biāo)志。IT1:外部中斷1觸發(fā)方式選擇位。IE0:外部中斷0請求標(biāo)志。IT0:外部中斷0觸發(fā)方式選擇位。TCON中低4位與中斷有關(guān),我們將在下節(jié)課講中斷時再給予講解。由于TCON是可以位尋址的,因而如果只清溢出或啟動定時器工作,可以用位操作命令。例如:執(zhí)行“CLR TF0”后則清定時器0的溢出;執(zhí)行“SETB TR1”后可啟動定時器1開始工作(當(dāng)然前面還要設(shè)置方式定)。定時器/計數(shù)器的初始化: 由于定時器/計數(shù)器的功能是由軟件編程確定的,所以一般在使用定時/計數(shù)器前都要對其進行初始化,使其按設(shè)定的功能工作。初始貨的步驟一般如下:1、確定工作方式(即對TMOD賦值);2、預(yù)置定時或計數(shù)的初值(可直接將初值寫入TH0、TL0或TH1、TL1);3、根據(jù)需要開放定時器/計數(shù)器的中斷(直接對IE位賦值);4、啟動定時器/計數(shù)器(若已規(guī)定用軟件啟動,則可把TR0或TR1置“1”;若已規(guī)定由外中斷引腳電平啟動,則需給外引腳步加啟動電平。當(dāng)實現(xiàn)了啟動要求后,定時器即按規(guī)定的工作方式和初值開始計數(shù)或定時)。因為在不同工作方式下計數(shù)器位數(shù)不同,因而最大計數(shù)值也不同?,F(xiàn)假設(shè)最大計數(shù)值為M,那么各方式下的最大值M值如下:方式0:M=213=8 192方式1:M=216=65 536方式2:M=28=256方式3:定時器0分成兩個8位計數(shù)器,所以兩個M均為256。 因為定時器/計數(shù)器是作“加1”計數(shù),并在計數(shù)滿溢出時產(chǎn)生中斷,因此初值X可以這樣計算:X=M-計數(shù)值定時器/計數(shù)器的四種工作方式: 定T0或T1無論用作定時器或計數(shù)器都有4種工作方式:方式0、方式1、方式2和方式3。除方式3外,T0和T1有完全相同的工作狀態(tài)。下面以T1為例,分述各種工作方式的特點和用法。 工作方式0: 13位方式由TL1的低5位和TH1的8位構(gòu)成13位計數(shù)器(TL1的高3位無效)。工作方式0的結(jié)構(gòu)見下圖: 為定時計數(shù)選擇:CT0,T1為定時器,定時信號為振蕩周期12分頻后的脈沖;CTl,T1為計數(shù)器,計數(shù)信號來自引腳T1的外部信號。定時器T1能否啟動工作,還受到了R1、GATE和引腳信號INT1的控制。由圖中的邏輯電路可知,當(dāng)GATE0時,只要TR11就可打開控制門,使定時器工作;當(dāng)GATE1時,只有TR11且INT11,才可打開控制門。GATE,TR1,CT的狀態(tài)選擇由定時器的控制寄存器TMOD,TCON中相應(yīng)位狀態(tài)確定,INT1則是外部引腳上的信號。在一般的應(yīng)用中,通常使GATE0,從而由TRl的狀態(tài)控制Tl的開閉:TRl1,打開T1;TRl0,關(guān)閉T1。在特殊的應(yīng)用場合,例如利用定時器測量接于INT1引腳上的外部脈沖高電平的寬度時,可使GATE1,TRl1。當(dāng)外部脈沖出現(xiàn)上升沿,亦即INT1由0變1電平時,啟動T1定時,測量開始;一旦外部脈沖出現(xiàn)下降沿,亦即INT1由l變O時就關(guān)閉了T1。定時器啟動后,定時或計數(shù)脈沖加到TLl的低5位,從預(yù)先設(shè)置的初值(時間常數(shù))開始不斷增1。TL1計滿后,向THl進位。當(dāng)TL1和THl都計滿之后,置位T1的定時器回零標(biāo)志TFl,以此表明定時時間或計數(shù)次數(shù)已到,以供查詢或在打開中斷的條件下,可向CPU請求中斷。如需進一步定時/計數(shù),需用指令重置時間常數(shù)。 方式0是13位計數(shù)結(jié)構(gòu)的工作方式,其計數(shù)器由TH0全部8位和TL0的低5位構(gòu)成。當(dāng)TL0的低5位計數(shù)溢出時,向TH0進位,而全部13位計數(shù)溢出時,則向計數(shù)溢出標(biāo)志位TF0進位。 TMOD寄存器初始化為把定時器/計數(shù)器1設(shè)定為方式0,則M1M000;為實現(xiàn)定時功能,應(yīng)使C/T0;為實現(xiàn)定時器/計數(shù)器1的運行控制,則GATE0。定時器/計數(shù)器0不用,有關(guān)位設(shè)定為0。因此TMOD寄存器應(yīng)初始化為00H。 由定時器控制寄存器TCON中的TR1位控制定時的啟動和停止 TR11啟動,TR10停止。工作方式1:1是16位計數(shù)結(jié)構(gòu)的工作方式,計數(shù)器由TH0全部8位和TL0全部8位構(gòu)成。與工作方式0基本相同,區(qū)別僅在于工作方式1的計數(shù)器TL1和TH1組成16位計數(shù)器,從而比工作方式0有更寬的定時/計數(shù)范圍。工作方式28位自動裝入時間常數(shù)方式。由TLl構(gòu)成8位計數(shù)器,THl僅用來存放時間常數(shù)。啟動T1前,TLl和THl裝入相同的時間常數(shù),當(dāng)TL1計滿后,除定時器回零標(biāo)志TFl置位,具有向CPU請求中斷的條件外,THl中的時間常數(shù)還會自動地裝入TLl,并重新開始定時或計數(shù)。所以,工作方式2是一種自動裝入時間常數(shù)的8位計數(shù)器方式。由于這種方式不需要指令重裝時間常數(shù),因而操作方便,在允許的條件下,應(yīng)盡量使用這種工作方式。當(dāng)然,這種方式的定時計數(shù)范圍要小于方式0和方式1。工作方式2的結(jié)構(gòu)見下圖當(dāng)計數(shù)溢出后,不是像前兩種工作方式那樣通過軟件方法,而是由預(yù)置寄存器TH以硬件方法自動給計數(shù)器TL重新加載。變軟件加載為硬件加載。 初始化時,8位計數(shù)初值同時裝入TL0和TH0中。當(dāng)TL0計數(shù)溢出時,置位TF0,同時把保存在預(yù)置寄存器TH0中的計數(shù)初值自動加載TL0,然后TL0重新計數(shù)。如此重復(fù)不止。這不但省去了用戶程序中的重裝指令,而且也有利于提高定時精度。但這種工作方式下是8位計數(shù)結(jié)構(gòu),計數(shù)值有限,最大只能到255。這種自動重新加載工作方式非常適用于循環(huán)定時或循環(huán)計數(shù)應(yīng)用,例如用于產(chǎn)生固定脈寬的脈沖,此外還可以作串行數(shù)據(jù)通信的波特率發(fā)送器使用。工作方式32個8位方式。工作方式3只適用于定時器0。如果使定時器1為工作方式3,則定時器1將處于關(guān)閉狀態(tài)。當(dāng)T0為工作方式3時,THo和TL0分成2個獨立的8位計數(shù)器。其中,TL0既可用作定時器,又可用作計數(shù)器,并使用原T0的所有控制位及其定時器回零標(biāo)志和中斷源。TH0只能用作定時器,并使用T1的控制位TRl、回零標(biāo)志TFl和中斷源,見下圖。 通常情況下,T0不運行于工作方式3,只有在T1處于工作方式2,并不要求中斷的條件下才可能使用。這時,T1往往用作串行口波特率發(fā)生器(見14),TH0用作定時器,TL0作為定時器或計數(shù)器。所以,方式3是為了使單片機有1個獨立的定時器計數(shù)器、1個定時器以及1個串行口波特率發(fā)生器的應(yīng)用場合而特地提供的。這時,可把定時器l用于工作方式2,把定時器0用于工作方式3。下才可能使用。這時,T1往往用作串行口波特率發(fā)生器,TH0用作定時器,TL0作為定時器或計數(shù)器。所以,方式3是為了使單片機有1個獨立的定時器計數(shù)器、1個定時器以及1個串行口波特率發(fā)生器的應(yīng)用場合而特地提供的。這時,可把定時器l用于工作方式2,把定時器0用于工作方式3。3 電子定時器的設(shè)計3.1總體的設(shè)計要求本文所涉及的電子定時器要求能定時給電器供電或斷電,最大時間可以長達(dá)30h,操作使用方便,采用AT89C2051單片機控制,4位共陽數(shù)碼管顯示時間,繼電器做電器電源輸出控制。3.2 系統(tǒng)硬件電路設(shè)計3.2.1 芯片的選擇硬件電路要實現(xiàn)對交流大電流電源的控制、定時時間的設(shè)定顯示和到點提醒等功能。若采用40腳的單片機有利于設(shè)計,但會增大電路板的體積。本設(shè)計采用ATMEL公司的AT89C2051單片機,芯片位20腳,體積小,工作電壓范圍寬(2.7V6V)。性價比比較高。3.2.2 交流控制接口電路交流接口電路可以選擇繼電器控制,也可采用可控硅控制等。本設(shè)計采用的是前一種繼電器控制。3.2.3顯示電路顯示電路采用4個共陽極LED數(shù)碼管。為了在定時達(dá)到分(鐘)的時候能顯示出時鐘在計時,兩個數(shù)碼管之間增加一個發(fā)光二極管,以其閃爍來代表秒走動;為了使硬件電路簡單,采用單片機直接驅(qū)動LED數(shù)碼管(AT89C2051輸出口能吸收20mA電流),用動態(tài)掃描法實現(xiàn)LED顯示。3.2.4 報警電路報警電路采用普通的5V成品蜂鳴器。3.3 系統(tǒng)程序的設(shè)計程序采用模塊化、結(jié)構(gòu)化設(shè)計,并采用軟件抗干擾,使軟件的可靠性比較高,可維護性較強。主要模塊有:1) 主程序2) 菜單程序3) 到點工作程序4) 抗干擾程序3.3.1 主程序流程圖開始關(guān)中斷,設(shè)置堆棧有上電復(fù)位標(biāo)志? N Y熱啟動恢復(fù)正常冷啟動全面初始化調(diào)用顯示程序F鍵被按下? N Y調(diào)用顯示程序,設(shè)定時間開始計時、工作到點了嗎? N停止計時,調(diào)用到點工作程序結(jié)束4 重要元件及重要電路4.1 AT89C2051的內(nèi)部結(jié)構(gòu)及功能和引腳說明AT89C2051是美國ATMEL公司生產(chǎn)的低電壓、高性能CMOS 8位單片機,片內(nèi)含2k bytes的可反復(fù)擦寫的只讀程序存儲器(PEROM)和128bytes的隨機數(shù)據(jù)存儲器(RAM),器件采用ATMEL公司的高密度、非易失性存儲技術(shù)生產(chǎn),兼容標(biāo)準(zhǔn)MCS-51指令系統(tǒng),片內(nèi)置通用8位中央處理器和Flash存儲單元,功能強大AT89C2051單片機可為您提供許多高性價比的應(yīng)用場合。程序保密89C2051設(shè)計有2個程序保密位,保密位1被編程之后,程序存儲器不能再被編程除非做一次擦除,保密位2被編程之后,程序不能被讀出。軟硬件的開發(fā)89C2051可以采用下面2種方法開發(fā)應(yīng)用系統(tǒng)。(1) 由于89C2051內(nèi)部程序存貯器為Flash,所以修改它內(nèi)部的程序十分方便快捷,只要配備一個可以編程89C2051的編程器即可。調(diào)試人員可以采用程序編輯-編譯-固化-插到電路板中試驗這樣反復(fù)循環(huán)的方法,對于熟練的MCS-51程序員來說,這種調(diào)試方法并不十分困難。當(dāng)做這種調(diào)試不能夠了解片內(nèi)RAM的內(nèi)容和程序的走向等有關(guān)信息。(2) 將普通8031/80C31仿真器的仿真插頭中P1.0P1.7和P3.0P3.6引出來仿真205T,這種方法可以運用單步、斷點的調(diào)試方法,但是仿真不夠真實,比如,2051的內(nèi)部模擬比較器功能,P1口、P3口的增強下拉能力等等。4.1.1 AT89C2051主要性能AT89C2051是ATMEL公司生產(chǎn)的帶2K字節(jié)閃速可編程可擦除只讀存儲器(EEPROM)的8位單片機,它具有如下主要特性: 和MCS-51產(chǎn)品的兼容 2K字節(jié)可重編程閃速存儲器耐久性:1,000寫擦除周期2.7V6V的操作范圍 全靜態(tài)操作:0Hz24MHz兩級加密程序存儲器 1288位內(nèi)部RAM15根可編程I/O引線 兩個16位定時器/計數(shù)器六個中斷源 可編程串行UART通道直接LED驅(qū)動輸出 片內(nèi)模擬比較器低功耗空載和掉電方式 4.1.2 AT89C2051的內(nèi)部結(jié)構(gòu)AT89C2051是一帶有2K字節(jié)閃速可編程可擦除只讀存儲體(EEPROM)的低電壓,高性能8位CMOS微型計算機。如圖2所示。它采用ATMEL的高密非易失存儲技術(shù)制造并和工業(yè)標(biāo)準(zhǔn)MCS51指令集和引腳結(jié)構(gòu)兼容。通過在單塊芯片上組合通用的CPL1和閃速存儲器,ATMEL AT89C2051是一強勁的微型計算機,它對許多嵌入式控制應(yīng)用提供一高度靈活和成本低的解決辦法。 圖1 AT89C2051的內(nèi)部結(jié)構(gòu)圖 圖2 AT89C2051內(nèi)部示意圖此外,從AT89C2051內(nèi)部結(jié)構(gòu)圖也可看出,其內(nèi)部結(jié)構(gòu)與8051內(nèi)部結(jié)構(gòu)基本一致(除模擬比較器外),引腳RST、XTAL1、XTAL2的特性和外部連接電路也完全與51系列單片機相應(yīng)引腳一致,但P1口、P3口有其獨特之處4.1.3 AT89C2051的引腳說明AT89C2051是一個有20個引腳的芯片,引腳如圖1所示,與8051內(nèi)部結(jié)構(gòu)進行對比可發(fā)現(xiàn),AT89C2051減少了兩個對外端口(即P0、P2口),使它最大可能地減少了對外引腳,因而芯片尺寸有所減少。 AT89C2051芯片的20個引腳功能為: 1.Vcc:電源電壓。2. GND:地。 3. P1口:P1口是一8位雙向I/O口??谝_P1.2P1.7提供內(nèi)部上拉電阻。P1.0和P1.1要求外部上拉電阻。P1.0和P1.1還分別作為片內(nèi)精密模擬比較器的同相輸入(AIN0)和反相輸入(AIN1)。P1口輸出緩沖器可吸收20mA電流并能直接驅(qū)動LED顯示。當(dāng)P1口引腳寫入“1”時,其可用作輸入端。當(dāng)引腳P1.2P1.7用作輸入并被外部拉低時,它們將因內(nèi)部的上拉電阻而流出電流(IIL)。P1口還在閃速編程和程序校驗期間接收代碼數(shù)據(jù)。4. P3口:P3口的P3.0P3.5、P3.7是帶有內(nèi)部上拉電阻的七個雙向I/0引腳。P3.6用于固定輸入片內(nèi)比較器的輸出信號并且它作為一通用I/O引腳而不可訪問。P3口緩沖器可吸收20mA電流。當(dāng)P3口引腳寫入“1”時,它們被內(nèi)部上拉電阻拉高并可用作輸入端。用作輸入時,被外部拉低的P3口引腳將用上拉電阻而流出電流(IIL)。P3口還用于實現(xiàn)AT89C2051的各種功能,如下表1所示。P3口還接收一些用于閃速存儲器編程和程序校驗的控制信號。5. RST:復(fù)位輸入。RST一旦變成高電平,所有的I/O引腳就復(fù)位到“1”。當(dāng)振蕩器正在運行時,持續(xù)給出RST引腳兩個機器周期的高電平便可完成復(fù)位。每一個機器周期需12個振蕩器或時鐘周期。6. XTAL1:作為振蕩器反相放大器的輸入和內(nèi)部時鐘發(fā)生器的輸入。 7. XTAL2:作為振蕩器反相放大器的輸出。P3口引腳 功能P3.0RXD(串行輸入端口) P3.1TXD(串行輸出端口) P3.2INT0(外中斷0) P3.3INT1(外中斷1) P3.4 TO(定時器0外部輸入) P3.5T1(定時器1外部輸入) 表1 P3口的功能從上述引腳說明可看出,AT89C2051沒有提供外部擴展存儲器與I/O設(shè)備所需的地址、數(shù)據(jù)、控制信號,因此利用AT89C2051構(gòu)成的單片機應(yīng)用系統(tǒng)不能在AT89C2051之外擴展存儲器或I/O設(shè)備,也即AT89C2051本身即構(gòu)成了最小單片機系統(tǒng)。4.2 繼電器 繼電器是一種電子控制器件,它具有控制系統(tǒng)(又稱輸入回路)和被控制系統(tǒng)(又稱輸出回路),通常應(yīng)用于自動控制電路中,它實際上是用較小的電流去控制較大電流的一種“自動開關(guān)”。故在電路中起著自動調(diào)節(jié)、安全保護、轉(zhuǎn)換電路等作用。4.2.1、電磁繼電器的工作原理和特性電磁式繼電器一般由鐵芯、線圈、銜鐵、觸點簧片等組成的。只要在線圈兩端加上一定的電壓,線圈中就會流過一定的電流,從而產(chǎn)生電磁效應(yīng),銜鐵就會在電磁力吸引的作用下克服返回彈簧的拉力吸向鐵芯,從而帶動銜鐵的動觸點與靜觸點(常開觸點)吸合。當(dāng)線圈斷電后,電磁的吸力也隨之消失,銜鐵就會在彈簧的反作用力返回原來的位置,使動觸點與原來的靜觸點(常閉觸點)吸合。這樣吸合、釋放,從而達(dá)到了在電路中的導(dǎo)通、切斷的目的。對于繼電器的“常開、常閉”觸點,可以這樣來區(qū)分:繼電器線圈未通電時處于斷開狀態(tài)的靜觸點,稱為“常開觸點”;處于接通狀態(tài)的靜觸點稱為“常閉觸點”4.2.2、繼電器主要產(chǎn)品技術(shù)參數(shù) 1、額定工作電壓額定工作電壓是指繼電器正常工作時線圈所需要的電壓。根據(jù)繼電器的型號不同,可以是交流電壓,也可以是直流電壓。2、直流電阻直流電阻是指繼電器中線圈的直流電阻,可以通過萬能表測量。3、吸合電流吸合電流是指繼電器能夠產(chǎn)生吸合動作的最小電流。在正常使用時,給定的電流必須略大于吸合電流,這樣繼電器才能穩(wěn)定地工作。而對于線圈所加的工作電壓,一般不要超過額定工作電壓的1.5倍,否則會產(chǎn)生較大的電流而把線圈燒毀。4、釋放電流釋放電流是指繼電器產(chǎn)生釋放動作的最大電流。當(dāng)繼電器吸合狀態(tài)的電流減小到一定程度時,繼電器就會恢復(fù)到未通電的釋放狀態(tài)。這時的電流遠(yuǎn)遠(yuǎn)小于吸合電流。 5、觸點切換電壓和電流觸點切換電壓和電流是指繼電器允許加載的電壓和電流。它決定了繼電器能控制電壓和電流的大小,使用時不能超過此值,否則很容易損壞繼電器的觸點。4.2.3、繼電器的電符號和觸點形式 繼電器線圈在電路中用一個長方框符號表示,如果繼電器有兩個線圈,就畫兩個并列的長方框。同時在長方框內(nèi)或長方框旁標(biāo)上繼電器的文字符號“J”。繼電器的觸點有兩種表示方法:一種是把它們直接畫在長方框一側(cè),這種表示法較為直觀。另一種是按照電路連接的需要,把各個觸點分別畫到各自的控制電路中,通常在同一繼電器的觸點與線圈旁分別標(biāo)注上相同的文字符號,并將觸點組編上號碼,以示區(qū)別。繼電器的觸點有三種基本形式:1.動合型(H型)線圈不通電時兩觸點是斷開的,通電后,兩個觸點就閉合。以合字的拼音字頭“H”表示。2.動斷型(D型)線圈不通電時兩觸點是閉合的,通電后兩個觸點就斷開。用斷字的拼音字頭“D”表示。3.轉(zhuǎn)換型(Z型)這是觸點組型。這種觸點組共有三個觸點,即中間是動觸點,上下各一個靜觸點。線圈不通電時,動觸點和其中一個靜觸點斷開和另一個閉合,線圈通電后,動觸點就移動,使原來斷開的成閉合,原來閉合的成斷開狀態(tài),達(dá)到轉(zhuǎn)換的目的。這樣的觸點組稱為轉(zhuǎn)換觸點。用“轉(zhuǎn)”字的拼音字頭“z”表示。4.3數(shù)碼管數(shù)碼管是一種半導(dǎo)體發(fā)光器件,其基本單元是發(fā)光二極管。4.3.1、數(shù)碼管的分類數(shù)碼管按段數(shù)分為七段數(shù)碼管和八段數(shù)碼管,八段數(shù)碼管比七段數(shù)碼管多一個發(fā)光二極管單元(多一個小數(shù)點顯示);按能顯示多少個“8”可分為1位、2位、4位等等數(shù)碼管;按發(fā)光二極管單元連接方式分為共陽極數(shù)碼管和共陰極數(shù)碼管。共陽數(shù)碼管是指將所有發(fā)光二極管的陽極接到一起形成公共陽極(COM)的數(shù)碼管。共陽數(shù)碼管在應(yīng)用時應(yīng)將公共極COM接到+5V,當(dāng)某一字段發(fā)光二極管的陰極為低電平時,相應(yīng)字段就點亮。當(dāng)某一字段的陰極為高電平時,相應(yīng)字段就不亮。共陰數(shù)碼管是指將所有發(fā)光二極管的陰極接到一起形成公共陰極(COM)的數(shù)碼管。共陰數(shù)碼管在應(yīng)用時應(yīng)將公共極COM接到地線GND上,當(dāng)某一字段發(fā)光二極管的陽極為高電平時,相應(yīng)字段就點亮。當(dāng)某一字段的陽極為低電平時,相應(yīng)字段就不亮。4.3.2、數(shù)碼管的驅(qū)動方式 數(shù)碼管要正常顯示,就要用驅(qū)動電路來驅(qū)動數(shù)碼管的各個段碼,從而顯示出我們要的數(shù)字,因此根據(jù)數(shù)碼管的驅(qū)動方式的不同,可以分為靜態(tài)式和動態(tài)式兩類。 靜態(tài)顯示驅(qū)動:靜態(tài)驅(qū)動也稱直流驅(qū)動。靜態(tài)驅(qū)動是指每個數(shù)碼管的每一個段碼都由一個單片機的I/O端口進行驅(qū)動,或者使用如BCD碼二-十進制譯碼器譯碼進行驅(qū)動。靜態(tài)驅(qū)動的優(yōu)點是編程簡單,顯示亮度高,缺點是占用I/O端口多,如驅(qū)動5個數(shù)碼管靜態(tài)顯示則需要5840根I/O端口來驅(qū)動,要知道一個89S51單片機可用的I/O端口才32個呢:),實際應(yīng)用時必須增加譯碼驅(qū)動器進行驅(qū)動,增加了硬件電路的復(fù)雜性。 動態(tài)顯示驅(qū)動:數(shù)碼管動態(tài)顯示接口是單片機中應(yīng)用最為廣泛的一種顯示方式之一,動態(tài)驅(qū)動是將所有數(shù)碼管的8個顯示筆劃a,b,c,d,e,f,g,dp的同名端連在一起,另外為每個數(shù)碼管的公共極COM增加位選通控制電路,位選通由各自獨立的I/O線控制,當(dāng)單片機輸出字形碼時,所有數(shù)碼管都接收到相同的字形碼,但究竟是那個數(shù)碼管會顯示出字形,取決于單片機對位選通COM端電路的控制,所以我們只要將需要顯示的數(shù)碼管的選通控制打開,該位就顯示出字形,沒有選通的數(shù)碼管就不會亮。通過分時輪流控制各個數(shù)碼管的的COM端,就使各個數(shù)碼管輪流受控顯示,這就是動態(tài)驅(qū)動。在輪流顯示過程中,每位數(shù)碼管的點亮?xí)r間為12ms,由于人的視覺暫留現(xiàn)象及發(fā)光二極管的余輝效應(yīng),盡管實際上各位數(shù)碼管并非同時點亮,但只要掃描的速度足夠快,給人的印象就是一組穩(wěn)定的顯示數(shù)據(jù),不會有閃爍感,動態(tài)顯示的效果和靜態(tài)顯示是一樣的,能夠節(jié)省大量的I/O端口,而且功耗更低。5 軟件設(shè)計5.1 偽定義 SL EQU 30H ;SL存放秒的個位數(shù) SH EQU 3lH ;SH存放秒的十位數(shù) ML EQU 32H ;ML存放分的個位數(shù) MH EQU 33H ;MH存放分的十位數(shù) HL EQU 34H ;HL存放小時的個位數(shù) HH EQU 35H ;HH存放小時的十位數(shù) ; L0 EQU 36H ;L0L3:顯示數(shù)據(jù)存儲器 L1 EQU 37H L2 EQU 38H L3 EQU 39H DSPLYP EQU 3AH ;顯示數(shù)據(jù)指針(DISPLAYPOINT) PLYTS EQU 3BH ;顯示次數(shù)計數(shù)器(DISPLAYTIMES) ; LPLMOD BIT 39H ;低兩位顯示方式(LOWPLAYMOD) HPLMOD BIT 3AH ;高兩位顯示方式(HIGHPLAYMO

溫馨提示

  • 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. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論