


版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、倒計時系統(tǒng)設(shè)計河南農(nóng)業(yè)職業(yè)學(xué)院 ??飘厴I(yè)設(shè)計(論文) 題 目 倒計時系統(tǒng)設(shè)計 學(xué)生姓名 專業(yè)班級 所 在 系 指導(dǎo)教師 倒計時系統(tǒng)設(shè)計摘 要:本論文針對倒計時系統(tǒng)的設(shè)計的需求,介紹了mcs-51單片機的部分基本原理,如51單片機的接口功能、中斷、定時器等等。倒計時系統(tǒng)需要用到鎖存器、矩陣鍵盤、led數(shù)碼顯示器等主要模塊,通過不同的模塊之間相互作用,完成倒計時的初步硬件結(jié)構(gòu)。對于倒計時器中的led數(shù)碼顯示器來說,我為了簡化線路、降低成本,采用以軟件為主的接口方法,即采用keil uvision3軟件程序進行譯碼。關(guān)鍵詞 : 倒計時器/單片機/矩陣鍵盤/keil uvision3/led數(shù)碼顯示器
2、 the design of countdown system abstract:this paper focuses on the needs of the countdown system design, introduced the mcs-51 mcu of some of the basic as the 51 single-chip interface functions, interrupt, timer and so on. countdown system needs to use latch, matrix keyboard, led digital display and
3、 other major modules, through interaction between different modules to complete the countdown to the initial hardware. the countdown device in the led digital display, in order to simplify the circuit, reduce costs, we adopt a software-based interface method, namely using keil uvision3 software prog
4、ram for decoding. keywords: counter-down,scm,matrix keyboard,keil uvision3,led digital display iiiiii目 錄中文摘要i英文摘要ii目 錄.iii第一章 引言1課題開發(fā)的作用及意義1發(fā)展方向2第二章 原理設(shè)計3設(shè)計任務(wù)與要求3方案設(shè)計與論證3系統(tǒng)框圖4第三章 器件的選擇及介紹5 單片機at89s515 主要功能特性5 at89s51的引腳說明6 單片機定時器的使用8 顯示器件選擇8第四章 硬件電路的設(shè)計10第五章 各部分電路介紹11 復(fù)位電路11 時鐘電路12 按鍵電路13 蜂鳴器電路14 數(shù)碼管
5、顯示電路14第六章 軟件設(shè)計與流程圖16倒計時器主程序流程圖16定時器0的中斷程序流程圖17定時器1的中斷程序流程圖18第七章 pcb制板圖及仿真圖20 pcb制板圖20 整體電路仿真圖以及仿真結(jié)果分析21第八章 安裝與調(diào)試23 電路安裝23 電路調(diào)試23 性能測試與分析23結(jié)束語24致 謝25參考文獻26附 錄272第一章 引言1.1 課題開發(fā)的作用及意義隨著社會的發(fā)展人們對時間的要求越來越精確,而倒計時的應(yīng)用也越來越廣泛比如;奧運會開幕式的倒計時,籃球比賽的倒計時器,還有爆破時用的倒計時器等等?,F(xiàn)在單片機的應(yīng)用在我們的生活中隨處可見,這體現(xiàn)了它的重要性與實用性。它從根本上改變了傳統(tǒng)的控制系
6、統(tǒng)設(shè)計思想和設(shè)計方法。從前必須由模擬電路或數(shù)字電路實現(xiàn)的大部分功能,現(xiàn)在已能用單片機通過軟件方法來實現(xiàn)了。這種軟件代替硬件的控制技術(shù)也稱為微控制技術(shù),是傳統(tǒng)控制技術(shù)的一次革命。本次設(shè)計的倒計時器就是采用的微控制計數(shù)的方法實現(xiàn)的。計時器在單片機模塊中是比較常見的的一個模塊,計時器是一種用數(shù)字電路技術(shù)實現(xiàn)計時的裝置,與機械式時鐘相比具有更高的準確性和直觀性,且無機械裝置,具有更更長的使用壽命,因此得到了廣泛的使用。本次設(shè)計的最大時間為365天,此次設(shè)計倒計時器為基礎(chǔ),還可以設(shè)計更多對日常生活密切相關(guān)的設(shè)備,諸如定時自動報警、按時自動打鈴、時間程序自動控制、定時廣播、自動起閉路燈、定時開關(guān)烘箱、通斷
7、動力設(shè)備、甚至各種定時電氣的自動啟用等,都是以計時器為基礎(chǔ)的。通過對基于單片機控制的倒計時器的設(shè)計的過程中,讓我對單片機的知識有一個初步解,在學(xué)習(xí)單片機基礎(chǔ)知識的同時,結(jié)合c語言學(xué)習(xí),實現(xiàn)一些簡單的功能的設(shè)計,做到了主動學(xué)習(xí)和探索。本設(shè)計不但節(jié)約成本,而且功能齊全,不但能實現(xiàn)倒計時器的功能,而且還能實現(xiàn)其他多種功能,如倒計時秒表、定時器等等。而且由于本次這個基于51單片機的365天倒計時器無論是硬件方面還是在軟件程序設(shè)計方面都比較簡單,所以還可以通過擴展完成其他的功能,而且功能的相互轉(zhuǎn)換也非常簡單。若作為一個部件生產(chǎn)產(chǎn)品,有很大的挖掘價值,也非常有吸引力。1.2 發(fā)展方向倒計時系統(tǒng)的任務(wù),就是
8、對某一設(shè)定日期進行倒數(shù),在顯示屏顯示當前距離設(shè)定日期的時間;廣泛應(yīng)用于重大的節(jié)日或活動,以增強人們的關(guān)切程度和緊迫感倒計時系統(tǒng)的開發(fā)在國內(nèi)起步于80年代初期,至今已得到廣泛的發(fā)展和應(yīng)用。期間,隨著新材料技術(shù)、電子傳感技術(shù)、數(shù)字通信技術(shù)、控制技術(shù)、微計算機技術(shù)、軟件技術(shù)和網(wǎng)絡(luò)技術(shù)的迅速發(fā)展,監(jiān)測系統(tǒng)還朝著網(wǎng)絡(luò)化、社會化、光纜傳輸、總線結(jié)構(gòu)等方面發(fā)展。而且隨著超大規(guī)模數(shù)字集成電路、單片機技術(shù)的飛速發(fā)展,利用單片機及其它外圍芯片實現(xiàn)對瓦斯的監(jiān)測成為一種可能,并且成為一種發(fā)展趨勢。它具有體積小、操作簡單、攜帶方便、功能較齊全等優(yōu)點,而且性能價格比也很高,應(yīng)用前景非常廣泛。第二章 原理設(shè)計2.1 設(shè)計任
9、務(wù)與要求本項目是由單片機接收小鍵盤設(shè)定倒計時時間,倒計時時間最大范圍是365天,由顯示模塊數(shù)碼管顯示剩余時間。顯示格式為 ,分別對應(yīng)天,時,分和秒,精確到1秒的整數(shù)倍。倒計時時間到,則由蜂鳴器發(fā)出報警聲。2.2 方案設(shè)計與論證近年來隨著計算機在社會領(lǐng)域的滲透,單片機的應(yīng)用正在不斷地走向深入,同時帶動傳統(tǒng)控制檢測日新月益更新?,F(xiàn)在,在許多領(lǐng)域中,定時器得到了廣泛的應(yīng)用,比如在體育比賽中的計時器;安全措施中的定時報警器;游戲中的倒計時;維持秩序的交通信號燈;紅路燈,交通控制器,鬧鐘等等??梢姷褂嫊r器在社會中的重要性。當然,設(shè)計倒計時器的方法很多,以下是兩個設(shè)計方案。方案一:基于at89s51單片機
10、的lcd液晶顯示模塊1602顯示的倒計時器。主要是以單片機來控制,用按鍵來設(shè)定倒計時初始時刻的值,lcd1602液晶作為顯示模塊來顯示剩余的時間。方案二:基于at89s51單片機的數(shù)碼管顯示模塊顯示的倒計時器。主要是以單片機來控制,用按鍵來設(shè)定倒計時初始時刻的值,數(shù)碼管作為顯示模塊來顯示剩余的時間。此電路對于倒計時器中的led數(shù)碼管示器來說,采用以軟件為主的接口方法,即不使用專門的硬件譯碼器,而采用軟件程序進行譯碼。方案比較:通過以上兩個方案,我們發(fā)現(xiàn),方案二總體比方案一好。首先方案一雖然硬件電路簡單,但造價較高,且在編寫程序?qū)崿F(xiàn)所要求的功能時較難,而方案二所用的顯示模塊是比較熟悉的數(shù)碼管,編
11、寫程序是相對容易,且電路造價不高,因此,綜合考慮之后決定采用方案二。2.3 系統(tǒng)框圖led數(shù)碼管倒計時器以at89s51單片機為核心,起著控制作用。系統(tǒng)包括九位數(shù)碼管顯示電路,按鍵電路,復(fù)位電路,晶振電路,時鐘電路以及蜂鳴器電路等組成。倒計時的總體框圖如下圖1-1所示:at89s51按鍵電路模塊復(fù)位電路晶振電路模塊數(shù)碼管顯示電路模塊蜂鈴器圖1-1 倒計時總體框圖 有圖1-1可以看出該系統(tǒng)的硬件部分設(shè)計是以單片機系統(tǒng)為核心,用于整個設(shè)計的數(shù)據(jù)處理及控制顯示電路,由蜂鈴器組成的報警電路的正常工作。在這里我們選用atmel公司生產(chǎn)的8位單片機at89s51,該種單片機與以往所采用的at89c51相比
12、新增加了很多功能,性能有了較大提升,片內(nèi)4k的flash存儲空間也能滿足我們設(shè)計的要求,價格較之a(chǎn)t89c51基本不變甚至更低。第三章 器件的選擇及介紹 單片機at89s51at89s51是一種低功耗高性能的8位單片機,片內(nèi)帶有一個4kb的flash在線可編擦除只讀存儲器,它采用了cmos工藝和atmel公司的高密度非易失性存儲器技術(shù),而且其輸出引腳和指令系統(tǒng)和51系列單片機兼容。片內(nèi)的存儲器允許在線重新編程或用常規(guī)的非易失性存儲器編程器來編程。同時已具有三級程序存儲器保密的性能。在眾多的51系列單片機中,要算atmel公司的at89s51更實用,因為它不僅和mcu-51系列單片機指令、管腳完
13、全兼容,而且它將通用cpu和在線可編程flash集成在一個芯片上。這種單片機對開發(fā)設(shè)備的要求很低,開發(fā)時間也大大縮短。寫入單片機的程序還可以加密,功能較之89c51更加強大,使用也更加靈活。 主要功能特性4kb的flash在線可編擦除只讀存儲器,擦寫可達1000次具有斷電標志pof 具有兩個數(shù)據(jù)指針dptr0和dptr1兼容mcs-51指令系統(tǒng) 32個雙向i/o口兩個16位可編程定時/計數(shù)器振蕩頻率033mhz1個串行中斷 128x8 bit內(nèi)部ram兩個外部中斷源 共6個中斷源可直接驅(qū)動led 包含3級程序鎖定位低功耗空閑和掉電模式 具有片內(nèi)看門狗定時器由上可知與at89c51相比,at89
14、s51具有更突出的優(yōu)點,主要表現(xiàn)在:新增加了在線可編程功能isp,在現(xiàn)場程序調(diào)試和修改更加方便靈活;數(shù)據(jù)指針增加到兩個,方便了對片外ram的訪問過程;新增加了片內(nèi)看門狗定時器wdt,提高了系統(tǒng)的抗干擾能力;增加了斷電標志;增加了掉電狀態(tài)下的中斷恢復(fù)模式。 at89s51的引腳說明at89s51是一個低功耗高性能單片機,40個引腳,32個外部雙向輸入/輸出(i/o)端口,同時內(nèi)含2個外中斷口,2個16位可編程定時計數(shù)器,2個全雙工串行通信口,at89s51可以按照常規(guī)方法進行編程,也可以在線編程。其將通用的微處理器和flash存儲器結(jié)合在一起,特別是可反復(fù)擦寫的flash存儲器可有效地降低開發(fā)成
15、本。圖3-1 at89s51引腳圖vcc(40腳):供電電壓。gnd(20腳):接地。p0口(32腳39腳):p0口為一個8位漏級開路雙向i/o口,每腳可吸收8ttl門電流。當p1口的管腳第一次寫“1”時,被定義為高阻輸入。p0能夠用于外部程序數(shù)據(jù)存儲器,它可以被定義為數(shù)據(jù)/地址的第八位。在fiash編程時,p0 口作為原碼輸入口,當fiash進行校驗時,p0輸出原碼,此時p0外部必須被拉高。p1口(1腳8腳):p1口是一個內(nèi)部提供上拉電阻的8位雙向i/o口,p1口緩沖器能接收輸出4ttl門電流。p1口管腳寫入“1”后,被內(nèi)部上拉為高,可用作輸入,p1口被外部下拉為低電平時,將輸出電流,這是由
16、于內(nèi)部上拉的緣故。在flash編程和校驗時,p1口作為第八位地址接收。p2口(21腳28腳):p2口為一個內(nèi)部上拉電阻的8位雙向i/o口,p2口緩沖器可接收,輸出4個ttl門電流,當p2口被寫“1”時,其管腳被內(nèi)部上拉電阻拉高,且作為輸入。并因此作為輸入時,p2口的管腳被外部拉低,將輸出電流。這是由于內(nèi)部上拉的緣故。p2口當用于外部程序存儲器或16位地址外部數(shù)據(jù)存儲器進行存取時,p2口輸出地址的高八位。在給出地址“1”時,它利用內(nèi)部上拉優(yōu)勢,當對外部八位地址數(shù)據(jù)存儲器進行讀寫時,p2口輸出其特殊功能寄存器的內(nèi)容。p2口在flash編程和校驗時接收高八位地址信號和控制信號。p3口(10腳17腳)
17、:p3口管腳是8個帶內(nèi)部上拉電阻的雙向i/o口,可接收輸出4個ttl門電流。當p3口寫入“1”后,它們被內(nèi)部上拉為高電平,并用作輸入。作為輸入,由于外部下拉為低電平,p3口將輸出電流(ill)這是由于上拉的緣故。p3口也可作為at89s51的一些特殊功能口,p3口管腳備選功能如下表所示:表3-1 p3口第二功能引 腳第 2 功 能rxd(串行口輸入端)txd(串行口輸出端)/int0(外部中斷0請求輸入端,低電平有效)/int1(外部中斷1請求輸入端,低電平有效)t0(定時器/計數(shù)器0計數(shù)脈沖輸入端) t1(定時器/計數(shù)器1計數(shù)脈沖輸入端)/wr(外部數(shù)據(jù)存儲器寫選通信號輸出端,低電平有效)
18、/rd(外部數(shù)據(jù)存儲器讀選通信號輸出端,低電平有效)p3口同時為閃爍編程和編程校驗接收一些控制信號。rst(9腳):復(fù)位輸入。當振蕩器復(fù)位器件時,要保持rst腳兩個機器周期的高電平時間。ale/prog(30腳):當訪問外部存儲器時,地址鎖存允許的輸出電平用于鎖存地址的地位字節(jié)。在flash編程期間,此引腳用于輸入編程脈沖。在平時,ale端以不變的頻率周期輸出正脈沖信號,此頻率為振蕩器頻率的1/6。因此它可用作對外部輸出的脈沖或用于定時目的。然而要注意的是:每當用作外部數(shù)據(jù)存儲器時,將跳過一個ale脈沖。如想禁止ale的輸出可在sfr8eh地址上置0。此時, ale只有在執(zhí)行movx,movc
19、指令是ale才起作用。另外,該引腳被略微拉高。如果微處理器在外部執(zhí)行狀態(tài)ale禁止,置位無效。 /psen(29腳):外部程序存儲器的選通信號。在由外部程序存儲器取指期間,每個機器周期兩次/psen有效。但在訪問外部數(shù)據(jù)存儲器時,這兩次有效的/psen信號將不出現(xiàn)。/ea/vpp(31腳):當/ea保持低電平時,則在此期間外部程序存儲器(0000h- ffffh),不管是否有內(nèi)部程序存儲器。注意加密方式1時,/ea將內(nèi)部鎖定為reset;當/ea端保持高電平時,此間內(nèi)部程序存儲器。在flash編程期間,此引腳也用于施加12v編程電源(vpp)。xtal1(19腳):反向振蕩放大器的輸入及內(nèi)部時
20、鐘工作電路的輸入。xtal2(18腳):來自反向振蕩器的輸出。 單片機定時器的使用本系統(tǒng)所用到的at89s52有3個16位的定時器,而本系統(tǒng)只用到了定時器0和定時器1,所使用的工作方式都是定時器工作方式1,方式1時16位計數(shù)結(jié)構(gòu)的工作方式,計數(shù)器由th0或th1的全部8位和tl0或tl1的全部8位構(gòu)成。使用工作方式1功能時,定時時間計算公式是:(65536-計數(shù)初值)*機器周期機器周期=晶振周期*12本系統(tǒng)所用到的定時器0的定時時間是1ms;定時器1的定時時間是10ms;而電路所用的晶振是12mhz,算得一個機器周期為1us,因此由以上的公式可知定時器0的初值tho是0xfc,tlo是0x18
21、;定時器1的初值th1是0xd8,tl1是0xf0 顯示器件選擇led數(shù)碼管由于其成本低、驅(qū)動電路簡單、配置靈活、與單片機接口簡單等諸都優(yōu)點,被廣泛應(yīng)用于單片機應(yīng)用系統(tǒng)中。因此我們選用led數(shù)碼管作為顯示器件。數(shù)碼管的工作原理如下:數(shù)碼管由8個led發(fā)光二極管組成,外形如圖3-3所示。ag和dp為8個發(fā)光二極管,其中ag用于顯示字符,dp用于顯示小數(shù)點。當發(fā)光二極管正向?qū)〞r,借著點亮每一段的led就可以顯示出數(shù)字。在數(shù)碼管中,若將二極管的陽極連在一起,稱為共陽極數(shù)碼管;而若將二極管的陰極連在一起,稱為共陰極數(shù)碼管,本設(shè)計采用的就是共陰極接法的數(shù)碼管。下圖是八段數(shù)碼管的引腳:圖3-3 led引
22、腳圖各段碼位的對應(yīng)關(guān)系如下表:表3-2 段碼位與顯示位對應(yīng)關(guān)系表段碼位d7d6d5d4d3d2d1d0顯示段dpgfedcba字型和對應(yīng)的共陰極段碼如下表: dec 47h查出顯示碼送p2口并調(diào)用顯示延時2ms選通個位,顯示碼表地址送dptr從70h取出顯示碼送累加器a顯示延時計數(shù)器47h等0么? dec 47h查出顯示碼送p2口并調(diào)用顯示延時2ms選通個位,顯示碼表地址送dptr從70h取出顯示碼送累加器a顯示延時計數(shù)器47h等0么?表3-3 十六進制數(shù)及空白字符與p的顯示段碼字型共陰極段碼字型共陰極段碼03fh96fh106ha77h25bhb7ch34fhc39h466hd5eh56dh
23、e79h67dhf71h707h空白00h87fhp73h注:(1)本表所列各字符的顯示段碼均為小數(shù)點不亮的情況;(2)空白字符即沒有任何顯示第四章 硬件電路的設(shè)計本設(shè)計分為硬件設(shè)計和軟件設(shè)計,這兩者相互結(jié)合,不可分離;從時間上看,硬件設(shè)計的絕大部分工作量是在最初階段,到后期往往還要做一些修改。只要技術(shù)準備充分,硬件設(shè)計的大返工時比較少的,軟件設(shè)計的任務(wù)貫徹始終,到中后期基本上都是軟件設(shè)計任務(wù),隨著集成電路技術(shù)的飛速發(fā)展,各種功能很強的芯片不斷出現(xiàn),是硬件電路的集成度越來越高,硬件設(shè)計的工作量在整個項目中所占的比重逐漸下降。為使應(yīng)硬件電路設(shè)計盡可能合理,應(yīng)注意以下幾個方面:(1)盡可能采用功能
24、強的芯片,以簡化電路,功能強的芯片可以代替若干普通芯片,隨著生產(chǎn)工藝的提高,新型芯片的價格不斷下降,并不一定比若干普通芯片的價格總和高。(2)留有設(shè)計余地。在設(shè)計硬件電路時,要考慮到將來修改擴展的方便。因為很少有一錘定音的電路設(shè)計,如果現(xiàn)在不留余地,將來可能要為一點小小修改或擴展而被迫進行全面返工。(3)程序空間,選用片內(nèi)程序空間足夠大的單片機,本設(shè)計采用at89c51單片機。(4)ram空間,at89c51內(nèi)部ram不多,當要增強軟件數(shù)據(jù)處理功能時,往往覺得不足。如果系統(tǒng)配置了外部ram,則建議多留一些空間。隨著軟件設(shè)計水平的提高,往往只要改變或增加軟件中的數(shù)據(jù)處理算法,就可以是系統(tǒng)功能提高
25、很多,而系統(tǒng)的硬件不必做任何更換就使系統(tǒng)升級換代。只要在硬件電路設(shè)計初期考慮到這一點,就應(yīng)該為系統(tǒng)將來升級足夠的ram空間,哪怕多設(shè)計一個ram得插座,暫不插芯片也好。(5)i/o端口;在樣機研制出來進行現(xiàn)場使用時,往往會發(fā)現(xiàn)一些被忽視的問題,而這些問題不是靠單純的軟件措施來解決的。如有些新的信號需要采集,就必須增加輸入檢測端:有些物理量需要控制,就必須增加輸出端。如果在硬件電路設(shè)計就預(yù)留出一些i/o端口,雖然當時空著沒用,但是需要用的時候就派上用場了。第五章 各部分電路介紹 復(fù)位電路復(fù)位是單片機的初始化操作,只需給at89s52的復(fù)位引腳rst加上大于2個機器周期(即24個時鐘振蕩周期)的高
26、電平就可得單片機復(fù)位,復(fù)位時,pc初始化為0000h,使單片機從out單元開始執(zhí)行程序。除了進入系統(tǒng)的正常初始化之外由于程序運行出錯或操作錯誤而使系統(tǒng)處于死鎖狀態(tài),為擺脫死鎖狀態(tài),也需按復(fù)位鍵使得rst腳為高電平,使單片機重新啟動。在系統(tǒng)中,有時會出現(xiàn)顯示不正常,也為了調(diào)試方便,我們需要設(shè)計一個復(fù)位電路,at89s52單片機復(fù)位電路共有上電復(fù)位、按鍵電平復(fù)位和按鍵脈沖復(fù)位。本系統(tǒng)是的復(fù)位電路主要完成系統(tǒng)的上電復(fù)位和系統(tǒng)在運行時用戶的按鍵復(fù)位功能。復(fù)位電路可由簡單的rc電路構(gòu)成,也可使用其它的相對復(fù)雜,但功能更完善的電路。本系統(tǒng)采用的電路如圖5-1所示。工作原理是:上電瞬間,rc電路充電,res
27、et引腳端出現(xiàn)正脈沖,只要reset保持10ms以上高電平,就能使單片機有效的復(fù)位。當時鐘頻率選用12mhz時,c取10uf,r取10k。上電自動復(fù)位電路由上電瞬間c與r構(gòu)成充電電路,reset端的電位與電源vcc相同,隨著充電電流的減少,reset的電位逐漸下降。圖中rc時間常數(shù)越大,上電時reset端保持高電平的時間越長,圖中這組參數(shù)足以保證復(fù)位操作。若復(fù)位電路失效,加電后cpu從一個隨機的狀態(tài)開始工作,系統(tǒng)就不能正常運行。圖中的按鍵s5的功能是按鍵復(fù)位,按下s5鍵時rst為高電平,只要保持10ms以上的高電平,就可以時單片機復(fù)位。按鍵復(fù)位用在系統(tǒng)運行時的復(fù)位,使系統(tǒng)重新運行。復(fù)位電路如下
28、圖所示。圖5-1 復(fù)位電路原理圖 時鐘電路時鐘是單片機的心臟,單片機各功能部件的運行都是以時鐘頻率為基準,有條不紊地一拍一拍地工作。因此,時鐘頻率直接影響單片機的速度,時鐘電路的質(zhì)量也直接影響單片機系統(tǒng)穩(wěn)定性。常用的時鐘電路有兩種方式,一種是內(nèi)部時鐘方式,另一種是外部時鐘方式。單片機必須在時鐘的驅(qū)動下才能工作。在單片機內(nèi)部有一個時鐘振蕩電路,只要外界一個振蕩源就能產(chǎn)生一定的時鐘信號送到單片機內(nèi)部的各個單元,決定單片機的工作速度。本系統(tǒng)使用的是內(nèi)部時鐘方式。時鐘電路如下圖5-2所示。圖5-2時鐘電路原理圖一般選用石英晶體振蕩器。此電路在加電大約延遲10ms后振蕩器起振,在xtal2引腳產(chǎn)生幅度為
29、3v左右的正弦波時鐘信號,其振蕩頻率主要由石英晶振的頻率確定。電路中兩個電容c1、c2的作用有兩個:一是幫助振蕩器起振;二是對振蕩器的頻率進行微調(diào)。本系統(tǒng)的c1、c2的值為30pf。單片機在工作時,有內(nèi)部振蕩器產(chǎn)生或由外直接輸入的送至內(nèi)部控制邏輯單元的時鐘信號的周期稱為時鐘周期。其大小是時鐘信號頻率的倒數(shù),f表示。圖5-2中的時鐘頻率為12mhz,即f=12mhz,則時鐘周期為1/12us。 按鍵電路本系統(tǒng)的按鍵電路的作用是能夠調(diào)整倒計時的初始值,倒計時是按天、時、分、秒順尋排列顯示的,用四個按鍵分別設(shè)定天、時、分、秒,所達到的效果是按一下對應(yīng)的鍵時,所對應(yīng)的值加一。在程序中用k4對應(yīng)天的設(shè)定
30、,k3對應(yīng)時的設(shè)定,k2對應(yīng)分的設(shè)定,k1對應(yīng)秒的設(shè)定。另外k1按鍵不但作為可以設(shè)定秒的初值,還可以起到暫停倒計時運行的作用;即當系統(tǒng)在運行時,按k1鍵,系統(tǒng)暫停,如果繼續(xù)按k1鍵,則秒的值增加,完成的是設(shè)定秒的功能。同樣,k4也有兩個功能。一個是設(shè)定天的初值,一個是起到開啟系統(tǒng)的作用,即當系統(tǒng)處于暫停時,按k4鍵,則系統(tǒng)開始運行,如果繼續(xù)按k4鍵,則完成的是設(shè)定天的初值的功能。按鍵電路如下圖5-3所示。圖5-3按鍵電路原理圖 蜂鳴器電路蜂鳴器電路是由一個有源蜂鳴器、一個電阻和一個開關(guān)三極管組成。此電路的作用是倒計時時間到零時,蜂鳴器發(fā)出報警聲。在本系統(tǒng)中,是利用單片機的p21口來控制,p21
31、為低電平時,三極管導(dǎo)通,蜂鳴器報警。電路如下圖5-4所示。圖5-4蜂鳴器電路原理圖 數(shù)碼管顯示電路顯示功能與硬件關(guān)系極大,當硬件固定后,如何在不引起操作者誤解的前提下提供盡可能豐富的信息,全靠軟件來解決。在這里我們使用的是8段數(shù)碼管顯示(包含小數(shù)點),通常在顯示上我們采用的方法一般包括兩種:一種是靜態(tài)顯示,另一種是動態(tài)顯示。其中靜態(tài)顯示的特點是顯示穩(wěn)定不閃爍,程序編寫簡單,但占用端口資源多,所耗得電能較大;動態(tài)顯示的特點是顯示穩(wěn)定性沒靜態(tài)好,程序編寫復(fù)雜,但是相對靜態(tài)顯示而言占用端口資源少。在本設(shè)計中,為了減少端口資源,降低電能消耗,采用的是動態(tài)顯示方法。本系統(tǒng)的倒計時時間的最大范圍是365天
32、,要求精確到秒,顯示格式是按天、時、分、秒的順序即。從格式可知數(shù)碼管顯示電路要用到9位數(shù)碼管??紤]到到數(shù)碼管的段和位比較多,本系統(tǒng)選著了兩個4位一體的共陽數(shù)碼管和一個一位的共陽數(shù)碼管。數(shù)碼管有段選和位選控制,在此電路中有9個位選,8個段選(每一個數(shù)碼管的段選進行并聯(lián))。分別用單片機的p3口和p20進行9個位的控制。而用單片機的p0口來控制段。電路如下圖5-5所示。 圖5-5數(shù)碼管顯示電路原理圖第六章 軟件設(shè)計與流程圖本系統(tǒng)中,是利用軟件和硬件相互結(jié)合,以實現(xiàn)電路功能。軟件在系統(tǒng)中起著舉足輕重的作用,利用程序?qū)τ布_到控制作用。因此下面說明軟件的實現(xiàn)。6.1 倒計時器主程序流程圖程序的的開始時初
33、始化數(shù)碼管的段選和位選,數(shù)碼管不顯示。程序中用到了兩個定時器,接下來先設(shè)定定時器0和定時器1的工作方式,并且給兩個定時器裝初值,定時器0的定時時間是1ms,用作掃描數(shù)碼管顯示,定時器1的定時時間是10ms,用作定時器時間的遞減。然后給定時器設(shè)定初值,開啟定時器0。最后進入死循環(huán)函數(shù),在循環(huán)函數(shù)中,對按鍵進行掃描,如果有鍵按下,執(zhí)行按鍵函數(shù),并檢查是否需要報警。如果沒有按鍵按下,則直接檢查是否需要報警。流程圖如下圖6-1所示: 開始初始化p0口和p3口,全置為高電平設(shè)定定時器0,1工作方式給定時器0,1設(shè)初值開啟定時器0設(shè)定倒計時的初值有按鍵按下?否是 是是執(zhí)行按鍵功能函數(shù)prockey();執(zhí)
34、行報警程序執(zhí)行報警程序圖6-1 倒計時器主程序流程圖6.2 定時器0的中斷程序流程圖定時器0的定時時間是1ms,用作掃描數(shù)碼管顯示,在定時器0開啟時,定時器0開始定時,此時主程序正常運行,當定時器0的定時時間到時,主程序不在執(zhí)行,開始進入中斷程序,在中斷程序中,對9位數(shù)碼管進行動態(tài)掃描。中斷程序執(zhí)行完后返回主程序。如圖6-2所示。執(zhí)行主程序執(zhí)行一條指令 定時器0有中斷請求?否是 是是取下一條指令保護現(xiàn)場和斷點定時器0中斷服務(wù)程序(完成數(shù)碼管各位的掃描)恢復(fù)現(xiàn)場返回圖6-2 定時器0的中斷程序流程圖6.3 定時器1的中斷程序流程圖定時器1的定時時間是10ms,用作是倒計時時間以秒來自減,在定時器
35、1開啟時,定時器1開始定時,此時主程序正常運行,當定時器0的定時時間到時,主程序不在執(zhí)行,開始進入中斷程序,在中斷程序中,設(shè)定倒計時的時間變化。中斷程序執(zhí)行完后返回主程序。如圖6-3所示。執(zhí)行一條指令 定時器1有中斷請求?否是 是是取下一條指令保護現(xiàn)場和斷點定時器1中斷服務(wù)程序(完成時間以秒為最小單位遞減)恢復(fù)現(xiàn)場返回執(zhí)行主程序圖6-3 定時器1的中斷程序流程圖第七章 pcb制板圖及仿真圖 pcb制板圖本系統(tǒng)把總電路圖分成兩個模塊來畫pcb,一個是最小系統(tǒng)模塊,另一個是顯示模塊。(1) 倒計時器最小系統(tǒng)模塊,如下圖7-1。圖7-1 倒計時器最小系統(tǒng)模塊(2) 倒計時器顯示模塊,如下圖7-2。圖
36、7-2 倒計時器顯示模塊 整體電路仿真圖以及仿真結(jié)果分析系統(tǒng)仿真用的是proteus軟件,可通過仿真顯示出所設(shè)計系統(tǒng)的功能,對于程序的調(diào)試等有很大的幫助。系統(tǒng)仿真時首先在使用keil c 譯碼器,把所寫的程序進行編譯,同時在仿真器里設(shè)置生成hex文件,編譯無錯誤進行proteus仿真。等所有的原件都連接完成后可以把keil c編譯生成的無錯誤文件加載到at89c51中,方法是,右鍵點中器件然后再用左鍵點擊,出來一個對話框在program file后選擇要添加的文件,文件要求必須是hex文件。然后可以點擊運行觀察現(xiàn)象,看與自己設(shè)置的是否符合,如果不相符再查找錯誤進行修改,一般的錯誤都是程序中的,
37、所以要認真的讀取程序的每一個部分。系統(tǒng)的仿真圖如下圖7-3所示。圖7-3 倒計時器仿真圖啟動proteus軟件的play按鈕,出現(xiàn)如上圖7-2所示,以上四個開關(guān)分別設(shè)定倒計時的天,時,分,秒的值。并且設(shè)定天的按鍵還可以開啟倒計時,設(shè)定秒的按鍵也可以暫停倒計時。當天,時,分,秒的值全為0時,發(fā)出報警聲。從仿真圖可知,本系統(tǒng)的程序已達到要求。在此電路系統(tǒng)的仿真中,應(yīng)該注意的問題有數(shù)碼管的minimum trigger time項設(shè)定的值要合適,此電路中設(shè)定為1us。還有就是在程序中數(shù)碼管的掃描時間要合適。以保證數(shù)碼管顯示穩(wěn)定,不閃爍。第八章 安裝與調(diào)試 電路安裝本系統(tǒng)考慮到數(shù)碼管的段選和位選比較多
38、,連線較復(fù)雜,如果用萬用表焊接,工作量大,因此采用覆銅板打印電路來焊接。方便簡潔。在安置元器件前先認真觀察印制電路板,是否有短路現(xiàn)象。再用萬用表測試電路的連線情況,以保證印制板的電氣連接完全正確。但在安裝元器件時,要認真對照pcb,元器件要一一圖中的位置放置。引腳不能放反。否則硬件電路將不會出結(jié)果。 電路調(diào)試在硬件調(diào)試時,先有萬用表檢查印制電路的焊接情況,檢查是否有虛焊,是否有短路。在檢查無誤之后通電檢查led數(shù)碼管的顯示。開始時,數(shù)碼管的亮度不夠理想。經(jīng)檢查知,是段選電阻(接p0口的限流電阻)太大。最后,換成470歐的電阻后,數(shù)碼管顯示正常。總體電路正常,達到題目的要求。 性能測試與分析按照
39、設(shè)計程序的分析,led數(shù)碼管的動態(tài)掃描的頻率是1000hz,在實際使用時完全沒有閃爍。在程序中,定時器10ms中斷一次,變量 sec100自增,中斷100次時,秒的顯示自減,用定時器來定時,準確。電路中的四個按鍵可以分別用來設(shè)定倒計時的天,時,分,秒。另外,設(shè)定天的按鍵還可以用來開啟倒計時,設(shè)定秒的按鍵還可以暫停倒計時。當數(shù)碼管的顯示全0時,蜂鳴器報警。系統(tǒng)由5v電源來驅(qū)動,經(jīng)過測是試與分析,此系統(tǒng)穩(wěn)定可用。結(jié)束語在設(shè)計制作365天倒計時器的過程中,我深切體會到,實踐是理論運用的最好檢驗。本次設(shè)計是對我三年所學(xué)知識的一次綜合性檢測和考驗,無論是動手能力還是理論知識運用能力都得到了提高,同時加深
40、了我對網(wǎng)絡(luò)資源認識,大大提高了查閱資料的能力和效率,使我有充足的時間投入到電路制作當中。本系統(tǒng)的制作主要應(yīng)用到了模擬電子技術(shù)、數(shù)字電子技術(shù)、單片機控制技術(shù)、電子工藝等多方面的知識。在硬件調(diào)試過程中,我也學(xué)會不少的東西,掌握一些調(diào)試方法。在設(shè)計仿真圖和編些程序中,對proteus和keil等軟件掌握的更加牢固,而且所設(shè)計的基于單片機的365天倒計時器,精確度高,達到了應(yīng)用要求。致 謝大學(xué)的學(xué)習(xí)即將結(jié)束,在此期間,我處于緊張的學(xué)習(xí)和生活當中。08級的電氣自動化技術(shù)專業(yè)是一個有著積極奮進,充分活力的集體。在這里,我感受到了濃厚的學(xué)習(xí)氣氛,接觸到了豐富的專業(yè)知識,逐漸培養(yǎng)了學(xué)習(xí)研究能力。借此機會,我要
41、衷心感謝我的指導(dǎo)老師楊瑞老師對我的教誨、關(guān)心和幫助。楊老師治學(xué)嚴謹,積極進取的工作作風(fēng)以及平易近人的性格給我留下了深刻的印象。本論文是在指導(dǎo)老師楊瑞老師的精心指導(dǎo)下完成的。在論文的研究過程中,楊老師在學(xué)習(xí)和生活中給予我熱情的關(guān)懷與幫助。在學(xué)習(xí)中,給我提供了一個寬松的學(xué)習(xí)環(huán)境,使我能充分發(fā)揮自己的思維和創(chuàng)造能力。從論文的選題,方案的制定以及論文的撰寫,都得到了楊老師的熱心幫助。在研究過程中,開闊了我的視野,為以后的學(xué)習(xí)、工作打下了堅實的基礎(chǔ)。同時 ,要感謝課題組的其他同學(xué),他們給予我無私的幫助和極大的幫助,共同攻克難關(guān)的經(jīng)歷將成為我美好的回憶。同時還要感謝大學(xué)三年來所有的老師,為我們打下電氣專業(yè)
42、知識的基礎(chǔ);然后還要感謝所有的同學(xué)們,正是因為有了大家的支持和鼓勵,此次畢業(yè)設(shè)計才會順利完成。在此,向曾經(jīng)幫助過我的同學(xué)表示感謝。最后,衷心的感謝電氣工程系各位老師幾年來對我諄諄不諱的教導(dǎo)與培養(yǎng),使得我順利完成學(xué)業(yè)。參考文獻1康華光 電子技術(shù)基礎(chǔ)數(shù)字部分(第五版).北京華中科技電子技術(shù)組 2007 2華成英 童詩白模擬電子技術(shù)基礎(chǔ)(第四版)北京清華大學(xué)電子學(xué)教研組2006 3李鳳霞 劉桂山 陳朔鷹 薛慶.c語言程序設(shè)計(第二版).北京. 北京理工大學(xué)出版社,2008. 4樓然苗 李光飛.單片機課程設(shè)計指導(dǎo). 北京.北京航空航天大學(xué)出版,2007 5康華光.電子技術(shù)基礎(chǔ)模擬部分m.第四版.北京:
43、高等教育出版社,.6閻石.數(shù)字電子技術(shù)基礎(chǔ)m.第四版.北京:高等教育出版社,.7ajmalgodil.能夠選擇快速或慢充的充電器j.電子設(shè)計技術(shù),.8胡燕燕,楊代華.基于單片機的智能充電器設(shè)計j.電子元器件應(yīng)用,.9先鋒工作室.單片機程序設(shè)計實例m.北京:清華大學(xué)出版社,.10華成英,童詩白.模擬電子技術(shù)基礎(chǔ)m.北京:高等教育出版社.11康華光,鄒壽彬.電子技術(shù)基礎(chǔ)數(shù)學(xué)部分m.北京:高等教育出版社.12milos d. ercegovac. tomas-lang. introduction to digital system. john wiley sonm.13彭榮.數(shù)字電子技術(shù)基礎(chǔ)m.武漢
44、:華中理工大學(xué)出版社.附 錄附錄1 倒計時器總原理圖附錄2 程序清單#include <>#include <>unsigned char data dis_digit;unsigned char key_s, key_v;unsigned char code dis_code11=0xc0,0xf9,0xa4,0xb0, 示有鍵按下,void proc_key() ea = 0; / 先關(guān)閉總中斷 if(key_v & 0x01) = 0) / k4按下的話條件滿足 if(tr1=0) tian-; tian+; tr1=1; if(tian >365)
45、 tian =0; dis_buf0 = dis_codetian / 100; /天的百位 dis_buf1 = dis_code(tian-(tian / 100)*100)/10; / 天的十位 dis_buf2 = dis_code(tian-(tian/100)*100)-(tian-(tian/100)*100)/10)*10&0x7f; / 天的個位加上小數(shù)點 else if(key_v & 0x02) = 0) / k3按下的話條件滿足 tr1=0; hour+; if(hour > 12) hour = 0; dis_buf3 = dis_codehou
46、r / 10; /時十位 dis_buf4 = (dis_codehour % 10&0x7f); / 時個位加上小數(shù)點 else if(key_v & 0x04) = 0) / k2按下的話條件滿足 tr1=0; min+; if(min >59) min = 0; dis_buf5 = dis_codemin / 10; /分十位 dis_buf6 = (dis_codemin % 10&0x7f); / 分個位加上小數(shù)點 else if(key_v & 0x08) = 0) / k3按下的話條件滿足 sec+;tr1=0; if(sec>59)
47、 sec = 0; dis_buf7 = dis_codesec / 10; / 秒十位 dis_buf8 = dis_codesec % 10; / 秒個位 ea = 1; /開啟總中斷void timer0() interrupt 1/ 定時器0中斷服務(wù)程序, 用于數(shù)碼管的動態(tài)掃描/ dis_index - 顯示索引, 用于標識當前顯示的數(shù)碼管和緩沖區(qū)的偏移量/ dis_digit - 位選通值, 傳送到p3口用于選通當前數(shù)碼管的數(shù)值, 如等于0xfe時,選通口數(shù)碼管 / dis_buf - 顯于緩沖區(qū)基地址 th0 = 0xfc; tl0 = 0x18; /再次給初值 w9=1; p3 = 0xff; / 先關(guān)閉所有數(shù)碼管 if( dis_index=8) p0 = dis_bufdis_index; w9=0; /第九位選通 dis_index+; else p0 = dis_bufdis_index; p3 = dis_digit; /剛開始時dis_digit為0xfe,所以是先從p3口的最低位開始掃描 dis
溫馨提示
- 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)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 電力備用資源優(yōu)化配置補充合同
- 家庭保險受益人變更及保險責(zé)任調(diào)整合同
- 《智慧養(yǎng)老的康復(fù)之路》課件
- 魔法肥皂實驗室:親子科學(xué)手工皂DIY活動
- 蕭宗六學(xué)校管理理論體系與實踐創(chuàng)新
- 醫(yī)學(xué)個人年度總結(jié)
- 《癌癥整合治療》課件
- 《急性敵敵畏中毒》課件
- 男性睪丸醫(yī)學(xué)科普
- 《T知識講解教程》課件
- 環(huán)境工程學(xué)復(fù)習(xí)資料大全不用再找了
- 常用急救藥品的劑量與用法課件
- 自動控制原理-復(fù)習(xí)題及答案
- SAP固定資產(chǎn)各種折舊方法配置及操作手冊
- 奧數(shù)舉一反三簡單推理
- 高中英語教師研修-羅馬建筑文化課件
- 貨物驗收單(模板)
- 滬科版七年級下學(xué)期數(shù)學(xué)競賽測試卷(含答案)
- 復(fù)旦大學(xué)大學(xué)生創(chuàng)業(yè)導(dǎo)論課件06創(chuàng)業(yè)的商業(yè)計劃書
- 醫(yī)療糾紛和解協(xié)議書(6篇)
- 農(nóng)村不動產(chǎn)權(quán)籍調(diào)查工作指南
評論
0/150
提交評論