單片機數(shù)字時鐘畢業(yè)設(shè)計_第1頁
單片機數(shù)字時鐘畢業(yè)設(shè)計_第2頁
單片機數(shù)字時鐘畢業(yè)設(shè)計_第3頁
單片機數(shù)字時鐘畢業(yè)設(shè)計_第4頁
單片機數(shù)字時鐘畢業(yè)設(shè)計_第5頁
已閱讀5頁,還剩37頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、山東華宇職業(yè)技術(shù)學(xué)院山東華宇職業(yè)技術(shù)學(xué)院 高職畢業(yè)生畢業(yè)設(shè)計(論文)高職畢業(yè)生畢業(yè)設(shè)計(論文) 課題名稱 單片機數(shù)字時鐘設(shè)計 專業(yè) 機電一體化 班級 09 高職機電五班 學(xué)號 姓名 陳帥 指導(dǎo)教師 王愛嶺 畢畢業(yè)業(yè)設(shè)設(shè)計計(論論文文)任任務(wù)務(wù)書書 畢業(yè)設(shè)計(論文)題目畢業(yè)設(shè)計(論文)題目 單片機數(shù)字時鐘設(shè)計 專業(yè):專業(yè): 機電一體化 姓名:姓名: 陳帥 畢業(yè)設(shè)計(論文)工作起止時間:畢業(yè)設(shè)計(論文)工作起止時間: 2011.10.202011.10.202012.6.12012.6.1 畢業(yè)設(shè)計(論文)的內(nèi)容要求:畢業(yè)設(shè)計(論文)的內(nèi)容要求:設(shè)計一個電子產(chǎn)品,首先了解它能實現(xiàn)的功能,時 鐘系統(tǒng)

2、最基本的功能就是實現(xiàn)計時,在這里設(shè)計的數(shù)字電子時鐘,它能實現(xiàn)計時和校時 的功能,給電子鐘加上電自動計時,設(shè)計一個按鍵對時鐘進行復(fù)位和三個按鍵對時間進 行調(diào)整。 硬件設(shè)計很簡單,主要包括:單片機、按鍵電路、驅(qū)動顯示電路,以及 LED 顯示 器四個部分。單片機選用 AT89C51 芯片,它無須外擴程序存儲器,設(shè)計電路很簡單。 由于只用了四個按鍵,所以采用獨立式按鍵使設(shè)計更簡單。顯示時、分、秒加兩個分隔 符,采用 8 位的數(shù)碼管,用常用的 74LS244 來驅(qū)動 LED 數(shù)碼管顯示字符。 簡易數(shù)字時鐘可實現(xiàn)校時和整點報時功能,該軟件采用 C 語言來實現(xiàn),主要包括 主程序、鍵輸入程序、顯示程序、定時程

3、序和中斷程序等軟件模塊。把原程序加入原理 圖,做出電子鐘的仿真,以秒計數(shù)并顯示時、分、秒。其中秒和分為 60 進制,小時為 24 進制計數(shù)??赏ㄟ^按鍵實現(xiàn)時鐘復(fù)位和分、秒、時的校正。 指導(dǎo)教師(簽名):指導(dǎo)教師(簽名): 年年 月月 日日 畢業(yè)設(shè)計開題報告畢業(yè)設(shè)計開題報告 一、課題設(shè)計(論文)目的及意義 人類的生活包括:工作、學(xué)習(xí)、休息以及參與社會的多種實踐活動,環(huán)環(huán)有條理, 更加豐富多彩。應(yīng)該說時鐘的計時功能與人類的各種行為和活動有著密切的聯(lián)系,于是 時鐘的作用便體現(xiàn)出來,生活中有許多人,因為只顧工作而忘記時間,從而耽誤了重要 的安排或者計劃,造成不可挽回的損失,使之后悔莫及。我們要養(yǎng)成良好

4、的時間觀念, 就需要電子鐘時刻提醒我們。因此,電子鐘已成為人們?nèi)粘I钪斜夭豢缮?,它的?yīng)用 非常廣泛,應(yīng)用于家庭以及車站、碼頭、劇場、辦公室等公共場所,給人們的生活、學(xué) 習(xí)、工作、娛樂帶來極大的方便。 現(xiàn)在投入生產(chǎn)的大多是智能時鐘,它的功能很全面,但價格有點昂貴,大多數(shù)學(xué)生 或者經(jīng)濟條件較差的人,想要擁有它,都有點困難。因此,在這里設(shè)計一個較簡單的電 子鐘,它能完成計時和校時的功能。這個時鐘系統(tǒng)很簡單,投入生產(chǎn)的成本很低,因此, 它的價格比較便宜,對于學(xué)生很實用。 二、課題設(shè)計(論文)提綱 時鐘電路的核心是 AT89C51 單片機,其內(nèi)部帶有 2KB 的可反復(fù)擦寫的只讀 Flash 程序存儲器

5、和 128 bytes 的隨機存取數(shù)據(jù)存儲器(RAM),無須外擴程序存儲器。電腦 時鐘沒有大量的運算和暫存數(shù)據(jù),現(xiàn)有的 128B 片內(nèi) RAM 已能滿足要求,也不必外擴 片 RAM。系統(tǒng)配備 8 位 LED 數(shù)碼管顯示和 3 個獨立式按鍵,用 P0 口作為鍵盤接口電 路,P1 口和 P3 口作為段碼和位碼輸出口,并在字段碼輸出口接 74LS245 芯片,用該 芯片來驅(qū)動 LED 數(shù)碼管顯示。利用 P0.0、P0.1 和 P0.2 作為功能按鍵輸入口。 三、課題設(shè)計(論文)思路、方法及進度安排 (1)顯示方案 方案一:靜態(tài)顯示就是當(dāng) CPU 將要顯示的字或字段碼送到輸出口,顯示器就可以顯 示出所

6、要顯示的字符,如果 CPU 不去改寫它,它將一直保持下去;靜態(tài)顯示硬件開銷 大,電路復(fù)雜,信息刷新速度慢。 方案二:動態(tài)顯示則是一位一位地輪流點亮顯示器地各個位(掃描)。對于顯示器 的每一位而言,每隔一段時間點亮一次;動態(tài)顯示耗能較小,但編寫程序較復(fù)雜。動態(tài) 顯示硬件連接簡單,信息刷新速度快。 由于本次設(shè)計是對時間進行顯示,如采用靜態(tài)顯示,則所占用的 I/O 口較多,電路 較復(fù)雜,所以在此選擇的是方案二,采用動態(tài)顯示。 (2)鍵盤方案 方案一:獨立式鍵盤。獨立式鍵盤的各個按鍵相互獨立,每個按鍵獨立地與一根數(shù) 據(jù)輸入線(單片機并行接口或其他芯片的并行接口)連接。獨立式鍵盤配置靈活,軟件 結(jié)構(gòu)簡單

7、,但每個按鍵必須占用一根接口線,在按鍵數(shù)量不多時,接口線占用多。所以, 獨立式按鍵常用于按鍵數(shù)量不多的場合。 方案二:矩陣式鍵盤。矩陣式鍵盤采用的是行列式結(jié)構(gòu),按鍵設(shè)置在行列的交點上. (當(dāng)接口線數(shù)量為 8 時,可以將 4 根接口線定義為行線,另 4 根接口線定義為列線,形成 4*4 鍵盤,可以配置 16 個按鍵。) 由于本設(shè)計只用了四個按鍵,不需要采用矩陣式鍵盤,所以選用第一種方案,采用 獨立式鍵盤。 (3)計時方案 采用軟件控制: 利用單片機內(nèi)部的定時/計數(shù)器進行定時,配合軟件定時實現(xiàn)時、分、秒的計時。 該方案能夠使設(shè)計者,在設(shè)計的過程中容易實現(xiàn),且節(jié)省硬件成本,因此本系統(tǒng)將采用 軟件方法

8、實現(xiàn)計時。 方法及進度安排: 第一周到第二周:通過搜集資料,參考文獻,反復(fù)的硬件調(diào)試, 第三周到第四周:基本完成各模塊的性能要求。 第五周到第六周:在研究過程中系統(tǒng)的部分模塊屬電子系統(tǒng)中常用模塊的可以直接 采用,但需要結(jié)合連接電路進行適當(dāng)調(diào)試,以達(dá)到最佳效果。 四、課題設(shè)計(論文)參考文獻; 1.朱永金等主編,單片機應(yīng)用技術(shù) ,中國勞動社會保障出版社。 2.彭冬明.韋友春主編,單片機實驗教程 ,理工大學(xué)出版社。 3.朱家建主編,單片機原理及應(yīng)用,機械工業(yè)出版社。 4.胡漢才主編, 單片機原理及接口技術(shù) ,清華大學(xué)出版社。 5.張偉主編,單片機原理及應(yīng)用 ,機械工業(yè)出版社。 6.譚浩強.C 程序

9、設(shè)計M.北京:清華大學(xué)出版社,1999 7.陳娟.無刷直流電機的電梯門控制系統(tǒng)研究D.吉林:吉林大學(xué),2006 8.顧明.無刷直流電機控制系統(tǒng)設(shè)計D.大連:大連理工大學(xué),2006 9.楊帆.具有 PID 自整定功能的溫度控制器研究與實現(xiàn)D.大連:大連理工大學(xué), 2006 10.姚劍峰.基于 PWM 技術(shù)的電動機模擬器D.天津:天津大學(xué),2006 11.宋健,姜軍生,趙文亮,孫學(xué)巖.基于單片機的直流電機 PWM 調(diào)速系統(tǒng)J.農(nóng)業(yè) 化研究,2006 目目 錄錄 摘 要 .1 第 1 章 緒 論 .2 1.1 電子鐘的發(fā)展史.2 1.2 設(shè)計的目的與意義.2 1.3 設(shè)計的基本思路與主要內(nèi)容.3 第

10、 2 章 時鐘系統(tǒng)的整體設(shè)計 .4 2.1 系統(tǒng)功能要求.4 2.2 整體方案.4 第 3 章 硬件設(shè)計與分析 .6 3.1 硬件設(shè)計原理.6 3.2 各單元電路介紹.6 3.2.1 AT89C51 單片機介紹 .6 3.2.2 單片機最小應(yīng)用系統(tǒng) .6 3.2.3 顯示電路 .8 3.2.4 鍵盤及其接口 .9 3.3 系統(tǒng)原理圖.11 第四章 軟件設(shè)計 .12 4.1 主程序的設(shè)計.12 4.2 鍵輸入程序.13 4.3 顯示程序.14 4.4 延時程序.15 2.5 中斷程序.16 第 5 章 調(diào)試與運行 .19 5.1 電路仿真.19 5.2 調(diào)試和運行.20 第 6 章 結(jié) 論 .2

11、1 致 謝 .22 參考文獻 .23 附錄一 系統(tǒng)原理圖 .24 附錄二 元件清單 .25 附錄三 程序清單 .26 單片機數(shù)字時鐘設(shè)計 姓名: 陳帥 學(xué)號: 班級:09 高職機電五班 指導(dǎo)教師:王愛嶺 摘要:摘要:單片微型計算機簡稱單片機,它是把微型計算機的各個功能部件:中央處理器 CPU、隨機存取存儲器 RAM、只讀存儲器 ROM、I/O 接口、定時器/計數(shù)器以及串行通信 接口等待集成在一塊芯片上,構(gòu)成一個完整的微型計算機,故又把它稱為單片微型計算 機。 當(dāng)今信息科技高速發(fā)展,使用方便、低成本電子設(shè)備已逐步成為我們?nèi)粘I钪须?子產(chǎn)品的主力軍。用軟件代替硬件的電子設(shè)備能大大地節(jié)省成本,且有

12、利于資源的節(jié)約, 因此,以軟代硬的設(shè)計必將成為我們現(xiàn)代設(shè)計的主流。 本設(shè)計是利用 MCS-51 系列單片機內(nèi)部的定時器/計數(shù)器進行中數(shù)年定時,配合軟件 延時實現(xiàn)時、分、秒的計時。該方案節(jié)省硬件成本,且能夠使設(shè)計者在定時/計數(shù)器的 使用、中數(shù)年及程序設(shè)計方面得到鍛煉和提高,因此本系統(tǒng)將采用軟件方法實現(xiàn)計時。 關(guān)鍵詞關(guān)鍵詞: : 單片機 數(shù)碼管 程序設(shè)計 第第 1 章章 緒緒 論論 1.1 數(shù)字時鐘的發(fā)展史數(shù)字時鐘的發(fā)展史 電子鐘有著很長的歷史,從民國 19 年的電鐘,研制始於 60 年代中期的國內(nèi)電晶 體、半導(dǎo)體管鐘,到研制始於 70 年代末的石英電子鐘,再到今天我們所用的智能電子 鐘。以前的電

13、子鐘存在著很多缺點,其外觀體積龐大,在功能上有死擺、走時時間不長、 走時精確度不高等缺點。如今無論是外觀,還是在功能上,電子鐘都有了很大的改進。 雖然世界絕大多數(shù)鐘表都是中國制造,但鐘表對于國內(nèi)市場來說只是個小行業(yè), 2003 年總盤子不過才 100 多億,但不是沒有前景。近年來,市場在急劇膨脹。根據(jù)國 外的統(tǒng)計數(shù)據(jù)顯示,發(fā)達(dá)國家人均一生擁有手表 23 塊,發(fā)展中國家 12 塊,而目前中國 的城鎮(zhèn)人口人均擁有量不多于 6 塊,空間很大。比如彩電一般是一個家庭一臺,手表則 是每人一塊,但從銷售量來看,光 TCL 一家公司兩個月的彩電銷量可以接近 300 萬臺, 而我們手表每年總共才賣 200 多

14、萬只。所以絕對不是市場潛力不夠的問題,而是我們應(yīng) 該如何去做的問題。 1.2 設(shè)計的目的與意義設(shè)計的目的與意義 人類的生活包括:工作、學(xué)習(xí)、休息以及參與社會的多種實踐活動,環(huán)環(huán)有條理, 更加豐富多彩。應(yīng)該說時鐘的計時功能與人類的各種行為和活動有著密切的聯(lián)系,于是 時鐘的作用便體現(xiàn)出來,生活中有許多人,因為只顧工作而忘記時間,從而耽誤了重要 的安排或者計劃,造成不可挽回的損失,使之后悔莫及。我們要養(yǎng)成良好的時間觀念, 就需要電子鐘時刻提醒我們。因此,電子鐘已成為人們?nèi)粘I钪斜夭豢缮?,它的?yīng)用 非常廣泛,應(yīng)用于家庭以及車站、碼頭、劇場、辦公室等公共場所,給人們的生活、學(xué) 習(xí)、工作、娛樂帶來極大的

15、方便。 現(xiàn)在投入生產(chǎn)的大多是智能時鐘,它的功能很全面,但價格有點昂貴,大多數(shù)學(xué)生 或者經(jīng)濟條件較差的人,想要擁有它,都有點困難。因此,在這里設(shè)計一個較簡單的電 子鐘,它能完成計時和校時的功能。這個時鐘系統(tǒng)很簡單,投入生產(chǎn)的成本很低,因此, 它的價格比較便宜,對于學(xué)生很實用。 1.3 設(shè)計的基本思路與主要內(nèi)容設(shè)計的基本思路與主要內(nèi)容 設(shè)計一個電子產(chǎn)品,首先了解它能實現(xiàn)的功能,時鐘系統(tǒng)最基本的功能就是實現(xiàn)計 時,在這里設(shè)計的數(shù)字電子時鐘,它能實現(xiàn)計時和校時的功能,給電子鐘加上電自動計 時,設(shè)計一個按鍵對時鐘進行復(fù)位和三個按鍵對時間進行調(diào)整。 硬件設(shè)計很簡單,主要包括:單片機、按鍵電路、驅(qū)動顯示電路

16、,以及 LED 顯示 器四個部分。單片機選用 AT89C51 芯片,它無須外擴程序存儲器,設(shè)計電路很簡單。 由于只用了四個按鍵,所以采用獨立式按鍵使設(shè)計更簡單。顯示時、分、秒加兩個分隔 符,采用 8 位的數(shù)碼管,用常用的 74LS244 來驅(qū)動 LED 數(shù)碼管顯示字符。 簡易數(shù)字時鐘可實現(xiàn)校時和整點報時功能,該軟件采用 C 語言來實現(xiàn),主要包括 主程序、鍵輸入程序、顯示程序、定時程序和中斷程序等軟件模塊。把原程序加入原理 圖,做出電子鐘的仿真,以秒計數(shù)并顯示時、分、秒。其中秒和分為 60 進制,小時為 24 進制計數(shù)??赏ㄟ^按鍵實現(xiàn)時鐘復(fù)位和分、秒、時的校正。 第第 2 章章 簡易數(shù)字時鐘系統(tǒng)

17、的整體設(shè)計簡易數(shù)字時鐘系統(tǒng)的整體設(shè)計 2.1 系統(tǒng)功能要求系統(tǒng)功能要求 以單片機技術(shù)為核心,充分應(yīng)用各種外圍電路元器件,設(shè)計一個通過顯示器顯 示時間(時、分、秒)的電子鐘。要求: 1、上電時,時、分、秒顯示為00時、00分、00秒,并以秒為單位開始計時; 2、運行狀態(tài)下,按動控制按扭S-SET,對秒進行調(diào)整; 3、運行狀態(tài)下,按動控制按扭 M-SET,對分進行調(diào)整; 4、運行狀態(tài)下,按動控制按扭 H-SET,對小時進行調(diào)整。 5、當(dāng)數(shù)字時鐘運行到正點時,實現(xiàn)自動報時功能。 6、當(dāng)按下 T-SET 鍵是實現(xiàn)小時由 24 進制和 12 進制的相互轉(zhuǎn)換。 2.2 整體方案整體方案 電子鐘的電路圖主要

18、由單片機(AT89C51) 、鍵盤電路、驅(qū)動顯示電路和 LED 顯示器四部分組成,它主要實現(xiàn)時鐘的顯示,以及對時、分、秒進行調(diào)整,即實現(xiàn)調(diào)時 的功能。其數(shù)字鐘系統(tǒng)整體結(jié)構(gòu)如圖 2-1 所示。 七 段 數(shù) 碼 管 AT89C51 驅(qū) 動 LED 顯示器 位 選 按 鍵 圖圖 2-1 電子鐘系統(tǒng)整體結(jié)構(gòu)電子鐘系統(tǒng)整體結(jié)構(gòu) (1)顯示方案 方案一:靜態(tài)顯示就是當(dāng) CPU 將要顯示的字或字段碼送到輸出口,顯示器就可以顯 示出所要顯示的字符,如果 CPU 不去改寫它,它將一直保持下去;靜態(tài)顯示硬件開銷 大,電路復(fù)雜,信息刷新速度慢。 方案二:動態(tài)顯示則是一位一位地輪流點亮顯示器地各個位(掃描)。對于顯示

19、器 的每一位而言,每隔一段時間點亮一次;動態(tài)顯示耗能較小,但編寫程序較復(fù)雜。動態(tài) 顯示硬件連接簡單,信息刷新速度快。 由于本次設(shè)計是對時間進行顯示,如采用靜態(tài)顯示,則所占用的 I/O 口較多,電路 較復(fù)雜,所以在此選擇的是方案二,采用動態(tài)顯示。 (2)鍵盤方案 方案一:獨立式鍵盤。獨立式鍵盤的各個按鍵相互獨立,每個按鍵獨立地與一根數(shù) 據(jù)輸入線(單片機并行接口或其他芯片的并行接口)連接。獨立式鍵盤配置靈活,軟件 結(jié)構(gòu)簡單,但每個按鍵必須占用一根接口線,在按鍵數(shù)量不多時,接口線占用多。所以, 獨立式按鍵常用于按鍵數(shù)量不多的場合。 方案二:矩陣式鍵盤。矩陣式鍵盤采用的是行列式結(jié)構(gòu),按鍵設(shè)置在行列的交

20、點上. (當(dāng)接口線數(shù)量為 8 時,可以將 4 根接口線定義為行線,另 4 根接口線定義為列線,形成 4*4 鍵盤,可以配置 16 個按鍵。) 由于本設(shè)計只用了四個按鍵,不需要采用矩陣式鍵盤,所以選用第一種方案,采用 獨立式鍵盤。 (3)計時方案 采用軟件控制: 利用單片機內(nèi)部的定時/計數(shù)器進行定時,配合軟件定時實現(xiàn)時、分、秒的計時。 該方案能夠使設(shè)計者,在設(shè)計的過程中容易實現(xiàn),且節(jié)省硬件成本,因此本系統(tǒng)將采用 軟件方法實現(xiàn)計時。 第第 3 章章 硬件設(shè)計與分析硬件設(shè)計與分析 3.1 硬件設(shè)計原理硬件設(shè)計原理 時鐘電路的核心是 AT89C51 單片機,其內(nèi)部帶有 2KB 的可反復(fù)擦寫的只讀 Fl

21、ash 程序存儲器和 128 bytes 的隨機存取數(shù)據(jù)存儲器(RAM),無須外擴程序存儲器。電腦 時鐘沒有大量的運算和暫存數(shù)據(jù),現(xiàn)有的 128B 片內(nèi) RAM 已能滿足要求,也不必外擴 片 RAM。系統(tǒng)配備 8 位 LED 數(shù)碼管顯示和 3 個獨立式按鍵,用 P0 口作為鍵盤接口電 路,P1 口和 P3 口作為段碼和位碼輸出口,并在字段碼輸出口接 74LS245 芯片,用該 芯片來驅(qū)動 LED 數(shù)碼管顯示。利用 P0.0、P0.1 和 P0.2 作為功能按鍵輸入口。 3.2 各單元電路介紹各單元電路介紹 3.2.1AT89C51 單片機介紹 AT89C51 是一個低電壓,高性能 CMOS 8

22、 位單片機,片內(nèi)含 2k bytes 的可反復(fù) 擦寫的只讀 Flash 程序存儲器和 128 bytes 的隨機存取數(shù)據(jù)存儲器(RAM),器件采用 ATMEL 公司的高密度、非易失性存儲技術(shù)生產(chǎn),兼容標(biāo)準(zhǔn) MCS51 指令系統(tǒng),片內(nèi) 置通用 8 位中央處理器和 Flash 存儲單元,所以說 AT89C51 是一個功能強大的單片機。 AT89C51 是一個低功耗高性能單片機,它有 40 個引腳,32 個外部雙向輸入/輸出 (I/O)端口,同時內(nèi)含 2 個外中斷口,2 個 16 位可編程定時計數(shù)器,2 個全雙工串行通 信口,AT89C51 可以按照常規(guī)方法進行編程,也可以在線編程。其將通用的微處理

23、器 和 Flash 存儲器結(jié)合在一起,特別是可反復(fù)擦寫的 Flash 存儲器可有效地降低開發(fā)成本。 同時 AT89C51 的時鐘頻率可以為零,即具備可用軟件設(shè)置的睡眠省電功能,系統(tǒng) 的喚醒方式有 RAM、定時/計數(shù)器、串行口和外中斷口,系統(tǒng)喚醒后即進入繼續(xù)工作狀 態(tài)。省電模式中,片內(nèi) RAM 將被凍結(jié),時鐘停止振蕩,所有功能停止工作,直至系統(tǒng) 被硬件復(fù)位方可繼續(xù)運行。 3.2.2 單片機最小應(yīng)用系統(tǒng) 時鐘電路和復(fù)位電路是單片機最小應(yīng)用系統(tǒng)中必不可少的。 單片機時鐘電路圖,如圖 3-1 所示:XTAL1 和 XTAL2 分別為反向放大器的輸入和 輸出。該反向放大器可以配置為片內(nèi)振蕩器。石晶振蕩和

24、陶瓷振蕩均可采用。如采用外 部時鐘源驅(qū)動器件,XTAL2 應(yīng)不接。有余輸入至內(nèi)部時鐘信號要通過一個二分頻觸發(fā) 器,因此對外部時鐘信號的脈寬無任何要求,但必須保證脈沖的高低電平要求的寬度。 圖 3-1 單片機時鐘電路圖 復(fù)位是使單片機或系統(tǒng)中的其他部件處于某種確定的初始狀態(tài)。單片機的工作就是 從復(fù)位開始的,當(dāng)在單片機的 RST 引腳引入高電平并保持 2 個機器周期時,單片機內(nèi) 部就執(zhí)復(fù)位操作(若該引腳持續(xù)保持高電平,單片機就處于循環(huán)復(fù)位狀態(tài)) 。 實際應(yīng)用中,復(fù)位操作有兩種基本的形式:一種是上電復(fù)位,另一種是上電與按鍵 均有效的復(fù)位。由于本次設(shè)計采用的是上電復(fù)位,所以這里只介紹上電復(fù)位,如下圖

25、3-3 所示: 圖圖 3-3 上電復(fù)位電路上電復(fù)位電路 上電復(fù)位要求接通電源后,單片機自動實現(xiàn)復(fù)位操作。常用的上電復(fù)位如上圖所示。 上電瞬間 RST 引腳獲得高電平,隨著電容 C1 的充電,RST 引腳的高電平將逐漸下降。 3.2.3 顯示電路 一、七段 LED 顯示器的原理 顯示器是單片機應(yīng)用系統(tǒng)常用的設(shè)備,包括 LED、LCD 等。LED 顯示器由若干個 發(fā)光二極管組成。七段 LED 通常構(gòu)成字型“8”,還有一個發(fā)光二極管用來顯示小數(shù)點。 每段 LED 分別引出一個電極,電極的名為 a、b、c、d、e、d、g、dp,其中 dp 是小數(shù) 點段的引出電極。當(dāng)發(fā)光二極管導(dǎo)通時,相應(yīng)的一個筆畫或一

26、個點就發(fā)光??刂葡鄳?yīng)的 二極管導(dǎo)通,就能顯示出對應(yīng)字符。 說明:在該設(shè)計中,沒有用到電極(dp) ,而是用單位的數(shù)碼管來顯示分隔符,其 七段 LED 顯示器如圖 3-4 所示 圖 3-4 七段 LED 顯示器 二、動態(tài)顯示 本設(shè)計共用了八位 LED 顯示器,因此采用動態(tài)顯示方式。所謂動態(tài)顯示就是一位 一位的輪流點亮顯示器的各個位。對于顯示器的每一位而言,每隔一段時間點亮一次。 雖然在同一時刻只有一位顯示器在工作,但由于人眼的視覺暫留效應(yīng)和發(fā)光二極管熄滅 時的余暉,我們看到的卻是多個字符“同時“顯示。顯示器亮度既與點亮?xí)r的導(dǎo)通電流有 關(guān),也與點亮?xí)r間長短和時間間隔有關(guān)。 顯示器的位數(shù)不大于 8

27、位,則控制顯示器公共極電位只需要一個 I/O 接口,稱為掃 描口或字位口,控制各位 LED 顯示器所顯示的字型也需要一個 8 位接口,稱為段數(shù)據(jù) 口或字型口。圖 3-5 為驅(qū)動顯示電路框圖。 圖 3-4 驅(qū)動顯示電路框圖 74LS244 是我們常用的芯片,用來驅(qū)動 led 或者其他的設(shè)備 當(dāng) 8051 單片機的 P1 口總線負(fù)載達(dá)到或超過 P1 最大負(fù)載能力時,必須接入 74LS244 等總線驅(qū)動器。 當(dāng)片選端/CE 低電平有效時,DIR=“0”,信號由 B 向 A 傳輸;(接收) 3.2.4 鍵盤及其接口 鍵盤是由若干個按鍵組成的,它是單片機最簡單的輸入設(shè)備。通過鍵盤輸入數(shù)據(jù)或 命令,就可實

28、現(xiàn)簡單的人機對話。 一、按鍵的抖動現(xiàn)象 按鍵就是一個簡單的開關(guān)。當(dāng)按鍵按下時,相當(dāng)于開關(guān)閉合;當(dāng)按鍵松開時,相當(dāng) 于開關(guān)斷開。按鍵在閉合和斷開時,觸點會存在抖動現(xiàn)象。按鍵抖動時間一般為 5ms10ms,抖動可能造成一次按鍵的多次處理問題。應(yīng)采取措施消除抖動的影響。消 除的方法很多,本設(shè)計采用軟件延時的方法來消除抖動。當(dāng)單片機檢測到有按鍵按下時 先定時,然后再檢測按鍵的狀態(tài),若仍是閉合狀態(tài)則認(rèn)為真的有鍵按下。當(dāng)檢測到按鍵 釋放時,亦需要做同樣的處理。 二、按鍵電路 獨立式鍵盤的各個按鍵相互獨立,每個按鍵獨立地與一根數(shù)據(jù)輸入線(單片 機并行接口或其他芯片的并行接口)連接。獨立式鍵盤配置靈活,軟件結(jié)

29、構(gòu)簡單,但每 個按鍵必須占用一根接口線,在按鍵數(shù)量不多時,接口線占用多。所以,獨立式按鍵常 用于按鍵數(shù)量不多的場合。 該設(shè)計只用了三個按鍵,來實現(xiàn)功能控制。在運行狀態(tài)下,按動控制按扭S-SET, 可對秒進行調(diào)整;按動控制按扭M-SET,可對分進行調(diào)整;按動控制按扭H-SET,可對 時進行調(diào)整;因此采用獨立式鍵盤方式,設(shè)計起來比較簡單。如圖3-6所示 圖3-5 鍵盤電路 3.3 系統(tǒng)原理圖 AT89C51的P1口接入三個按鍵,對時、分、秒進行調(diào)整。P0口輸出字段碼,控制 要顯示的字符,外接74LS245芯片,驅(qū)動LED顯示。P3口輸出字位碼,去控制要顯示的 位,其原理圖如圖3-6所示。 A7A7

30、 A6A6 A5A5 A4A4 A3A3 A2A2 A1A1 A0A0 S7 B7 B6 B5 B4 B3 B2 B1 B0 S6 S5 S4 S3 S2 S1 S0 B0 B1 B2 B3 B4 B5 B6 B7 S0 S1 S2 S3 S4 S5 S6 S7 XTAL2 18 XTAL1 19 ALE 30 EA 31 PSEN 29 RST 9 P0.0/AD0 39 P0.1/AD1 38 P0.2/AD2 37 P0.3/AD3 36 P0.4/AD4 35 P0.5/AD5 34 P0.6/AD6 33 P0.7/AD7 32 P1.0 1 P1.1 2 P1.2 3 P1.3 4

31、 P1.4 5 P1.5 6 P1.6 7 P1.7 8 P3.0/RXD 10 P3.1/TXD 11 P3.2/INT0 12 P3.3/INT1 13 P3.4/T0 14 P3.7/RD 17 P3.6/WR 16 P3.5/T1 15 P2.7/A15 28 P2.0/A8 21 P2.1/A9 22 P2.2/A10 23 P2.3/A11 24 P2.4/A12 25 P2.5/A13 26 P2.6/A14 27 U1 AT89C51 S-SET M-SET H-SET A0 2 B0 18 A1 3 B1 17 A2 4 B2 16 A3 5 B3 15 A4 6 B4 14

32、 A5 7 B5 13 A6 8 B6 12 A7 9 B7 11 CE 19 AB/BA 1 U2 74LS245 圖 3-6 電子鐘原理圖 當(dāng)接入電源時,數(shù)字電子鐘以秒為單位開始計時。運行狀態(tài)下,按下控制按鍵 S- SET,對秒進行調(diào)整;按下 M-SET 調(diào)整分鐘;按下 H-SET 對小時進行調(diào)整。這樣通過 三個按鍵,分別對時、分、秒進行調(diào)整,從而實現(xiàn)調(diào)時。 第第 4 章章 軟件設(shè)計軟件設(shè)計 在軟件設(shè)計中,整個程序的主框架是以定時 1s 計算的方式來實現(xiàn)電子鐘。定時 1s 的程序段,使用動態(tài)顯示程序?qū)崿F(xiàn)延時,既完成了延時,也完成了數(shù)字的顯示。在計算 程序中,使對應(yīng)于時、分、秒的變化量按照

33、60 進制和 24 進制進行計算,動態(tài)顯示程序 直接引用這些變量,達(dá)到顯示的數(shù)字也隨之不斷變化,即完成了電子鐘的功能。 其軟件功能模塊主要有鍵輸入程序、中斷程序、顯示程序,以及延時程序。 需要說明的是,這里設(shè)計的是簡易的電子鐘,主要是用程序運行來計算時間,這樣 用程序來確定出 1s 的時間精度是很有限的,所以整個時鐘的精度不太高。 4.1 主程序的設(shè)計主程序的設(shè)計 初始化將時、分、秒各單元的內(nèi)容清空,置 T0 為計數(shù)器方式 1,分別給計數(shù)器的 高 8 位和低 8 位賦計數(shù)初值,啟動 T0 工作。鍵入一個按鍵,如執(zhí)行此動作,秒值加 1,否則重新鍵如按鍵。 主程序模塊:主程序流程圖,如圖 4-1

34、所示 初始化 鍵輸入 開始 鍵執(zhí)行 結(jié)束 圖圖 4-1 主程序流程圖主程序流程圖 4.2 鍵輸入程序鍵輸入程序 鍵輸入程序用于調(diào)整時間。以秒為例,按下按鍵 S-SET,判斷 S-SET 是否真的被 按下,若沒有鍵按下,轉(zhuǎn)到 A1 程序段,再次鍵入按鍵,重新判斷。若按鍵按下了,則 調(diào)用延時程序,消除抖動現(xiàn)象秒值加 1,當(dāng)秒值大于 60 時,秒清零,進行下一次計時, 同時分加一,并轉(zhuǎn)到 J0 顯示。此過程循環(huán)執(zhí)行,其程序流程圖如圖 4-2 所示: 顯示 S-SET 是否按下 否按下 秒值加 1 秒60 ? 清零 N 調(diào)用延時 Y Y N 圖 4-2 鍵輸入程序流程圖 A1:LCALL DISPLA

35、Y;調(diào)用延時程序 JNBS_SET,S1;判斷按鍵是否按下 JNBM_SET,S2 JNBH_SET,S3 LJMPA1 S1: LCALLDELAY;去抖動 JBS_SET,A1 INCSECOND;秒值加 1 MOVA,SECOND CJNEA,#60,J0;判斷是否加到 60 秒 MOVSECOND,#0 ;秒清 0 LJMPJ0 J0:JBS_SET,A1 LCALL DISPLAY ;調(diào)用顯示 SJMPJ0 4.3 顯示程序 顯示其時、分、秒的數(shù)值,和兩個分隔符。以顯示秒為例,當(dāng) P3.7 輸入高電 平時,秒的個位所對應(yīng)的字段碼點亮,顯示其秒的個位;當(dāng)秒有十位輸入時,P3.6 輸 入

36、高電平,秒所十位對應(yīng)的字段碼點亮,顯示其秒十位。其程序流程圖如圖 4-3 所示: 取字段碼 取字位碼 顯示秒個位 顯示秒十位 調(diào)用延時 圖 4-3 顯示程序流程圖 DISPLAY:MOVA,SECOND ;顯示秒 MOVB,#10 DIVAB CLRP3.6 MOVC A, A+DPTR ;取字段碼 MOVP0, A LCALLDELAY ;調(diào)用延時 SETBP3.6 ;顯示秒十位 MOVA,B CLRP3.7 MOVC A,A+DPTR ;取字段碼 MOVP0,A LCALL DELAY ; 調(diào)用延時,去抖動 SETBP3.7 ;顯示秒個位 CLRP3.5 4.4 延時程序 按鍵抖動時間一般

37、為 5ms10ms,因此延時 10ms,其流程圖如圖 4-4 所示: #10 送 R6 #250 送 R7 返回 (R6)=(R7) ? Y N 圖 4-4 延時程序流程圖 DELAY:MOVR6,#10 ;延時 10ms D1:MOVR7,#250 DJNZR7,$ DJNZR6,D1 RET 2.5 中斷程序 中斷程序主要用于控制顯示的字符。當(dāng)秒值大于 60 時,秒清零,重新計數(shù), 分值加 1,秒、分同時顯示;當(dāng)分值大于 60 時,分清零,重新計數(shù),小時加 1,秒、分、 時同時顯示,當(dāng)小時大于 23 時,一天的計時完畢,秒、分、時均清零,進行第二天的 計時。此任務(wù)循環(huán)執(zhí)行。其程序流程圖如圖

38、 4-5 所示: 秒加 1 秒59? 小時23? 分59? 秒清 0,分加 1 小時清 0 分清 0,時加 1 N Y Y Y N N 圖 4-4 中斷程序流程圖 DISPLAY: MOVA,SECOND ;顯示秒 MOVB,#10 DIVAB CLRP3.6 MOVC A, A+DPTR MOVP0, A LCALL DELAY ;調(diào)用延時 SETBP3.6 ;顯示秒的十位 MOVA,B CLRP3.7 MOVC A,A+DPTR MOVP0,A LCALL DELAY SETBP3.7 ;顯示秒的個位 CLRP3.5 MOVP0,#40H;顯示分隔符 LCALL DELAY SETBP3.

39、5 MOVA,MINUTE ;顯示分鐘 MOVB,#10 DIVAB CLRP3.3 MOVC A,A+DPTR MOVP0,A LCALL DELAY SETBP3.3 ;顯示分的十位 MOVA,B CLRP3.4 MOVC A,A+DPTR MOVP0,A LCALL DELAY SETBP3.4 ;顯示分個位 CLRP3.2 MOVP0,#40H;顯示分隔符 LCALL DELAY SETBP3.2 MOVA,HOUR;顯示小時 MOVB,#10 DIVAB CLRP3.0 MOVC A,A+DPTR MOVP0,A LCALL DELAY SETBP3.0 ;顯示時的十位 MOVA,B

40、 CLRP3.1 MOVC A,A+DPTR MOVP0,A LCALL DELAY SETBP3.1 ;顯示時的個位 RET 第第 5 章章 調(diào)試與運行調(diào)試與運行 5.1 電路仿真電路仿真 此設(shè)計的電路在單片機仿真軟件Proteus.Professional.7.1中進行仿真,仿真電路 如圖 5-1 所示: A7A7 A6A6 A5A5 A4A4 A3A3 A2A2 A1A1 A0A0 S7 B7 B6 B5 B4 B3 B2 B1 B0 S6 S5 S4 S3 S2 S1 S0 B0 B1 B2 B3 B4 B5 B6 B7 S0 S1 S2 S3 S4 S5 S6 S7 XTAL2 18

41、 XTAL1 19 ALE 30 EA 31 PSEN 29 RST 9 P0.0/AD0 39 P0.1/AD1 38 P0.2/AD2 37 P0.3/AD3 36 P0.4/AD4 35 P0.5/AD5 34 P0.6/AD6 33 P0.7/AD7 32 P1.0 1 P1.1 2 P1.2 3 P1.3 4 P1.4 5 P1.5 6 P1.6 7 P1.7 8 P3.0/RXD 10 P3.1/TXD 11 P3.2/INT0 12 P3.3/INT1 13 P3.4/T0 14 P3.7/RD 17 P3.6/WR 16 P3.5/T1 15 P2.7/A15 28 P2.0/

42、A8 21 P2.1/A9 22 P2.2/A10 23 P2.3/A11 24 P2.4/A12 25 P2.5/A13 26 P2.6/A14 27 U1 AT89C51 S-SET M-SET H-SET A0 2 B0 18 A1 3 B1 17 A2 4 B2 16 A3 5 B3 15 A4 6 B4 14 A5 7 B5 13 A6 8 B6 12 A7 9 B7 11 CE 19 AB/BA 1 U2 74LS245 圖 5-1 電子鐘仿真電路圖 5.2 調(diào)試和運行 在 KEIL (單片機匯編) C51 軟件中編寫好的程序,將程序放入單片機仿真軟件中, 結(jié)合硬件電路進行調(diào)試與運

43、行。 通過按鍵對時間進行調(diào)整。如顯示時間為 14-30-22,既是 14 點 30 分 22 秒,通 過以下調(diào)整則可實現(xiàn)。 (1)按動 S-SET 鍵,將秒調(diào)到 22; (2)按動 M-SET 鍵,將分調(diào)到 30; (3)按動 H-SET 鍵,將時調(diào)到 14。 則將時間調(diào)到了所要顯示的時間 14-30-22,通過此方法可將時間調(diào)整到任何 需要顯示的時間。 第第 6 章章 結(jié)結(jié) 論論 因為單片機的種類多,而型號雜,也是我們學(xué)習(xí)中的困難,所以就 MCS51 系列 的產(chǎn)品來說,就是一個典型的學(xué)習(xí)方法。對于類似匯編的單片機編程過程,也是一個十 分有趣的過程。為了更好的說明,我以上介紹先從應(yīng)用電路切入,

44、同時介紹它們的使用 方法,以便能快速掌握它們的應(yīng)用。 通過本次的課程設(shè)計,我學(xué)會了單片機的一般設(shè)計過程,通常都要進行系統(tǒng)擴展與 配置,因此,要完成一個單片機的設(shè)計工作,必須依次做到下述工作:1、硬件電路的 設(shè)計、組裝與調(diào)試;2、應(yīng)用軟件的編寫、調(diào)試;3、完整應(yīng)用軟件的調(diào)試、固化和脫機 運行。而在進行硬件系統(tǒng)設(shè)計時我們應(yīng)當(dāng)盡量做到:1、盡可能的選擇典型電路,并符 合單片機的常規(guī)使用方法;2、在充分滿足系統(tǒng)功能要求前提下,留余地以便于二次開 發(fā);3、硬件結(jié)構(gòu)設(shè)計應(yīng)與軟件設(shè)計方案一并考慮;4、整個系統(tǒng)相關(guān)器件要力求性能的 匹配;5、硬件上要有可靠性與抗干擾設(shè)計;6、充分考慮單片機的帶載驅(qū)動能力。所以

45、 我用單片機編寫了上面的程序,因為基礎(chǔ)知識學(xué)的不怎么好,如有錯誤之處,還望老師 理解,并加以批改。通過這次設(shè)計使我對單片機有了更深入的了解。培養(yǎng)了我的動手實 踐能力。 致致 謝謝 本文從擬定題目到定稿,經(jīng)歷了很長一段時間。在本論文完成之際,首先要向我的 導(dǎo)師王老師致以誠摯的謝意。在論文的寫作過程中,王老師給予我許許多多的幫助,王 老師不厭其煩地為我講解畢業(yè)設(shè)計中繁瑣的問題,并且多次提出寶貴意見,使我的畢業(yè) 設(shè)計能夠更完整,更充實。 同時,還要感謝三年中孜孜不倦的為我們講課的老師們,是他們毫無保留地將他們 的知識傳授給我們,才使得今天的我能夠順利的完成我的畢業(yè)設(shè)計,感謝山東華宇職業(yè) 技術(shù)學(xué)院,是

46、這里給我提供了良好的學(xué)習(xí)環(huán)境和生活環(huán)境,讓我的大學(xué)生活豐富多彩, 讓我對今后的生活更加充滿了信心。 另外,衷心感謝我的同窗同學(xué)們,在我畢業(yè)論文寫作中,與他們的探討交流使我受 益頗多;同時,他們也給了我很多無私的幫助和支持,我在此深表謝意! 最后,向我親愛的家人和朋友表示深深的謝意,他們給予我的愛、理解、關(guān)心和支 持是我不斷前進的動力。 “懼懷逸興思斗志,欲上青天攬日月。 ” 參考文獻參考文獻 1.朱永金等主編,單片機應(yīng)用技術(shù) ,中國勞動社會保障出版社。 2.彭冬明.韋友春主編,單片機實驗教程 ,理工大學(xué)出版社。 3.朱家建主編,單片機原理及應(yīng)用,機械工業(yè)出版社。 4.胡漢才主編, 單片機原理及

47、接口技術(shù) ,清華大學(xué)出版社。 5.張偉主編,單片機原理及應(yīng)用 ,機械工業(yè)出版社。 6.譚浩強.C 程序設(shè)計M.北京:清華大學(xué)出版社,1999 7.陳娟.無刷直流電機的電梯門控制系統(tǒng)研究D.吉林:吉林大學(xué),2006 8.顧明.無刷直流電機控制系統(tǒng)設(shè)計D.大連:大連理工大學(xué),2006 9.楊帆.具有 PID 自整定功能的溫度控制器研究與實現(xiàn)D.大連:大連理工大學(xué), 2006 10.姚劍峰.基于 PWM 技術(shù)的電動機模擬器D.天津:天津大學(xué),2006 11.宋健,姜軍生,趙文亮,孫學(xué)巖.基于單片機的直流電機 PWM 調(diào)速系統(tǒng)J.農(nóng)業(yè) 化研究,2006,1:102106 附錄一附錄一 系統(tǒng)原理圖系統(tǒng)原

48、理圖 A7A7 A6A6 A5A5 A4A4 A3A3 A2A2 A1A1 A0A0 S7 B7 B6 B5 B4 B3 B2 B1 B0 S6 S5 S4 S3 S2 S1 S0 B0 B1 B2 B3 B4 B5 B6 B7 S0 S1 S2 S3 S4 S5 S6 S7 XTAL2 18 XTAL1 19 ALE 30 EA 31 PSEN 29 RST 9 P0.0/AD0 39 P0.1/AD1 38 P0.2/AD2 37 P0.3/AD3 36 P0.4/AD4 35 P0.5/AD5 34 P0.6/AD6 33 P0.7/AD7 32 P1.0 1 P1.1 2 P1.2 3

49、 P1.3 4 P1.4 5 P1.5 6 P1.6 7 P1.7 8 P3.0/RXD 10 P3.1/TXD 11 P3.2/INT0 12 P3.3/INT1 13 P3.4/T0 14 P3.7/RD 17 P3.6/WR 16 P3.5/T1 15 P2.7/A15 28 P2.0/A8 21 P2.1/A9 22 P2.2/A10 23 P2.3/A11 24 P2.4/A12 25 P2.5/A13 26 P2.6/A14 27 U1 AT89C51 S-SET M-SET H-SET A0 2 B0 18 A1 3 B1 17 A2 4 B2 16 A3 5 B3 15 A4

50、6 B4 14 A5 7 B5 13 A6 8 B6 12 A7 9 B7 11 CE 19 AB/BA 1 U2 74LS245 附錄二附錄二 元件清單元件清單 序號序號名稱名稱型號規(guī)格型號規(guī)格數(shù)量數(shù)量 1單片機單片機AT89C511 片片 2譯碼驅(qū)動器譯碼驅(qū)動器74LS2451 片片 3LED 數(shù)碼管數(shù)碼管7SEG-MPX8-CC-BLUE1 個個 4按鍵按鍵BUTTON3 個個 5導(dǎo)線導(dǎo)線若干若干 附錄三附錄三 程序清單程序清單 S_SET BITP1.0;數(shù)字鐘秒控制位 M_SETBITP1.1;分鐘控制位 H_SET BITP1.2;小時控制位 SECONDEQU30H MINUTEEQU31H HOUR EQU32H TCNT EQU34H ORG00H SJMPSTART ORG0BH LJMPINT_T0 START: MOVDPTR,#TABLE MOVHOUR,#0;初始化 MOVMINUTE,#0 MOVSECOND,#0 MOV

溫馨提示

  • 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

提交評論