




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、山東華宇職業(yè)技術學院山東華宇職業(yè)技術學院 高職畢業(yè)生畢業(yè)設計(論文)高職畢業(yè)生畢業(yè)設計(論文) 課題名稱 單片機數字時鐘設計 專業(yè) 機電一體化 班級 09 高職機電五班 學號 20092080502 姓名 陳帥 指導教師 王愛嶺 畢畢業(yè)業(yè)設設計計(論論文文)任任務務書書 畢業(yè)設計(論文)題目畢業(yè)設計(論文)題目 單片機數字時鐘設計 專業(yè):專業(yè): 機電一體化 姓名:姓名: 陳帥 畢業(yè)設計(論文)工作起止時間:畢業(yè)設計(論文)工作起止時間: 2011.10.202011.10.202012.6.12012.6.1 畢業(yè)設計(論文)的內容要求:畢業(yè)設計(論文)的內容要求:設計一個電子產品,首先了解它
2、能實現的功能,時 鐘系統(tǒng)最基本的功能就是實現計時,在這里設計的數字電子時鐘,它能實現計時和校時 的功能,給電子鐘加上電自動計時,設計一個按鍵對時鐘進行復位和三個按鍵對時間進 行調整。 硬件設計很簡單,主要包括:單片機、按鍵電路、驅動顯示電路,以及 led 顯示 器四個部分。單片機選用 at89c51 芯片,它無須外擴程序存儲器,設計電路很簡單。 由于只用了四個按鍵,所以采用獨立式按鍵使設計更簡單。顯示時、分、秒加兩個分隔 符,采用 8 位的數碼管,用常用的 74ls244 來驅動 led 數碼管顯示字符。 簡易數字時鐘可實現校時和整點報時功能,該軟件采用 c 語言來實現,主要包括 主程序、鍵輸
3、入程序、顯示程序、定時程序和中斷程序等軟件模塊。把原程序加入原理 圖,做出電子鐘的仿真,以秒計數并顯示時、分、秒。其中秒和分為 60 進制,小時為 24 進制計數??赏ㄟ^按鍵實現時鐘復位和分、秒、時的校正。 指導教師(簽名):指導教師(簽名): 年年 月月 日日 畢業(yè)設計開題報告畢業(yè)設計開題報告 一、課題設計(論文)目的及意義 人類的生活包括:工作、學習、休息以及參與社會的多種實踐活動,環(huán)環(huán)有條理, 更加豐富多彩。應該說時鐘的計時功能與人類的各種行為和活動有著密切的聯系,于是 時鐘的作用便體現出來,生活中有許多人,因為只顧工作而忘記時間,從而耽誤了重要 的安排或者計劃,造成不可挽回的損失,使之
4、后悔莫及。我們要養(yǎng)成良好的時間觀念, 就需要電子鐘時刻提醒我們。因此,電子鐘已成為人們日常生活中必不可少,它的應用 非常廣泛,應用于家庭以及車站、碼頭、劇場、辦公室等公共場所,給人們的生活、學 習、工作、娛樂帶來極大的方便。 現在投入生產的大多是智能時鐘,它的功能很全面,但價格有點昂貴,大多數學生 或者經濟條件較差的人,想要擁有它,都有點困難。因此,在這里設計一個較簡單的電 子鐘,它能完成計時和校時的功能。這個時鐘系統(tǒng)很簡單,投入生產的成本很低,因此, 它的價格比較便宜,對于學生很實用。 二、課題設計(論文)提綱 時鐘電路的核心是 at89c51 單片機,其內部帶有 2kb 的可反復擦寫的只讀
5、 flash 程序存儲器和 128 bytes 的隨機存取數據存儲器(ram),無須外擴程序存儲器。電腦 時鐘沒有大量的運算和暫存數據,現有的 128b 片內 ram 已能滿足要求,也不必外擴 片 ram。系統(tǒng)配備 8 位 led 數碼管顯示和 3 個獨立式按鍵,用 p0 口作為鍵盤接口電 路,p1 口和 p3 口作為段碼和位碼輸出口,并在字段碼輸出口接 74ls245 芯片,用該 芯片來驅動 led 數碼管顯示。利用 p0.0、p0.1 和 p0.2 作為功能按鍵輸入口。 三、課題設計(論文)思路、方法及進度安排 (1)顯示方案 方案一:靜態(tài)顯示就是當 cpu 將要顯示的字或字段碼送到輸出口
6、,顯示器就可以顯 示出所要顯示的字符,如果 cpu 不去改寫它,它將一直保持下去;靜態(tài)顯示硬件開銷 大,電路復雜,信息刷新速度慢。 方案二:動態(tài)顯示則是一位一位地輪流點亮顯示器地各個位(掃描)。對于顯示器 的每一位而言,每隔一段時間點亮一次;動態(tài)顯示耗能較小,但編寫程序較復雜。動態(tài) 顯示硬件連接簡單,信息刷新速度快。 由于本次設計是對時間進行顯示,如采用靜態(tài)顯示,則所占用的 i/o 口較多,電路 較復雜,所以在此選擇的是方案二,采用動態(tài)顯示。 (2)鍵盤方案 方案一:獨立式鍵盤。獨立式鍵盤的各個按鍵相互獨立,每個按鍵獨立地與一根數 據輸入線(單片機并行接口或其他芯片的并行接口)連接。獨立式鍵盤
7、配置靈活,軟件 結構簡單,但每個按鍵必須占用一根接口線,在按鍵數量不多時,接口線占用多。所以, 獨立式按鍵常用于按鍵數量不多的場合。 方案二:矩陣式鍵盤。矩陣式鍵盤采用的是行列式結構,按鍵設置在行列的交點上. (當接口線數量為 8 時,可以將 4 根接口線定義為行線,另 4 根接口線定義為列線,形成 4*4 鍵盤,可以配置 16 個按鍵。) 由于本設計只用了四個按鍵,不需要采用矩陣式鍵盤,所以選用第一種方案,采用 獨立式鍵盤。 (3)計時方案 采用軟件控制: 利用單片機內部的定時/計數器進行定時,配合軟件定時實現時、分、秒的計時。 該方案能夠使設計者,在設計的過程中容易實現,且節(jié)省硬件成本,因
8、此本系統(tǒng)將采用 軟件方法實現計時。 方法及進度安排: 第一周到第二周:通過搜集資料,參考文獻,反復的硬件調試, 第三周到第四周:基本完成各模塊的性能要求。 第五周到第六周:在研究過程中系統(tǒng)的部分模塊屬電子系統(tǒng)中常用模塊的可以直接 采用,但需要結合連接電路進行適當調試,以達到最佳效果。 四、課題設計(論文)參考文獻; 1.朱永金等主編,單片機應用技術 ,中國勞動社會保障出版社。 2.彭冬明.韋友春主編,單片機實驗教程 ,理工大學出版社。 3.朱家建主編,單片機原理及應用,機械工業(yè)出版社。 4.胡漢才主編, 單片機原理及接口技術 ,清華大學出版社。 5.張偉主編,單片機原理及應用 ,機械工業(yè)出版社
9、。 6.譚浩強.c 程序設計m.北京:清華大學出版社,1999 7.陳娟.無刷直流電機的電梯門控制系統(tǒng)研究d.吉林:吉林大學,2006 8.顧明.無刷直流電機控制系統(tǒng)設計d.大連:大連理工大學,2006 9.楊帆.具有 pid 自整定功能的溫度控制器研究與實現d.大連:大連理工大學, 2006 10.姚劍峰.基于 pwm 技術的電動機模擬器d.天津:天津大學,2006 11.宋健,姜軍生,趙文亮,孫學巖.基于單片機的直流電機 pwm 調速系統(tǒng)j.農業(yè) 化研究,2006 山東華宇職業(yè)技術學院畢業(yè)論文設計 i 目目 錄錄 摘 要 .1 第 1 章 緒 論 .2 1.1 電子鐘的發(fā)展史.2 1.2
10、設計的目的與意義.2 1.3 設計的基本思路與主要內容.3 第 2 章 時鐘系統(tǒng)的整體設計 .4 2.1 系統(tǒng)功能要求.4 2.2 整體方案.4 第 3 章 硬件設計與分析 .6 3.1 硬件設計原理.6 3.2 各單元電路介紹.6 3.2.1 at89c51 單片機介紹 .6 3.2.2 單片機最小應用系統(tǒng) .6 3.2.3 顯示電路 .8 3.2.4 鍵盤及其接口 .9 3.3 系統(tǒng)原理圖.11 第四章 軟件設計 .12 4.1 主程序的設計.12 4.2 鍵輸入程序.13 4.3 顯示程序.14 4.4 延時程序.15 2.5 中斷程序.16 第 5 章 調試與運行 .19 5.1 電路
11、仿真.19 山東華宇職業(yè)技術學院畢業(yè)論文設計 ii 5.2 調試和運行.20 第 6 章 結 論 .21 致 謝 .22 參考文獻 .23 附錄一 系統(tǒng)原理圖 .24 附錄二 元件清單 .25 附錄三 程序清單 .26 單片機數字時鐘設計 姓名: 陳帥 學號: 20092080502 班級:09 高職機電五班 指導教師:王愛嶺 摘要:摘要:單片微型計算機簡稱單片機,它是把微型計算機的各個功能部件:中央處理器 cpu、隨機存取存儲器 ram、只讀存儲器 rom、i/o 接口、定時器/計數器以及串行通信 接口等待集成在一塊芯片上,構成一個完整的微型計算機,故又把它稱為單片微型計算 機。 當今信息科
12、技高速發(fā)展,使用方便、低成本電子設備已逐步成為我們日常生活中電 子產品的主力軍。用軟件代替硬件的電子設備能大大地節(jié)省成本,且有利于資源的節(jié)約, 因此,以軟代硬的設計必將成為我們現代設計的主流。 本設計是利用 mcs-51 系列單片機內部的定時器/計數器進行中數年定時,配合軟件 延時實現時、分、秒的計時。該方案節(jié)省硬件成本,且能夠使設計者在定時/計數器的 使用、中數年及程序設計方面得到鍛煉和提高,因此本系統(tǒng)將采用軟件方法實現計時。 關鍵詞關鍵詞: : 單片機 數碼管 程序設計 第第 1 章章 緒緒 論論 1.1 數字時鐘的發(fā)展史數字時鐘的發(fā)展史 電子鐘有著很長的歷史,從民國 19 年的電鐘,研制
13、始於 60 年代中期的國內電晶 體、半導體管鐘,到研制始於 70 年代末的石英電子鐘,再到今天我們所用的智能電子 鐘。以前的電子鐘存在著很多缺點,其外觀體積龐大,在功能上有死擺、走時時間不長、 走時精確度不高等缺點。如今無論是外觀,還是在功能上,電子鐘都有了很大的改進。 雖然世界絕大多數鐘表都是中國制造,但鐘表對于國內市場來說只是個小行業(yè), 2003 年總盤子不過才 100 多億,但不是沒有前景。近年來,市場在急劇膨脹。根據國 外的統(tǒng)計數據顯示,發(fā)達國家人均一生擁有手表 23 塊,發(fā)展中國家 12 塊,而目前中國 的城鎮(zhèn)人口人均擁有量不多于 6 塊,空間很大。比如彩電一般是一個家庭一臺,手表則
14、 是每人一塊,但從銷售量來看,光 tcl 一家公司兩個月的彩電銷量可以接近 300 萬臺, 而我們手表每年總共才賣 200 多萬只。所以絕對不是市場潛力不夠的問題,而是我們應 該如何去做的問題。 1.2 設計的目的與意義設計的目的與意義 人類的生活包括:工作、學習、休息以及參與社會的多種實踐活動,環(huán)環(huán)有條理, 更加豐富多彩。應該說時鐘的計時功能與人類的各種行為和活動有著密切的聯系,于是 時鐘的作用便體現出來,生活中有許多人,因為只顧工作而忘記時間,從而耽誤了重要 的安排或者計劃,造成不可挽回的損失,使之后悔莫及。我們要養(yǎng)成良好的時間觀念, 就需要電子鐘時刻提醒我們。因此,電子鐘已成為人們日常生
15、活中必不可少,它的應用 非常廣泛,應用于家庭以及車站、碼頭、劇場、辦公室等公共場所,給人們的生活、學 習、工作、娛樂帶來極大的方便。 現在投入生產的大多是智能時鐘,它的功能很全面,但價格有點昂貴,大多數學生 或者經濟條件較差的人,想要擁有它,都有點困難。因此,在這里設計一個較簡單的電 子鐘,它能完成計時和校時的功能。這個時鐘系統(tǒng)很簡單,投入生產的成本很低,因此, 它的價格比較便宜,對于學生很實用。 1.3 設計的基本思路與主要內容設計的基本思路與主要內容 設計一個電子產品,首先了解它能實現的功能,時鐘系統(tǒng)最基本的功能就是實現計 時,在這里設計的數字電子時鐘,它能實現計時和校時的功能,給電子鐘加
16、上電自動計 時,設計一個按鍵對時鐘進行復位和三個按鍵對時間進行調整。 硬件設計很簡單,主要包括:單片機、按鍵電路、驅動顯示電路,以及 led 顯示 器四個部分。單片機選用 at89c51 芯片,它無須外擴程序存儲器,設計電路很簡單。 由于只用了四個按鍵,所以采用獨立式按鍵使設計更簡單。顯示時、分、秒加兩個分隔 符,采用 8 位的數碼管,用常用的 74ls244 來驅動 led 數碼管顯示字符。 簡易數字時鐘可實現校時和整點報時功能,該軟件采用 c 語言來實現,主要包括 主程序、鍵輸入程序、顯示程序、定時程序和中斷程序等軟件模塊。把原程序加入原理 圖,做出電子鐘的仿真,以秒計數并顯示時、分、秒。
17、其中秒和分為 60 進制,小時為 24 進制計數??赏ㄟ^按鍵實現時鐘復位和分、秒、時的校正。 第第 2 章章 簡易數字時鐘系統(tǒng)的整體設計簡易數字時鐘系統(tǒng)的整體設計 2.1 系統(tǒng)功能要求系統(tǒng)功能要求 以單片機技術為核心,充分應用各種外圍電路元器件,設計一個通過顯示器顯 示時間(時、分、秒)的電子鐘。要求: 1、上電時,時、分、秒顯示為00時、00分、00秒,并以秒為單位開始計時; 2、運行狀態(tài)下,按動控制按扭s-set,對秒進行調整; 3、運行狀態(tài)下,按動控制按扭 m-set,對分進行調整; 4、運行狀態(tài)下,按動控制按扭 h-set,對小時進行調整。 5、當數字時鐘運行到正點時,實現自動報時功能
18、。 6、當按下 t-set 鍵是實現小時由 24 進制和 12 進制的相互轉換。 2.2 整體方案整體方案 電子鐘的電路圖主要由單片機(at89c51) 、鍵盤電路、驅動顯示電路和 led 顯示器四部分組成,它主要實現時鐘的顯示,以及對時、分、秒進行調整,即實現調時 的功能。其數字鐘系統(tǒng)整體結構如圖 2-1 所示。 七 段 數 碼 管 at89c51 驅 動 led 顯示器 位 選 按 鍵 圖圖 2-1 電子鐘系統(tǒng)整體結構電子鐘系統(tǒng)整體結構 (1)顯示方案 方案一:靜態(tài)顯示就是當 cpu 將要顯示的字或字段碼送到輸出口,顯示器就可以顯 示出所要顯示的字符,如果 cpu 不去改寫它,它將一直保持
19、下去;靜態(tài)顯示硬件開銷 大,電路復雜,信息刷新速度慢。 方案二:動態(tài)顯示則是一位一位地輪流點亮顯示器地各個位(掃描)。對于顯示器 的每一位而言,每隔一段時間點亮一次;動態(tài)顯示耗能較小,但編寫程序較復雜。動態(tài) 顯示硬件連接簡單,信息刷新速度快。 由于本次設計是對時間進行顯示,如采用靜態(tài)顯示,則所占用的 i/o 口較多,電路 較復雜,所以在此選擇的是方案二,采用動態(tài)顯示。 (2)鍵盤方案 方案一:獨立式鍵盤。獨立式鍵盤的各個按鍵相互獨立,每個按鍵獨立地與一根數 據輸入線(單片機并行接口或其他芯片的并行接口)連接。獨立式鍵盤配置靈活,軟件 結構簡單,但每個按鍵必須占用一根接口線,在按鍵數量不多時,接
20、口線占用多。所以, 獨立式按鍵常用于按鍵數量不多的場合。 方案二:矩陣式鍵盤。矩陣式鍵盤采用的是行列式結構,按鍵設置在行列的交點上. (當接口線數量為 8 時,可以將 4 根接口線定義為行線,另 4 根接口線定義為列線,形成 4*4 鍵盤,可以配置 16 個按鍵。) 由于本設計只用了四個按鍵,不需要采用矩陣式鍵盤,所以選用第一種方案,采用 獨立式鍵盤。 (3)計時方案 采用軟件控制: 利用單片機內部的定時/計數器進行定時,配合軟件定時實現時、分、秒的計時。 該方案能夠使設計者,在設計的過程中容易實現,且節(jié)省硬件成本,因此本系統(tǒng)將采用 軟件方法實現計時。 第第 3 章章 硬件設計與分析硬件設計與
21、分析 3.1 硬件設計原理硬件設計原理 時鐘電路的核心是 at89c51 單片機,其內部帶有 2kb 的可反復擦寫的只讀 flash 程序存儲器和 128 bytes 的隨機存取數據存儲器(ram),無須外擴程序存儲器。電腦 時鐘沒有大量的運算和暫存數據,現有的 128b 片內 ram 已能滿足要求,也不必外擴 片 ram。系統(tǒng)配備 8 位 led 數碼管顯示和 3 個獨立式按鍵,用 p0 口作為鍵盤接口電 路,p1 口和 p3 口作為段碼和位碼輸出口,并在字段碼輸出口接 74ls245 芯片,用該 芯片來驅動 led 數碼管顯示。利用 p0.0、p0.1 和 p0.2 作為功能按鍵輸入口。
22、3.2 各單元電路介紹各單元電路介紹 3.2.1at89c51 單片機介紹 at89c51 是一個低電壓,高性能 cmos 8 位單片機,片內含 2k bytes 的可反復 擦寫的只讀 flash 程序存儲器和 128 bytes 的隨機存取數據存儲器(ram),器件采用 atmel 公司的高密度、非易失性存儲技術生產,兼容標準 mcs51 指令系統(tǒng),片內 置通用 8 位中央處理器和 flash 存儲單元,所以說 at89c51 是一個功能強大的單片機。 at89c51 是一個低功耗高性能單片機,它有 40 個引腳,32 個外部雙向輸入/輸出 (i/o)端口,同時內含 2 個外中斷口,2 個
23、16 位可編程定時計數器,2 個全雙工串行通 信口,at89c51 可以按照常規(guī)方法進行編程,也可以在線編程。其將通用的微處理器 和 flash 存儲器結合在一起,特別是可反復擦寫的 flash 存儲器可有效地降低開發(fā)成本。 同時 at89c51 的時鐘頻率可以為零,即具備可用軟件設置的睡眠省電功能,系統(tǒng) 的喚醒方式有 ram、定時/計數器、串行口和外中斷口,系統(tǒng)喚醒后即進入繼續(xù)工作狀 態(tài)。省電模式中,片內 ram 將被凍結,時鐘停止振蕩,所有功能停止工作,直至系統(tǒng) 被硬件復位方可繼續(xù)運行。 3.2.2 單片機最小應用系統(tǒng) 時鐘電路和復位電路是單片機最小應用系統(tǒng)中必不可少的。 單片機時鐘電路圖
24、,如圖 3-1 所示:xtal1 和 xtal2 分別為反向放大器的輸入和 輸出。該反向放大器可以配置為片內振蕩器。石晶振蕩和陶瓷振蕩均可采用。如采用外 部時鐘源驅動器件,xtal2 應不接。有余輸入至內部時鐘信號要通過一個二分頻觸發(fā) 器,因此對外部時鐘信號的脈寬無任何要求,但必須保證脈沖的高低電平要求的寬度。 圖 3-1 單片機時鐘電路圖 復位是使單片機或系統(tǒng)中的其他部件處于某種確定的初始狀態(tài)。單片機的工作就是 從復位開始的,當在單片機的 rst 引腳引入高電平并保持 2 個機器周期時,單片機內 部就執(zhí)復位操作(若該引腳持續(xù)保持高電平,單片機就處于循環(huán)復位狀態(tài)) 。 實際應用中,復位操作有兩
25、種基本的形式:一種是上電復位,另一種是上電與按鍵 均有效的復位。由于本次設計采用的是上電復位,所以這里只介紹上電復位,如下圖 3-3 所示: 圖圖 3-3 上電復位電路上電復位電路 上電復位要求接通電源后,單片機自動實現復位操作。常用的上電復位如上圖所示。 上電瞬間 rst 引腳獲得高電平,隨著電容 c1 的充電,rst 引腳的高電平將逐漸下降。 3.2.3 顯示電路 一、七段 led 顯示器的原理 顯示器是單片機應用系統(tǒng)常用的設備,包括 led、lcd 等。led 顯示器由若干個 發(fā)光二極管組成。七段 led 通常構成字型“8”,還有一個發(fā)光二極管用來顯示小數點。 每段 led 分別引出一個
26、電極,電極的名為 a、b、c、d、e、d、g、dp,其中 dp 是小數 點段的引出電極。當發(fā)光二極管導通時,相應的一個筆畫或一個點就發(fā)光??刂葡鄳?二極管導通,就能顯示出對應字符。 說明:在該設計中,沒有用到電極(dp) ,而是用單位的數碼管來顯示分隔符,其 七段 led 顯示器如圖 3-4 所示 圖 3-4 七段 led 顯示器 二、動態(tài)顯示 本設計共用了八位 led 顯示器,因此采用動態(tài)顯示方式。所謂動態(tài)顯示就是一位 一位的輪流點亮顯示器的各個位。對于顯示器的每一位而言,每隔一段時間點亮一次。 雖然在同一時刻只有一位顯示器在工作,但由于人眼的視覺暫留效應和發(fā)光二極管熄滅 時的余暉,我們看
27、到的卻是多個字符“同時“顯示。顯示器亮度既與點亮時的導通電流有 關,也與點亮時間長短和時間間隔有關。 顯示器的位數不大于 8 位,則控制顯示器公共極電位只需要一個 i/o 接口,稱為掃 描口或字位口,控制各位 led 顯示器所顯示的字型也需要一個 8 位接口,稱為段數據 口或字型口。圖 3-5 為驅動顯示電路框圖。 圖 3-4 驅動顯示電路框圖 74ls244 是我們常用的芯片,用來驅動 led 或者其他的設備 當 8051 單片機的 p1 口總線負載達到或超過 p1 最大負載能力時,必須接入 74ls244 等總線驅動器。 當片選端/ce 低電平有效時,dir=“0”,信號由 b 向 a 傳
28、輸;(接收) 3.2.4 鍵盤及其接口 鍵盤是由若干個按鍵組成的,它是單片機最簡單的輸入設備。通過鍵盤輸入數據或 命令,就可實現簡單的人機對話。 一、按鍵的抖動現象 按鍵就是一個簡單的開關。當按鍵按下時,相當于開關閉合;當按鍵松開時,相當 于開關斷開。按鍵在閉合和斷開時,觸點會存在抖動現象。按鍵抖動時間一般為 5ms10ms,抖動可能造成一次按鍵的多次處理問題。應采取措施消除抖動的影響。消 除的方法很多,本設計采用軟件延時的方法來消除抖動。當單片機檢測到有按鍵按下時 先定時,然后再檢測按鍵的狀態(tài),若仍是閉合狀態(tài)則認為真的有鍵按下。當檢測到按鍵 釋放時,亦需要做同樣的處理。 二、按鍵電路 獨立式
29、鍵盤的各個按鍵相互獨立,每個按鍵獨立地與一根數據輸入線(單片 機并行接口或其他芯片的并行接口)連接。獨立式鍵盤配置靈活,軟件結構簡單,但每 個按鍵必須占用一根接口線,在按鍵數量不多時,接口線占用多。所以,獨立式按鍵常 用于按鍵數量不多的場合。 該設計只用了三個按鍵,來實現功能控制。在運行狀態(tài)下,按動控制按扭s-set, 可對秒進行調整;按動控制按扭m-set,可對分進行調整;按動控制按扭h-set,可對 時進行調整;因此采用獨立式鍵盤方式,設計起來比較簡單。如圖3-6所示 圖3-5 鍵盤電路 3.3 系統(tǒng)原理圖 at89c51的p1口接入三個按鍵,對時、分、秒進行調整。p0口輸出字段碼,控制
30、要顯示的字符,外接74ls245芯片,驅動led顯示。p3口輸出字位碼,去控制要顯示的 位,其原理圖如圖3-6所示。 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
31、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/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-s
32、et 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 圖 3-6 電子鐘原理圖 當接入電源時,數字電子鐘以秒為單位開始計時。運行狀態(tài)下,按下控制按鍵 s- set,對秒進行調整;按下 m-set 調整分鐘;按下 h-set 對小時進行調整。這樣通過 三個按鍵,分別對時、分、秒進行調整,從而實現調時。 第第 4 章章 軟件設計軟件設計 在軟件設計中,整個程序的主框架是以定時 1s 計算的方式來實現電子鐘。定時
33、 1s 的程序段,使用動態(tài)顯示程序實現延時,既完成了延時,也完成了數字的顯示。在計算 程序中,使對應于時、分、秒的變化量按照 60 進制和 24 進制進行計算,動態(tài)顯示程序 直接引用這些變量,達到顯示的數字也隨之不斷變化,即完成了電子鐘的功能。 其軟件功能模塊主要有鍵輸入程序、中斷程序、顯示程序,以及延時程序。 需要說明的是,這里設計的是簡易的電子鐘,主要是用程序運行來計算時間,這樣 用程序來確定出 1s 的時間精度是很有限的,所以整個時鐘的精度不太高。 4.1 主程序的設計主程序的設計 初始化將時、分、秒各單元的內容清空,置 t0 為計數器方式 1,分別給計數器的 高 8 位和低 8 位賦計
34、數初值,啟動 t0 工作。鍵入一個按鍵,如執(zhí)行此動作,秒值加 1,否則重新鍵如按鍵。 主程序模塊:主程序流程圖,如圖 4-1 所示 初始化 鍵輸入 開始 鍵執(zhí)行 結束 圖圖 4-1 主程序流程圖主程序流程圖 4.2 鍵輸入程序鍵輸入程序 鍵輸入程序用于調整時間。以秒為例,按下按鍵 s-set,判斷 s-set 是否真的被 按下,若沒有鍵按下,轉到 a1 程序段,再次鍵入按鍵,重新判斷。若按鍵按下了,則 調用延時程序,消除抖動現象秒值加 1,當秒值大于 60 時,秒清零,進行下一次計時, 同時分加一,并轉到 j0 顯示。此過程循環(huán)執(zhí)行,其程序流程圖如圖 4-2 所示: 顯示 s-set 是否按下
35、 否按下 秒值加 1 秒60 ? 清零 n 調用延時 y y n 圖 4-2 鍵輸入程序流程圖 a1:lcall display;調用延時程序 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 ;調用顯示 sjmpj0 4.3 顯示程序 顯示其時、分、秒的數值,和兩個分隔
36、符。以顯示秒為例,當 p3.7 輸入高電 平時,秒的個位所對應的字段碼點亮,顯示其秒的個位;當秒有十位輸入時,p3.6 輸 入高電平,秒所十位對應的字段碼點亮,顯示其秒十位。其程序流程圖如圖 4-3 所示: 取字段碼 取字位碼 顯示秒個位 顯示秒十位 調用延時 圖 4-3 顯示程序流程圖 display:mova,second ;顯示秒 movb,#10 divab clrp3.6 movc a, a+dptr ;取字段碼 movp0, a lcalldelay ;調用延時 setbp3.6 ;顯示秒十位 mova,b clrp3.7 movc a,a+dptr ;取字段碼 movp0,a l
37、call delay ; 調用延時,去抖動 setbp3.7 ;顯示秒個位 clrp3.5 4.4 延時程序 按鍵抖動時間一般為 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 中斷程序 中斷程序主要用于控制顯示的字符。當秒值大于 60 時,秒清零,重新計數, 分值加 1,秒、分同時顯示;當分值大于 60 時,分清零,重新計數,小時加 1,秒、
38、分、 時同時顯示,當小時大于 23 時,一天的計時完畢,秒、分、時均清零,進行第二天的 計時。此任務循環(huán)執(zhí)行。其程序流程圖如圖 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 ;調用延時 setbp3.6 ;顯示秒的十位 mova,b clrp3.7 movc a,a+dptr movp0,a lcall dela
39、y setbp3.7 ;顯示秒的個位 clrp3.5 movp0,#40h;顯示分隔符 lcall delay setbp3.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 cl
40、rp3.0 movc a,a+dptr movp0,a lcall delay setbp3.0 ;顯示時的十位 mova,b clrp3.1 movc a,a+dptr movp0,a lcall delay setbp3.1 ;顯示時的個位 ret 第第 5 章章 調試與運行調試與運行 5.1 電路仿真電路仿真 此設計的電路在單片機仿真軟件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
41、 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 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 1
42、3 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 a5 7 b5 13 a6 8 b6 12 a7 9 b7 11 ce 19 ab/ba 1 u2 74ls245 圖 5-1 電子鐘仿真電路圖 5.2
43、 調試和運行 在 keil (單片機匯編) c51 軟件中編寫好的程序,將程序放入單片機仿真軟件中, 結合硬件電路進行調試與運行。 通過按鍵對時間進行調整。如顯示時間為 14-30-22,既是 14 點 30 分 22 秒,通 過以下調整則可實現。 (1)按動 s-set 鍵,將秒調到 22; (2)按動 m-set 鍵,將分調到 30; (3)按動 h-set 鍵,將時調到 14。 則將時間調到了所要顯示的時間 14-30-22,通過此方法可將時間調整到任何 需要顯示的時間。 第第 6 章章 結結 論論 因為單片機的種類多,而型號雜,也是我們學習中的困難,所以就 mcs51 系列 的產品來說
44、,就是一個典型的學習方法。對于類似匯編的單片機編程過程,也是一個十 分有趣的過程。為了更好的說明,我以上介紹先從應用電路切入,同時介紹它們的使用 方法,以便能快速掌握它們的應用。 通過本次的課程設計,我學會了單片機的一般設計過程,通常都要進行系統(tǒng)擴展與 配置,因此,要完成一個單片機的設計工作,必須依次做到下述工作:1、硬件電路的 設計、組裝與調試;2、應用軟件的編寫、調試;3、完整應用軟件的調試、固化和脫機 運行。而在進行硬件系統(tǒng)設計時我們應當盡量做到:1、盡可能的選擇典型電路,并符 合單片機的常規(guī)使用方法;2、在充分滿足系統(tǒng)功能要求前提下,留余地以便于二次開 發(fā);3、硬件結構設計應與軟件設計
45、方案一并考慮;4、整個系統(tǒng)相關器件要力求性能的 匹配;5、硬件上要有可靠性與抗干擾設計;6、充分考慮單片機的帶載驅動能力。所以 我用單片機編寫了上面的程序,因為基礎知識學的不怎么好,如有錯誤之處,還望老師 理解,并加以批改。通過這次設計使我對單片機有了更深入的了解。培養(yǎng)了我的動手實 踐能力。 致致 謝謝 本文從擬定題目到定稿,經歷了很長一段時間。在本論文完成之際,首先要向我的 導師王老師致以誠摯的謝意。在論文的寫作過程中,王老師給予我許許多多的幫助,王 老師不厭其煩地為我講解畢業(yè)設計中繁瑣的問題,并且多次提出寶貴意見,使我的畢業(yè) 設計能夠更完整,更充實。 同時,還要感謝三年中孜孜不倦的為我們講
46、課的老師們,是他們毫無保留地將他們 的知識傳授給我們,才使得今天的我能夠順利的完成我的畢業(yè)設計,感謝山東華宇職業(yè) 技術學院,是這里給我提供了良好的學習環(huán)境和生活環(huán)境,讓我的大學生活豐富多彩, 讓我對今后的生活更加充滿了信心。 另外,衷心感謝我的同窗同學們,在我畢業(yè)論文寫作中,與他們的探討交流使我受 益頗多;同時,他們也給了我很多無私的幫助和支持,我在此深表謝意! 最后,向我親愛的家人和朋友表示深深的謝意,他們給予我的愛、理解、關心和支 持是我不斷前進的動力。 “懼懷逸興思斗志,欲上青天攬日月。 ” 參考文獻參考文獻 1.朱永金等主編,單片機應用技術 ,中國勞動社會保障出版社。 2.彭冬明.韋友
47、春主編,單片機實驗教程 ,理工大學出版社。 3.朱家建主編,單片機原理及應用,機械工業(yè)出版社。 4.胡漢才主編, 單片機原理及接口技術 ,清華大學出版社。 5.張偉主編,單片機原理及應用 ,機械工業(yè)出版社。 6.譚浩強.c 程序設計m.北京:清華大學出版社,1999 7.陳娟.無刷直流電機的電梯門控制系統(tǒng)研究d.吉林:吉林大學,2006 8.顧明.無刷直流電機控制系統(tǒng)設計d.大連:大連理工大學,2006 9.楊帆.具有 pid 自整定功能的溫度控制器研究與實現d.大連:大連理工大學, 2006 10.姚劍峰.基于 pwm 技術的電動機模擬器d.天津:天津大學,2006 11.宋健,姜軍生,趙文
48、亮,孫學巖.基于單片機的直流電機 pwm 調速系統(tǒng)j.農業(yè) 化研究,2006,1:102106 山東華宇職業(yè)學院 1 山東華宇職業(yè)學院 2 附錄一附錄一 系統(tǒng)原理圖系統(tǒng)原理圖 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/ad
49、2 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/a8 21 p2.1/a9 22 p2.2/a10 23 p2.3/a11 24 p2.4/a12 25 p2.5/a13 26 p2.
50、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 山東華宇職業(yè)學院 3 附錄二附錄二 元件清單元件清單 序號序號名稱名稱型號規(guī)格型號規(guī)格數量數量 1單片機單片機at89c511 片片 2譯碼驅動器譯碼驅動器74ls2451 片片 3led 數碼管數碼管7seg-mpx8-cc-blue1 個個 4按鍵按鍵button3 個個 5導線導線若干若干
51、山東華宇職業(yè)學院 4 附錄三附錄三 程序清單程序清單 s_set bitp1.0;數字鐘秒控制位 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 movtcnt,#0 movtmod,#01h ;置 t0 為計數器方式 1 movth0,#(65536-50000)/256;定時 50 毫秒 movtl0,#(65536-50000)mod 25
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 餐飲企業(yè)加盟合同范本:包含品牌使用權及培訓
- 物業(yè)管理公司財務外包合同
- 施工方案編制聲明
- 電商代運營及數據分析合作協議
- 成都市二手房買賣及產權過戶稅費承擔及代理服務合同
- 出租車服務區(qū)域獨家經營權承包合同
- 神經外科帕金森病護理查房
- 焦化消防應急預案方案
- 油費管理方案模板(3篇)
- 2026版《全品高考》選考復習方案生物06 實驗十七 探究等溫情況下一定質量氣體壓強與體積的關系含答案
- 建筑大廈工程技術難題與解決方案
- 汽車車身涂膠設計規(guī)范
- 法醫(yī)職稱考試試題及答案
- 2025年危險化學品安全作業(yè)特種作業(yè)操作證考試試卷備考攻略
- 2025年人工智能教育應用專業(yè)考試試題及答案
- 銀行保密知識培訓課件
- 高校學科重塑路徑研究
- DB12T 1444-2025 博物館消防安全管理導則
- 硫化氫題庫及答案
- 2025年房地產銷售經理季度工作總結及年度計劃
- 低壓培訓課件
評論
0/150
提交評論