版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、<p> 計算機控制技術與應用</p><p> ——基于AT89C51的電子時鐘設計</p><p> 院系:電氣工程與自動化學院</p><p> 專業(yè):電氣工程及其自動化</p><p> 學號 &l
2、t;/p><p><b> 目錄</b></p><p> 摘要……………………………………………………………………………………2</p><p> 第1章緒論……………………………………………………………………………3</p><p> 1.1研究背景……………………………………………………………………3</
3、p><p> 1.2目的與意義…………………………………………………………………3</p><p> 第2章電子鐘設計方案設計…………………………………………………………4</p><p> 2.設計方案………………………………………………………………………4</p><p> 2.1.1 計時方案……………………………………………………
4、…………4</p><p> 2.2.2 顯示方案………………………………………………………………4</p><p> 2.2.3系統(tǒng)運行流程…………………………………………………………4</p><p> 2.2.4單片機系統(tǒng)流程圖……………………………………………………5</p><p> 第3章硬件設計…………………………………
5、……………………………………5</p><p> 3.1主要器件及其簡介…………………………………………………………5</p><p> 1.AT89C51……………………………………………………………………5</p><p> 管腳說明…………………………………………………………………6</p><p> 2.6位數(shù)碼管………………
6、…………………………………………………7</p><p> 3.2硬件各部分設計……………………………………………………………8</p><p> 3.2.1 最小系統(tǒng)………………………………………………………………8</p><p> 3.2.2 LCD顯示電路…………………………………………………………8</p><p> 3.2
7、.3鍵盤輸入電路…………………………………………………………9</p><p> 3.3硬件總體設計………………………………………………………………9</p><p> 第4章仿真電路圖…………………………………………………………………10</p><p> 第5章結論…………………………………………………………………………10</p><
8、p> 參考文獻……………………………………………………………………………11</p><p> 附錄…………………………………………………………………………………12</p><p><b> 摘要</b></p><p> 在今天,電子技術獲得了飛速的發(fā)展,在其推動下,現(xiàn)代電子產品是滲透到了社會的各個領域,有力地推動了社會生產力
9、的發(fā)展和社會信息化程度的提高,同時也使現(xiàn)代電子產品性能進一步提高,產品更新?lián)Q代的節(jié)奏也越來越快。現(xiàn)代生活的人們非常的重視時間觀念,對于那些對時間把握非常嚴格和準確的人或事來說,時間的不準確會帶來非常大的麻煩,所以以數(shù)碼管為顯示器的時鐘比指針式的時鐘表現(xiàn)出了很大的優(yōu)勢。數(shù)碼管顯示的時間簡單明了而且讀數(shù)快、時間準確顯示到秒。而機械式的依賴于晶體震蕩器,可能會導致誤差。數(shù)字鐘是采用數(shù)字電路實現(xiàn)對“時”、“分”“秒”數(shù)字顯示的計時裝置。數(shù)字鐘的
10、精度、穩(wěn)定度遠遠超過老式機械鐘。</p><p> 在這次設計中,我們采用LED 數(shù)碼管顯示時、分、秒,以24 小時計時方式,根據(jù)數(shù)碼管動態(tài)顯示原理來進行顯示,用12MHz的晶振產生振蕩脈沖,定時器計數(shù)。在此次設計中,電路具有顯示時間的其本功能,還可以實現(xiàn)對時間的調整。數(shù)字鐘是其小巧,價格低廉,走時精度高,使用方便,功能多,便于集成化而受廣大消費</p><p> 關鍵詞: AT89
11、C51;電子鐘;計算機控制技術</p><p><b> 第1章緒論</b></p><p><b> 1.1研究背景</b></p><p> 時間對人們來說總是那么寶貴,工作的忙碌性和繁雜性容易使人忘記當前的時間。忘記了要做的事情,當事情不是很重要的時候,這種遺忘無傷大雅。但是,一旦重要事情,一時的耽誤可能釀成大
12、禍。目前,單片機正朝著高性能和多品種方向發(fā)展趨勢將是進一步向著CMOS化、低功耗、小體積、大容量、高性能、低價格和外圍電路內裝化等幾個方面發(fā)展。下面是單片機的主要發(fā)展趨勢。單片機應用的重要意義還在于,它從根本上改變了傳統(tǒng)的控制系統(tǒng)設計思想和設計方法。從前必須由模擬電路或數(shù)字電路實現(xiàn)的大部分功能,現(xiàn)在已能用單片機通過軟件方法來實現(xiàn)了。這種軟件代替硬件的控制技術也稱為微控制技術,是傳統(tǒng)控制技術的一次革命。單片機模塊中最常見的是數(shù)字鐘,數(shù)字鐘
13、是一種用數(shù)字電路技術實現(xiàn)時、分、秒計時的裝置,與機械式時鐘相比具有更高的準確性和直觀性,且無機械裝置,具有更更長的使用壽命,因此得到了廣泛的使用。數(shù)字鐘已成為人們日常生活中:必不可少的必需品,廣泛用于個人家庭以及車站、碼頭、劇場、辦公室等公共場所,給人們的生活、學習、工作、娛樂帶來極大的方便。由于數(shù)字集成電路技術的發(fā)展和采用了先進的石英技術,使數(shù)字鐘具有走時準確、性能穩(wěn)定、攜帶方便等優(yōu)</p><p><b
14、> 1.2目的與意義</b></p><p> 數(shù)字鐘是采用數(shù)字電路實現(xiàn)對時,分,秒數(shù)字顯示的計時裝置廣泛用于個人家庭,車站,碼頭辦公室等公共場所,成為人們日常生活中不可少的必需品,由于數(shù)字集成電路的發(fā)展和石英晶體振蕩器的廣泛應用,使得數(shù)字鐘的精度,遠遠超過老式鐘表,鐘表的數(shù)字化給人們生產生活帶來了極大的方便,而且大大地擴展了鐘表原先的報時功能。諸如定時自動報警、按時自動打鈴、時間程序自動控
15、制、定時廣播、自動起閉路燈、定時開關烘箱、通斷動力設備、甚至各種定時電氣的自動啟用等,所有這些,都是以鐘表數(shù)字化為基礎的。因此,研究數(shù)字鐘及擴大其應用,有著非?,F(xiàn)實的意義。</p><p> 第2章電子鐘設計方案設計</p><p><b> 2.設計方案</b></p><p> 單片機電子時鐘方案選擇主要涉及兩個方面:計時方案和顯示方
16、案。</p><p> 2.1.1 計時方案</p><p> 單片機電子時鐘計時有兩種方法:第一種是通過單片機內部的定時器/計數(shù)器,采用軟件編程來實現(xiàn)時鐘計時,這種實現(xiàn)的時鐘一般稱為軟時鐘,這種方法的硬件線路簡單,系統(tǒng)的功能一般與軟件設計相關,通常用在對時間精度要求不高的場合;第二種是采用專用的硬件時鐘芯片計時,這種實現(xiàn)的時鐘一般稱為硬時鐘。專用的時鐘芯片功能比較強大,除了自動實現(xiàn)基
17、本計時外,一般還具有日歷和閏年補償?shù)裙δ?,計時準確,軟件編程簡單,但硬件成本相對較高,通常用在對時鐘精度要求較高的場合。</p><p> 2.2.2 顯示方案</p><p> 對于電子時鐘而言,顯示是另一個重要的環(huán)節(jié)。顯示通常采用兩種方式:LED</p><p> 數(shù)碼管顯示和LCD液晶顯示。其中LED數(shù)碼管顯示亮度高,顯示內容清晢,根據(jù)具體的連接方式可分
18、為靜態(tài)顯示和動態(tài)顯示,在多個數(shù)碼管時一般采用動態(tài)顯示,動態(tài)顯示時須要占用CPU的大量時間來執(zhí)行動態(tài)顯示程序,顯示效果往往和顯示程序的執(zhí)行相關。LCD液晶顯示一般能顯示的信息多,顯示效果好,而且液晶顯示器一般都帶控制器,顯示過程由自帶的控制器控制,不須要CPU參與,但液晶顯示器造價相對較高。</p><p> 本實驗采用的是軟件編程來實現(xiàn)時鐘計時和LED數(shù)碼管顯示。</p><p> 2
19、.2.3系統(tǒng)運行流程</p><p> 程序首先進行初始化,在主程序的循環(huán)程序中首先調用數(shù)據(jù)處理程序,然后調用顯示程序,在判斷是否有按鍵按下。若有按鍵按下則轉到相應的功能程序執(zhí)行,沒有按鍵按下則調用時間程序。若沒到則循環(huán)執(zhí)行。計時中斷服務程序完成秒的計時及向分鐘、小時的進位和星期、年、月、日的進位。調時閃爍中斷服務程序用于被調單元的閃爍顯示。調時程序用于調整分鐘、小時、星期、日、月、年,主要由主函數(shù)組成通過對相
20、關子程序的調用,實現(xiàn)了對時間的設置和修改、LCD顯示數(shù)值等主要功能。相關的調整是靠對功能鍵的判斷來實現(xiàn)的。</p><p> 2.2.4單片機系統(tǒng)流程圖</p><p><b> 第3章硬件設計</b></p><p> 3.1主要器件及其介紹</p><p> 1. AT89C51單片機</p>
21、<p> 簡介:AT89C51是一種帶4K字節(jié) FLASH存儲器(FPEROM—Flash Programmable and Erasable Read Only Memory)的低電壓、高性能CMOS 8位微處理器,俗稱單片機。AT89C2051是一種帶2K字節(jié)閃存可編程可擦除只讀存儲器的單片機。單片機的可擦除只讀存儲器可以反復擦除1000次。該器件采用ATMEL高密度非易失存儲器制造技術制造,與工業(yè)標準的MCS-51指令
22、集和輸出管腳相兼容。由于將多功能8位CPU和閃速存儲器組合在單個芯片中,ATMEL的AT89C51是一種高效微控制器,AT89C2051是它的一種精簡版本。AT89C51單片機為很多嵌入式控制系統(tǒng)提供了一種靈活性高且價廉的方案。外形及引腳排列如圖所示。</p><p><b> 管腳說明</b></p><p><b> VCC:供電電壓</b&g
23、t;</p><p><b> GND:接地</b></p><p> P0口:P0口為一個8位漏級開路雙向I/O口,每腳可吸收8TTL門電流。</p><p> P0口的管腳第一次寫1時,被定義為高阻輸入。P0能夠用于外部程序數(shù)據(jù)存儲器,它可以被定義為數(shù)據(jù)/地址的低八位。在FIASH編程時,P0 口作為原碼輸入口,當FIASH進行校驗時
24、,P0輸出原碼,此時P0外部必須接上拉電阻。</p><p> P1口:P1口是一個內部提供上拉電阻的8位雙向I/O口,P1口緩沖器能接收輸出4TTL門電流。P1口管腳寫入1后,被內部上拉為高,可用作輸入,P1口被外部下拉為低電平時,將輸出電流,這是由于內部上拉的緣故。在FLASH編程和校驗時,P1口作為低八位地址接收。</p><p> P2口:P2口為一個內部上拉電阻的8位雙向I/
25、O口,P2口緩沖器可接收,輸出4個TTL門電流,當P2口被寫“1”時,其管腳被內部上拉電阻拉高,且作為輸入。并因此作為輸入時,P2口的管腳被外部拉低,將輸出電流。這是由于內部上拉的緣故。P2口當用于外部程序存儲器或16位地址外部數(shù)據(jù)存儲器進行存取時,P2口輸出地址的高八位。在給出地址“1”時,它利用內部上拉優(yōu)勢,當對外部八位地址數(shù)據(jù)存儲器進行讀寫時,P2口輸出其特殊功能寄存器的內容。P2口在FLASH編程和校驗時接收高八位地址信號和控制
26、信號。</p><p> RST:復位輸入。當振蕩器復位器件時,要保持RST腳兩個機器周期的高電平時間。</p><p> XTAL1:反向振蕩放大器的輸入及內部時鐘工作電路的輸入。</p><p> XTAL2:來自反向振蕩器的輸出。</p><p> 振蕩器特性:XTAL1和XTAL2分別為反向放大器的輸入和輸出。該反向放大器可以
27、配置為片內振蕩器。石晶振蕩和陶瓷振蕩均可采用。如采用外部時鐘源驅動器件,XTAL2應不接。有余輸入至內部時鐘信號要通過一個二分頻觸發(fā)器,因此對外部時鐘信號的脈寬無任何要求,但必須保證脈沖的高低電平要求的寬度。</p><p> 2. 6位顯示數(shù)碼管</p><p> 簡介:LED數(shù)碼管(LED Segment Displays)是由多個發(fā)光二極管封裝在一起組成“8”字型的器件,引線已在
28、內部連接完成,只需引出它們的各個筆劃,公共電極。led數(shù)碼管常用段數(shù)一般為7段有的另加一個小數(shù)點,還有一種是類似于3位“+1”型。位數(shù)有半位,1,2,3,4,5,6,8,10位等等,led數(shù)碼管根據(jù)LED的接法不同分為共陰和共陽兩類,了解LED的這些特性,對編程是很重要的,因為不同類型的數(shù)碼管,除了它們的硬件電路有差異外,編程方法也是不同的。圖2是共陰和共陽極數(shù)碼管的內部電路,它們的發(fā)光原理是一樣的,只是它們的電源極性不同而已。顏色有紅
29、,綠,藍,黃等幾種。led數(shù)碼管廣泛用于儀表,時鐘,車站,家電等場合。選用時要注意產品尺寸顏色,功耗,亮度,波長等。這是一個7段6位帶小數(shù)點數(shù)碼管,采用靜態(tài)驅動靜態(tài)顯示驅動,靜態(tài)驅動也稱直流驅動。靜態(tài)驅動是指每個數(shù)碼管的每一個段碼都由一個單片機的I/O端口進行驅動,或者使用如BCD碼二-十進制譯碼器譯碼進行驅動。靜態(tài)驅動的優(yōu)點是編程簡單,顯示亮度高,缺點是占用I/O端口多,如驅動5個數(shù)碼管靜態(tài)顯示則需要5×8=40根I/O端口
30、來驅動,要</p><p> 3.2硬件各部分設計</p><p> 3.2.1 最小系統(tǒng)</p><p> 復位時單片機的初始化操作,只要給RST引腳加上兩個機器周期以上的高電平信號,就可以使AT89C51單片機復位。本次采用的是12M晶振,按鈕復位電路。</p><p><b> 晶振電路如圖</b><
31、/p><p> 3.2.2 LCD顯示電路</p><p> 6位LCD顯示屏的段碼ABCDEFG和dp與單片機P0口相連,LCD顯示屏位選碼123456與單片機的P2口相連。</p><p> 3.2.3鍵盤輸入電路</p><p> 本次設計采用獨立鍵盤,鍵盤按下時,相應的I/O口電平由高變低,一次檢測按鍵是否被按下。3個獨立按鍵與單
32、片機P.10—P1.2口相連,分別控制秒,時,分加計數(shù)。</p><p><b> 3.3硬件總體設計</b></p><p> 根據(jù)電子鐘設計內容和要求,完成Protues電路的設計,如圖所示</p><p><b> 第4章仿真電路圖</b></p><p> 用Keil和Protues
33、進行仿真調試,仿真結果完全達到預期目的。</p><p><b> 第5章結論</b></p><p> 我在這一次數(shù)字電子鐘的設計過程中,很是受益匪淺。在設計過程中,從仿真電路的設計,在設計過程中,從仿真電路的設計,源程序的書寫和修改都遇到了不少問題,但在我們的共同努力下解決了,并且從中學到了不少知識。撰寫論文的過程也是專業(yè)知識的學習過程,它使我運用已有的專業(yè)基
34、礎知識,對其進行設計,分析和解決一個理論問題或實際問題,把知識轉化為能力的實際訓練。培養(yǎng)了我運用所學知識解決實際問題的能力。通過這次課程設計我發(fā)現(xiàn),只有理論水平提高了;才能夠將課本知識與實踐相整合,理論知識服務于教學實踐,以增強自己的動手能力。這個實驗十分有意義我獲得很深刻的經驗。通過這次課程設計,我們知道了理論和實際的距離,也知道了理論和實際想結合的重要性,也從中得知了很多書本上無法得知的知識。我們的學習不但要立足于書本,以解決理論和
35、實際教學中的實際問題為目的,還要以實踐相結合,理論問題即實踐課題,解決問題即課程研究,學生自己就是一個專家,通過自己的手來解決問題比用腦子解決</p><p> 問題更加深刻。學習就應該采取理論與實踐結合的方式,理論的問題,也就是實踐性的課題。這種做法既有助于完成理論知識的鞏固,又有助于帶動實踐,解決實際問題,加強我們的動手能力和解決問題的能力。</p><p><b> 參
36、考文獻</b></p><p> [1] 劉國榮.梁景凱.計算機控制技術與應用.機械工業(yè)出版社.第二版</p><p> [2] 謝維成.楊加國.單片機原理與應用.北京.清華大學出版社,第二版</p><p> [3] 顧德英,羅云林.計算機控制技術.北京.北京郵電大學出版社,2009</p><p> [4] 沙占友,孟
37、志永.單片機外圍電路設計.北京.電子工業(yè)出版社,2006.6</p><p><b> 附錄</b></p><p><b> C語言程序</b></p><p> #include<reg51.h> </p><p> #include<absacc.h> <
38、/p><p> #define uchar unsigned char </p><p> #define uint unsigned int </p><p> uchar code dispcode[]={0x3F,0x06,0x5B,0x4F,0x66,0x6D,0x7D,0x07,0x7F,0x6F}; </p><p> uc
39、har seconde=0; </p><p> uchar minite=0; </p><p> uchar hour=12; </p><p> uchar mstcnt=0; </p><p> sbit P1_0=P1^0; </p><p> sbit P1_1=P
40、1^1; </p><p> sbit P1_2=P1^2; </p><p> void delay(uchar k ); </p><p> void time_pro( ); </p><p> void display( ); <
41、/p><p> void keyscan( ); </p><p> void delay (uchar k) </p><p><b> { </b></p><p><b> uchar j; </b></p><p> while((
42、k--)!=0) </p><p> { for(j=0;j<125;j++) </p><p><b> {;} </b></p><p><b> } </b></p><p><b> } </b></p><p> v
43、oid time_pro( void) </p><p> { if(seconde==60) </p><p> { seconde=0;</p><p> minite++; </p><p> if( minite==60) </p><p&g
44、t; { minite=0; </p><p><b> hour++; </b></p><p> if(hour==24) </p><p> { hour=0; } </p><p><b> } </b></p><p><b
45、> }</b></p><p><b> } </b></p><p> void display() </p><p><b> { </b></p><p><b> P2=0xfe; </b></p><p&
46、gt; P0=dispcode[hour/10]; </p><p> delay(1); </p><p><b> P2=0xfd; </b></p><p> P0=(dispcode[(hour%10)])|0X80; </p><p> delay(1);
47、 </p><p><b> P2=0xfb; </b></p><p> P0=dispcode[minite/10]; </p><p> delay(1); </p><p><b> P2=0xf7; </b></p><p>
48、P0=(dispcode[minite%10])|0X80; </p><p> delay(1); </p><p><b> P2=0xef; </b></p><p> P0=dispcode[seconde/10];</p><p> delay(1); </p&
49、gt;<p><b> P2=0xdf; </b></p><p> P0=dispcode[seconde%10]; </p><p> delay(1); </p><p><b> } </b></p><p> void keysca
50、n (void) </p><p><b> { </b></p><p> if(P1_0==0) </p><p> { delay(100); </p><p> if(P1_0==0) </p><p><b> { <
51、;/b></p><p> seconde++; </p><p> if(seconde==60) </p><p> {seconde=0; }</p><p><b> } </b></p><p><b> } </b></p><
52、p> if(P1_1==0) </p><p> { delay(100); </p><p> if(P1_1==0) </p><p> { hour++; </p><p> if(hour==24) </p><p> {hour=0;} </
53、p><p><b> } </b></p><p><b> } </b></p><p> if(P1_2==0) </p><p> { delay(100); </p><p> if(P1_2==0) </p>
54、<p> { minite++; </p><p> if(minite==60) </p><p> { minite=0; } </p><p><b> } </b></p><p><b> } </b></p><p><b>
55、 } </b></p><p> void timer0(void) interrupt 1 using 0 </p><p><b> { </b></p><p> TH0=0x3c; </p><p> TL0=0xb0; </p><p> TMOD =
56、0x01; </p><p> mstcnt++; </p><p> if(mstcnt==20) </p><p> { seconde++; </p><p> mstcnt=0; </p><p> }} </p><p> void mai
57、n(void) </p><p> { P1=0xff; </p><p> TMOD =0x01; </p><p> TH0=0x3c; </p><p> TL0=0xb0; </p><p><b> EA=1; </
58、b></p><p><b> ET0=1; </b></p><p><b> TR0=1; </b></p><p> while (1) </p><p> { keyscan( ); </p><p> time_pro( ); </
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 計算機控制課程設計--電子時鐘軟件設計
- 基于單片機at89c51的電子時鐘的課程設計
- 基于at89c51單片機的電子時鐘設計
- 基于89c51單片機電子時鐘課程設計
- 基于at89c51的時鐘設計
- 畢業(yè)設計(論文)-基于at89c51單片機電子時鐘的設計
- 單片機課程設計_基于89c51的數(shù)字電子時鐘的設計
- 畢業(yè)論文-基于at89c51單片機電子時鐘的設計與實現(xiàn)(完稿)
- 計算機控制課程設計
- 基于at89c51數(shù)碼時鐘電路設計
- 計算機控制_課程設計-
- 計算機控制及其應用課程設計
- 基于at89c51的多功能lcd時鐘設計
- c語言課程設計(電子時鐘)
- 課程設計---基于單片機51的電子時鐘設計
- 基于單片機at89c51控制的led點陣屏顯示時鐘課程設計報告
- 課程設計--基于at89c51單片機控制步進電機
- 基于at89c52的電子時鐘設計
- c51單片機lcd電子時鐘課程設計
- 基于at89c51單片機的電機控制綜合課程設計
評論
0/150
提交評論