




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、- 1 - 漯河職業技術學院漯河職業技術學院畢業設計(論文)畢業設計(論文)課題名稱:基于課題名稱:基于 at89c51at89c51 單片機的數字時鐘設計單片機的數字時鐘設計 專 業:電氣自動化 班 級:10 級電氣(3)班 學 號: 姓 名: 指導教師;制作時間:2013 年 03 月 21 日 - 2 -緒緒 論論一、課題設計(論文)目的及意義一、課題設計(論文)目的及意義人類的生活包括:工作、學習、休息以及參與社會的多種實踐活動,環環有條理,更加豐富多彩。應該說時鐘的計時功能與人類的各種行為和活動有著密切的聯系,于是時鐘的作用便體現出來,生活中有許多人,因為只顧工作而忘記時間,從而耽誤
2、了重要的安排或者計劃,造成不可挽回的損失,使之后悔莫及。我們要養成良好的時間觀念,就需要電子鐘時刻提醒我們。因此,電子鐘已成為人們日常生活中必不可少,它的應用非常廣泛,應用于家庭以及車站、碼頭、劇場、辦公室等公共場所,給人們的生活、學習、工作、娛樂帶來極大的方便?,F在投入生產的大多是智能時鐘,它的功能很全面,但價格有點昂貴,大多數學生或者經濟條件較差的人,想要擁有它,都有點困難。因此,在這里設計一個較簡單的電子鐘,它能完成計時和校時的功能。這個時鐘系統很簡單,投入生產的成本很低,因此,它的價格比較便宜,對于學生很實用。二、課題設計(論文)提綱二、課題設計(論文)提綱時鐘電路的核心是 at89c
3、51 單片機,其內部帶有 2kb 的可反復擦寫的只讀 flash 程序存儲器和 128 bytes 的隨機存取數據存儲器(ram),無須外擴程序存儲器。電腦時鐘沒有大量的運算和暫存數據,現有的 128b 片內 ram 已能滿足要求,也不必外擴片 ram。系統配備 8 位led 數碼管顯示和 3 個獨立式按鍵,用 p0 口作為鍵盤接口電路,p1 口和 p3 口作為段碼和位碼輸出口,并在字段碼輸出口接 74ls245 芯片,用該芯片來驅動 led 數碼管顯示。利用p0.0、p0.1 和 p0.2 作為功能按鍵輸入口。三、課題設計(論文)思路、方法及進度安排三、課題設計(論文)思路、方法及進度安排(
4、1 1)顯示方案)顯示方案方案一:靜態顯示就是當 cpu 將要顯示的字或字段碼送到輸出口,顯示器就可以顯示出所要顯示的字符,如果 cpu 不去改寫它,它將一直保持下去;靜態顯示硬件開銷大,電路復雜,信息刷新速度慢。方案二:動態顯示則是一位一位地輪流點亮顯示器地各個位(掃描)。對于顯示器的每一位而言,每隔一段時間點亮一次;動態顯示耗能較小,但編寫程序較復雜。動態顯示硬件連接簡單,信息刷新速度快。由于本次設計是對時間進行顯示,如采用靜態顯示,則所占用的 i/o 口較多,電路較復雜,所以在此選擇的是方案二,采用動態顯示。(2 2)鍵盤方案)鍵盤方案方案一:獨立式鍵盤。獨立式鍵盤的各個按鍵相互獨立,每
5、個按鍵獨立地與一根數據輸入線(單片機并行接口或其他芯片的并行接口)連接。獨立式鍵盤配置靈活,軟件結構簡單,但- 3 -每個按鍵必須占用一根接口線,在按鍵數量不多時,接口線占用多。所以,獨立式按鍵常用于按鍵數量不多的場合。方案二:矩陣式鍵盤。矩陣式鍵盤采用的是行列式結構,按鍵設置在行列的交點上.(當接口線數量為 8 時,可以將 4 根接口線定義為行線,另 4 根接口線定義為列線,形成 4*4 鍵盤,可以配置 16 個按鍵。)由于本設計只用了四個按鍵,不需要采用矩陣式鍵盤,所以選用第一種方案,采用獨立式鍵盤。(3 3)計時方案)計時方案采用軟件控制:利用單片機內部的定時/計數器進行定時,配合軟件定
6、時實現時、分、秒的計時。該方案能夠使設計者,在設計的過程中容易實現,且節省硬件成本,因此本系統將采用軟件方法實現計時。方法及進度安排:第一周到第二周:通過搜集資料,參考文獻,反復的硬件調試,第三周到第四周:基本完成各模塊的性能要求。第五周到第六周:在研究過程中系統的部分模塊屬電子系統中常用模塊的可以直接采用,但需要結合連接電路進行適當調試,以達到最佳效果。目目 錄錄摘 要 .1- 4 -第 1 章 引言 .21.1 電子鐘的發展史 .21.2 設計的目的與意義 .21.3 設計的基本思路與主要內容 .3第 2 章 時鐘系統的整體設計 .102.1 系統功能要求.102.2 整體方案 .11第
7、3 章 硬件設計與分析 .123.1 硬件設計原理 .123.2 各單元電路介紹.123.2.1 at89c51 單片機介紹.123.2.2 單片機最小應用系統.123.2.3 顯示電路.133.2.4 鍵盤及其接口 .153.3 系統原理圖 .16第四章 軟件設計 .184.1 主程序的設計 .184.2 鍵輸入程序 .194.3 顯示程序 .204.4 延時程序 .212.5 中斷程序 .24第 5 章 調試與運行 .255.1 電路仿真 .255.2 調試和運行 .26第第 6 6 章章 結結 論論 .2 27 7致 謝 .28參考文獻 .29附錄一 系統原理圖.30附錄二 元件清單 .
8、31附錄三 程序清單 .32摘摘 要要 單片微型計算機簡稱單片機,它是把微型計算機的各個功能部件:中央處理器 cpu、隨機- 5 -存取存儲器 ram、只讀存儲器 rom、i/o 接口、定時器/計數器以及串行通信接口等待集成在一塊芯片上,構成一個完整的微型計算機,故又把它稱為單片微型計算機。當今信息科技高速發展,使用方便、低成本電子設備已逐步成為我們日常生活中電子產品的主力軍。用軟件代替硬件的電子設備能大大地節省成本,且有利于資源的節約,因此,以軟代硬的設計必將成為我們現代設計的主流。本設計是利用 mcs-51 系列單片機內部的定時器/計數器進行中數年定時,配合軟件延時實現時、分、秒的計時。該
9、方案節省硬件成本,且能夠使設計者在定時/計數器的使用、中數年及程序設計方面得到鍛煉和提高,因此本系統將采用軟件方法實現計時。關鍵詞: 單片機 數碼管 程序設計- 6 -第 1 章 引引 言言1.11.1 電子時鐘的發展史電子時鐘的發展史 電子鐘有著很長的歷史,從民國 19 年的電鐘,研制始於 60 年代中期的國內電晶體、半導體管鐘,到研制始於 70 年代末的石英電子鐘,再到今天我們所用的智能電子鐘。以前的電子鐘存在著很多缺點,其外觀體積龐大,在功能上有死擺、走時時間不長、走時精確度不高等缺點。如今無論是外觀,還是在功能上,電子鐘都有了很大的改進。 雖然世界絕大多數鐘表都是中國制造,但鐘表對于國
10、內市場來說只是個小行業,2003 年總盤子不過才 100 多億,但不是沒有前景。近年來,市場在急劇膨脹。根據國外的統計數據顯示,發達國家人均一生擁有手表 23 塊,發展中國家 12 塊,而目前中國的城鎮人口人均擁有量不多于 6 塊,空間很大。比如彩電一般是一個家庭一臺,手表則是每人一塊,但從銷售量來看,光 tcl 一家公司兩個月的彩電銷量可以接近 300 萬臺,而我們手表每年總共才賣 200 多萬只。所以絕對不是市場潛力不夠的問題,而是我們應該如何去做的問題。1.21.2 設計的目的與意義設計的目的與意義人類的生活包括:工作、學習、休息以及參與社會的多種實踐活動,環環有條理,更加豐富多彩。應該
11、說時鐘的計時功能與人類的各種行為和活動有著密切的聯系,于是時鐘的作用便體現出來,生活中有許多人,因為只顧工作而忘記時間,從而耽誤了重要的安排或者計劃,造成不可挽回的損失,使之后悔莫及。我們要養成良好的時間觀念,就需要電子鐘時刻提醒我們。因此,電子鐘已成為人們日常生活中必不可少,它的應用非常廣泛,應用于家庭以及車站、碼頭、劇場、辦公室等公共場所,給人們的生活、學習、工作、娛樂帶來極大的方便?,F在投入生產的大多是智能時鐘,它的功能很全面,但價格有點昂貴,大多數學生或者經濟條件較差的人,想要擁有它,都有點困難。因此,在這里設計一個較簡單的電子鐘,它能完成計時和校時的功能。這個時鐘系統很簡單,投入生產
12、的成本很低,因此,它的價格比較便宜,對于學生很實用。1.31.3 設計的基本思路與主要內容設計的基本思路與主要內容設計一個電子產品,首先了解它能實現的功能,時鐘系統最基本的功能就是實現計時,在這里設計的數字電子時鐘,它能實現計時和校時的功能,給電子鐘加上電自動計時,設計一個按鍵對時鐘進行復位和三個按鍵對時間進行調整。 硬件設計很簡單,主要包括:單片機、按鍵電路、驅動顯示電路,以及 led 顯示器四個部分。單片機選用 at89c51 芯片,它無須外擴程序存儲器,設計電路很簡單。由于只用了四個按鍵,所以采用獨立式按鍵使設計更簡單。顯示時、分、秒加兩個分隔符,采用 8 位的數碼管,用常用的 74ls
13、244 來驅動 led 數碼管顯示字符。- 7 - 簡易數字時鐘可實現校時和整點報時功能,該軟件采用 c 語言來實現,主要包括主程序、鍵輸入程序、顯示程序、定時程序和中斷程序等軟件模塊。把原程序加入原理圖,做出電子鐘的仿真,以秒計數并顯示時、分、秒。其中秒和分為 60 進制,小時為 24 進制計數??赏ㄟ^按鍵實現時鐘復位和分、秒、時的校正。- 8 -第第 2 2 章章 簡易數字時鐘系統的整體設計簡易數字時鐘系統的整體設計2.12.1 系統功能要求系統功能要求 以單片機技術為核心,充分應用各種外圍電路元器件,設計一個通過顯示器顯示時間(時、分、秒)的電子鐘。要求: 1、上電時,時、分、秒顯示為0
14、0時、00分、00秒,并以秒為單位開始計時;2、運行狀態下,按動控制按扭s-set,對秒進行調整;3、運行狀態下,按動控制按扭 m-set,對分進行調整;4、運行狀態下,按動控制按扭 h-set,對小時進行調整。5、當數字時鐘運行到正點時,實現自動報時功能。6、當按下 t-set 鍵是實現小時由 24 進制和 12 進制的相互轉換。2.22.2 整體方案整體方案 電子鐘的電路圖主要由單片機(at89c51)、鍵盤電路、驅動顯示電路和 led 顯示器四部分組成,它主要實現時鐘的顯示,以及對時、分、秒進行調整,即實現調時的功能。其數字鐘系統整體結構如圖 2-1 所示。七段數碼管at89c51驅動l
15、ed 顯示器位選按 鍵圖圖 2-12-1 電子鐘系統整體結構電子鐘系統整體結構(1 1)顯示方案)顯示方案方案一:靜態顯示就是當 cpu 將要顯示的字或字段碼送到輸出口,顯示器就可以顯示出所要顯示的字符,如果 cpu 不去改寫它,它將一直保持下去;靜態顯示硬件開銷大,電路復雜,信息刷新速度慢。方案二:動態顯示則是一位一位地輪流點亮顯示器地各個位(掃描)。對于顯示器的每一位而言,每隔一段時間點亮一次;動態顯示耗能較小,但編寫程序較復雜。動態顯示硬件連接- 9 -簡單,信息刷新速度快。由于本次設計是對時間進行顯示,如采用靜態顯示,則所占用的 i/o 口較多,電路較復雜,所以在此選擇的是方案二,采用
16、動態顯示。(2 2)鍵盤方案)鍵盤方案方案一:獨立式鍵盤。獨立式鍵盤的各個按鍵相互獨立,每個按鍵獨立地與一根數據輸入線(單片機并行接口或其他芯片的并行接口)連接。獨立式鍵盤配置靈活,軟件結構簡單,但每個按鍵必須占用一根接口線,在按鍵數量不多時,接口線占用多。所以,獨立式按鍵常用于按鍵數量不多的場合。方案二:矩陣式鍵盤。矩陣式鍵盤采用的是行列式結構,按鍵設置在行列的交點上.(當接口線數量為 8 時,可以將 4 根接口線定義為行線,另 4 根接口線定義為列線,形成 4*4 鍵盤,可以配置 16 個按鍵。)由于本設計只用了四個按鍵,不需要采用矩陣式鍵盤,所以選用第一種方案,采用獨立式鍵盤。(3 3)
17、計時方案)計時方案采用軟件控制:利用單片機內部的定時/計數器進行定時,配合軟件定時實現時、分、秒的計時。該方案能夠使設計者,在設計的過程中容易實現,且節省硬件成本,因此本系統將采用軟件方法實現計時。- 10 -第第 3 3 章章 硬件設計與分析硬件設計與分析3.13.1 硬件設計原理硬件設計原理 時鐘電路的核心是 at89c51 單片機,其內部帶有 2kb 的可反復擦寫的只讀 flash 程序存儲器和 128 bytes 的隨機存取數據存儲器(ram),無須外擴程序存儲器。電腦時鐘沒有大量的運算和暫存數據,現有的 128b 片內 ram 已能滿足要求,也不必外擴片 ram。系統配備 8 位le
18、d 數碼管顯示和 3 個獨立式按鍵,用 p0 口作為鍵盤接口電路,p1 口和 p3 口作為段碼和位碼輸出口,并在字段碼輸出口接 74ls245 芯片,用該芯片來驅動 led 數碼管顯示。利用p0.0、p0.1 和 p0.2 作為功能按鍵輸入口。.1 at89c51at89c51 單片機介紹單片機介紹 at89c51 是一個低電壓,高性能 cmos 8 位單片機,片內含 2k bytes 的可反復擦寫的只讀 flash 程序存儲器和 128 bytes 的隨機存取數據存儲器(ram),器件采用 atmel 公司的高密度、非易失性存儲技術生產,兼容標準 mcs51 指令系統,片內置
19、通用 8 位中央處理器和flash 存儲單元,所以說 at89c51 是一個功能強大的單片機。 at89c51 是一個低功耗高性能單片機,它有 40 個引腳,32 個外部雙向輸入/輸出(i/o)端口,同時內含 2 個外中斷口,2 個 16 位可編程定時計數器,2 個全雙工串行通信口,at89c51可以按照常規方法進行編程,也可以在線編程。其將通用的微處理器和 flash 存儲器結合在一起,特別是可反復擦寫的 flash 存儲器可有效地降低開發成本。同時 at89c51 的時鐘頻率可以為零,即具備可用軟件設置的睡眠省電功能,系統的喚醒方式有 ram、定時/計數器、串行口和外中斷口,系統喚醒后即進
20、入繼續工作狀態。省電模式中,片內 ram 將被凍結,時鐘停止振蕩,所有功能停止工作,直至系統被硬件復位方可繼續運行。.2 單片機最小應用系統單片機最小應用系統時鐘電路和復位電路是單片機最小應用系統中必不可少的。單片機時鐘電路圖,如圖 3-1 所示:xtal1 和 xtal2 分別為反向放大器的輸入和輸出。該反向放大器可以配置為片內振蕩器。石晶振蕩和陶瓷振蕩均可采用。如采用外部時鐘源驅動器件,xtal2 應不接。有余輸入至內部時鐘信號要通過一個二分頻觸發器,因此對外部時鐘信號的脈寬無任何要求,但必須保證脈沖的高低電平要求的寬度。- 11 -圖圖 3-13-1 單片機時鐘電路圖單片
21、機時鐘電路圖復位是使單片機或系統中的其他部件處于某種確定的初始狀態。單片機的工作就是從復位開始的,當在單片機的 rst 引腳引入高電平并保持 2 個機器周期時,單片機內部就執復位操作(若該引腳持續保持高電平,單片機就處于循環復位狀態)。實際應用中,復位操作有兩種基本的形式:一種是上電復位,另一種是上電與按鍵均有效的復位。由于本次設計采用的是上電復位,所以這里只介紹上電復位,如下圖 3-3 所示: 圖圖 3-33-3 上電復位電路上電復位電路上電復位要求接通電源后,單片機自動實現復位操作。常用的上電復位如上圖所示。上電瞬間 rst 引腳獲得高電平,隨著電容 c1 的充電,rst 引腳的高電平將逐
22、漸下降。.3 顯示電路顯示電路一、七段一、七段 ledled 顯示器的原理顯示器的原理顯示器是單片機應用系統常用的設備,包括 led、lcd 等。led 顯示器由若干個發光二極管組成。七段 led 通常構成字型“8”,還有一個發光二極管用來顯示小數點。每段 led 分別引出一個電極,電極的名為 a、b、c、d、e、d、g、dp,其中 dp 是小數點段的引出電極。當發光二極管導通時,相應的一個筆畫或一個點就發光??刂葡鄳亩O管導通,就能顯示出對- 12 -應字符。說明:在該設計中,沒有用到電極(dp),而是用單位的數碼管來顯示分隔符,其七段 led 顯示器如圖 3-4 所示圖圖
23、 3-43-4 七段七段 ledled 顯示器顯示器二、二、動態顯示動態顯示本設計共用了八位 led 顯示器,因此采用動態顯示方式。所謂動態顯示就是一位一位的輪流點亮顯示器的各個位。對于顯示器的每一位而言,每隔一段時間點亮一次。雖然在同一時刻只有一位顯示器在工作,但由于人眼的視覺暫留效應和發光二極管熄滅時的余暉,我們看到的卻是多個字符“同時“顯示。顯示器亮度既與點亮時的導通電流有關,也與點亮時間長短和時間間隔有關。顯示器的位數不大于 8 位,則控制顯示器公共極電位只需要一個 i/o 接口,稱為掃描口或字位口,控制各位 led 顯示器所顯示的字型也需要一個 8 位接口,稱為段數據口或字型口。圖
24、3-5 為驅動顯示電路框圖。- 13 -圖圖 3-43-4 驅動顯示電路框圖驅動顯示電路框圖74ls244 是我們常用的芯片,用來驅動 led 或者其他的設備當 8051 單片機的 p1 口總線負載達到或超過 p1 最大負載能力時,必須接入 74ls244 等總線驅動器。當片選端/ce 低電平有效時,dir=“0”,信號由 b 向 a 傳輸;(接收).4 鍵盤及其接口鍵盤及其接口鍵盤是由若干個按鍵組成的,它是單片機最簡單的輸入設備。通過鍵盤輸入數據或命令,就可實現簡單的人機對話。一、按鍵的抖動現象一、按鍵的抖動現象按鍵就是一個簡單的開關。當按鍵按下時,相當于開關閉合;當按鍵松開
25、時,相當于開關斷開。按鍵在閉合和斷開時,觸點會存在抖動現象。按鍵抖動時間一般為 5ms10ms,抖動可能造成一次按鍵的多次處理問題。應采取措施消除抖動的影響。消除的方法很多,本設計采用軟件延時的方法來消除抖動。當單片機檢測到有按鍵按下時先定時,然后再檢測按鍵的狀態,若仍是閉合狀態則認為真的有鍵按下。當檢測到按鍵釋放時,亦需要做同樣的處理。二、按鍵電路二、按鍵電路 獨立式鍵盤的各個按鍵相互獨立,每個按鍵獨立地與一根數據輸入線(單片機并行接口或其他芯片的并行接口)連接。獨立式鍵盤配置靈活,軟件結構簡單,但每個按鍵必須占用一根接口線,在按鍵數量不多時,接口線占用多。所以,獨立式按鍵常用于按鍵數量不多
26、的場合。- 14 -該設計只用了三個按鍵,來實現功能控制。在運行狀態下,按動控制按扭s-set,可對秒進行調整;按動控制按扭m-set,可對分進行調整;按動控制按扭h-set,可對時進行調整;因此采用獨立式鍵盤方式,設計起來比較簡單。如圖3-6所示圖圖3-53-5 鍵盤電路鍵盤電路3.33.3 系統原理圖系統原理圖 at89c51的p1口接入三個按鍵,對時、分、秒進行調整。p0口輸出字段碼,控制要顯示的字符,外接74ls245芯片,驅動led顯示。p3口輸出字位碼,去控制要顯示的位,其原理圖如圖3-6所示。- 15 -a7a7a6a6a5a5a4a4a3a3a2a2a1a1a0a0s7b7b6
27、b5b4b3b2b1b0s6s5s4s3s2s1s0b0b1b2b3b4b5b6b7s0s1s2s3s4s5s6s7xtal218xtal119ale30ea31psen29rst9p0.0/ad039p0.1/ad138p0.2/ad237p0.3/ad336p0.4/ad435p0.5/ad534p0.6/ad633p0.7/ad732p1.01p1.12p1.23p1.34p1.45p1.56p1.67p1.78p3.0/rxd10p3.1/txd11p3.2/int012p3.3/int113p3.4/t014p3.7/rd17p3.6/wr16p3.5/t115p2.7/a1528p
28、2.0/a821p2.1/a922p2.2/a1023p2.3/a1124p2.4/a1225p2.5/a1326p2.6/a1427u1at89c51s-setm-seth-seta02b018a13b117a24b216a35b315a46b414a57b513a68b612a79b711ce19ab/ba1u274ls245圖圖 3-63-6 電子鐘原理圖電子鐘原理圖當接入電源時,數字電子鐘以秒為單位開始計時。運行狀態下,按下控制按鍵 s-set,對秒進行調整;按下 m-set 調整分鐘;按下 h-set 對小時進行調整。這樣通過三個按鍵,分別對時、分、秒進行調整,從而實現調時。- 16
29、 -第第 4 4 章章 軟件設計軟件設計在軟件設計中,整個程序的主框架是以定時 1s 計算的方式來實現電子鐘。定時 1s 的程序段,使用動態顯示程序實現延時,既完成了延時,也完成了數字的顯示。在計算程序中,使對應于時、分、秒的變化量按照 60 進制和 24 進制進行計算,動態顯示程序直接引用這些變量,達到顯示的數字也隨之不斷變化,即完成了電子鐘的功能。其軟件功能模塊主要有鍵輸入程序、中斷程序、顯示程序,以及延時程序。需要說明的是,這里設計的是簡易的電子鐘,主要是用程序運行來計算時間,這樣用程序來確定出 1s 的時間精度是很有限的,所以整個時鐘的精度不太高。4.14.1 主程序的設計主程序的設計
30、初始化將時、分、秒各單元的內容清空,置 t0 為計數器方式 1,分別給計數器的高 8 位和低 8 位賦計數初值,啟動 t0 工作。鍵入一個按鍵,如執行此動作,秒值加 1,否則重新鍵如按鍵。 主程序模塊:主程序流程圖,如圖 4-1 所示 初始化鍵輸入開始鍵執行結束圖圖 4-14-1 主程序流程圖主程序流程圖4.24.2 鍵輸入程序鍵輸入程序鍵輸入程序用于調整時間。以秒為例,按下按鍵 s-set,判斷 s-set 是否真的被按下,若沒有鍵按下,轉到 a1 程序段,再次鍵入按鍵,重新判斷。若按鍵按下了,則調用延時程序,消除抖動現象秒值加 1,當秒值大于 60 時,秒清零,進行下一次計時,同時分加一,
31、并轉到j0 顯示。此過程循環執行,其程序流程圖如圖 4-2 所示:- 17 -顯示s-set 是否按下否按下秒值加 1秒60 ?清零n調用延時yyn圖圖 4-24-2 鍵輸入程序流程圖鍵輸入程序流程圖a1:lcalldisplay;調用延時程序jnbs_set,s1;判斷按鍵是否按下jnbm_set,s2jnbh_set,s3ljmpa1s1: lcalldelay;去抖動jbs_set,a1incsecond;秒值加 1mova,secondcjnea,#60,j0;判斷是否加到 60 秒movsecond,#0 ;秒清 0ljmpj0j0:jbs_set,a1lcalldisplay ;調
32、用顯示sjmpj04.34.3 顯示程序顯示程序 顯示其時、分、秒的數值,和兩個分隔符。以顯示秒為例,當 p3.7 輸入高電平時,- 18 -秒的個位所對應的字段碼點亮,顯示其秒的個位;當秒有十位輸入時,p3.6 輸入高電平,秒所十位對應的字段碼點亮,顯示其秒十位。其程序流程圖如圖 4-3 所示:取字段碼取字位碼顯示秒個位顯示秒十位調用延時圖圖 4-34-3 顯示程序流程圖顯示程序流程圖display:mov a,second;顯示秒 movb,#10 divab clrp3.6 movca, a+dptr ;取字段碼 movp0, a lcalldelay ;調用延時 setbp3.6 ;顯
33、示秒十位mova,bclrp3.7movca,a+dptr ;取字段碼movp0,alcalldelay ; 調用延時,去抖動setbp3.7 ;顯示秒個位clrp 延時程序延時程序 按鍵抖動時間一般為 5ms10ms,因此延時 10ms,其流程圖如圖 4-4 所示:- 19 -#10 送 r6#250 送 r7返回(r6)=(r7) ?yn圖圖 4-44-4 延時程序流程圖延時程序流程圖delay:movr6,#10 ;延時 10msd1:movr7,#250djnzr7,$djnzr6,d1ret4.54.5 中斷程序中斷程序 中斷程序主要用于控制顯示的字符。當秒值大于
34、60 時,秒清零,重新計數,分值加 1,秒、分同時顯示;當分值大于 60 時,分清零,重新計數,小時加 1,秒、分、時同時顯示,當小時大于 23 時,一天的計時完畢,秒、分、時均清零,進行第二天的計時。此任務循環執行。其程序流程圖如圖 4-5 所示:- 20 -秒加 1秒59?小時23?分59?秒清 0,分加 1小時清 0分清 0,時加 1nyyynn圖圖 4-44-4 中斷程序流程圖中斷程序流程圖display: mova,second;顯示秒movb,#10divabclrp3.6movca, a+dptrmovp0, alcalldelay ;調用延時setbp3.6 ;顯示秒的十位mo
35、va,b- 21 -clrp3.7movca,a+dptrmovp0,alcalldelaysetbp3.7 ;顯示秒的個位clrp3.5movp0,#40h;顯示分隔符lcalldelaysetbp3.5mova,minute;顯示分鐘movb,#10divabclrp3.3movca,a+dptrmov p0,alcalldelaysetbp3.3 ;顯示分的十位mova,bclrp3.4movca,a+dptrmovp0,alcalldelaysetbp3.4 ;顯示分個位clrp3.2movp0,#40h;顯示分隔符lcalldelaysetbp3.2 mova,hour;顯示小時mo
36、vb,#10divabclrp3.0movca,a+dptrmov p0,alcalldelaysetbp3.0 ;顯示時的十位- 22 -mova,bclrp3.1movca,a+dptrmovp0,alcalldelaysetbp3.1 ;顯示時的個位ret- 23 -第第 5 5 章章 調試與運行調試與運行5.15.1 電路仿真電路仿真 此設計的電路在單片機仿真軟件proteus.professional.7.1中進行仿真,仿真電路如圖 5-1 所示:a7a7a6a6a5a5a4a4a3a3a2a2a1a1a0a0s7b7b6b5b4b3b2b1b0s6s5s4s3s2s1s0b0b1b
37、2b3b4b5b6b7s0s1s2s3s4s5s6s7xtal218xtal119ale30ea31psen29rst9p0.0/ad039p0.1/ad138p0.2/ad237p0.3/ad336p0.4/ad435p0.5/ad534p0.6/ad633p0.7/ad732p1.01p1.12p1.23p1.34p1.45p1.56p1.67p1.78p3.0/rxd10p3.1/txd11p3.2/int012p3.3/int113p3.4/t014p3.7/rd17p3.6/wr16p3.5/t115p2.7/a1528p2.0/a821p2.1/a922p2.2/a1023p2.3
38、/a1124p2.4/a1225p2.5/a1326p2.6/a1427u1at89c51s-setm-seth-seta02b018a13b117a24b216a35b315a46b414a57b513a68b612a79b711ce19ab/ba1u274ls245圖圖 5-15-1 電子鐘仿真電路圖電子鐘仿真電路圖5.25.2 調試和運行調試和運行 在 keil (單片機匯編) c51 軟件中編寫好的程序,將程序放入單片機仿真軟件中,結合硬件電路進行調試與運行。 通過按鍵對時間進行調整。如顯示時間為 14-30-22,既是 14 點 30 分 22 秒,通過以下調整則可實現。(1)按動
39、s-set 鍵,將秒調到 22;- 24 -(2)按動 m-set 鍵,將分調到 30;(3)按動 h-set 鍵,將時調到 14。 則將時間調到了所要顯示的時間 14-30-22,通過此方法可將時間調整到任何需要顯示的時間。- 25 -第第 6 6 章章 結結 論論 單片機是一門應用性很強的學科,課程設計是培養我們綜合運用所學知識,發現、提出、分析和解決實際問題,鍛煉實踐能力的重要環節,是對我們實際工作能力的具體訓練和考察過程,為自己今后從事與單片機控制系統有關的工作打下了基礎。雖然在做課程設計以前已經系統的把單片機課本認真的學習了一下,但是在剛開始時還是有點一頭霧水,不知道該從哪里下手。令
40、人欣慰的是經過幾周的學習,雖然過程很艱辛,問了很多朋友,但是總算實現了定時鬧鐘的功能,所有的努力都很值得。這幾周的大部分時間都在研究程序怎么處理,在這個過程中加深了我對匯編語言命令的應用,而且也更加了解到軟硬件配套的重要性。以下是我本次單片機課程設計的幾點心得與體會:1. 在設計程序之前,務必要對所學單片機課程的內容有一個系統的了解,知道單片機片內片外的內容及其功能。2. 設計程序采用什么編程語言并不是非常重要,關鍵要有一個清晰的思路和一個完整的軟件流程圖。模塊化的設計思想在程序設計中的作用是十分大的,它可以為你提供一個比較清晰的思路,并且很容易找到頭緒,不至于在設想一個程序時感覺到無從下手。
41、3. 在設計程序時,不能妄想一次就將整個程序設計好,反復修改,不斷改進是程序設計的必經之路。程序剛開始編好時,一般情況下會存在很多錯誤,要不斷地修改,不斷的改進才能達到預期的目的,編寫程序的時間并不是很長,主要是修改程序會花很多時間。4. 要養成注釋程序的好習慣,一個程序的完美與否不僅僅是實現功能,而應該讓人一看就能明白你的思路,這樣也為資料的保存和交流提供了方便。剛開始我在編寫程序時,很不習慣于寫注釋,感覺很麻煩,而且沒用,但是在修改的過程中我就遇到了較大的麻煩,以至于不得不重新的作了注釋,以增加程序的易讀性,從而使修改過程變得容易一些。 總之,通過這次課程設計不僅使我鞏固了本課程所學的基本
42、知識,還使我具有了撰寫設計報告的初步訓練能力,我相信這些能力在我以后的工作或者是再學習中一定會起到不小的作用,看到自己幾周的小成果,感覺一切的辛苦和艱難都是值得的。- 26 -致致 謝謝本文從擬定題目到定稿,經歷了很長一段時間。在本論文完成之際,首先要向我的導師鄒老師致以誠摯的謝意。在論文的寫作過程中,鄒老師給予我許許多多的幫助,鄒老師不厭其煩地為我講解畢業設計中繁瑣的問題,并且多次提出寶貴意見,使我的畢業設計能夠更完整,更充實。同時,還要感謝三年中孜孜不倦的為我們講課的老師們,是他們毫無保留地將他們的知識傳授給我們,才使得今天的我能夠順利的完成我的畢業設計,感謝漯河職業技術學院,是這里給我提
43、供了良好的學習環境和生活環境,讓我的大學生活豐富多彩,讓我對今后的生活更加充滿了信心。另外,衷心感謝我的同窗同學們,在我畢業論文寫作中,與他們的探討交流使我受益頗多;同時,他們也給了我很多無私的幫助和支持,我在此深表謝意!最后,向我親愛的家人和朋友表示深深的謝意,他們給予我的愛、理解、關心和支持是我不斷前進的動力。“懼懷逸興思斗志,欲上青天攬日月?!? 27 -參考文獻參考文獻1.張大明,單片機控制實訓指導及綜合應用實例m。北京:機械工業出版社,2007.2.任萬強。單片機原理與應用m。北京:中國電力出版社,2007. 3.周堅。單片機 c 語言輕松入門m。北京:北京航天航空大學出版社,200
44、6.4.汪德彪,mcs-51 單片機原理及接口技術m,北京:電子工業出版社,2008. 5.張國鋒,單片機原理及應用m,北京:機械工業出版社,2009.6.譚浩強.c 程序設計m.北京:清華大學出版社,19997.陳娟.無刷直流電機的電梯門控制系統研究d.吉林:吉林大學,20068.顧明.無刷直流電機控制系統設計d.大連:大連理工大學,2006 9.楊帆.具有 pid 自整定功能的溫度控制器研究與實現d.大連:大連理工大學,200610.姚劍峰.基于 pwm 技術的電動機模擬器d.天津:天津大學,200611.宋健,姜軍生,趙文亮,孫學巖.基于單片機的直流電機 pwm 調速系統j.農業化研究,
45、2006- 28 -附錄一附錄一 系統原理圖系統原理圖a7a7a6a6a5a5a4a4a3a3a2a2a1a1a0a0s7b7b6b5b4b3b2b1b0s6s5s4s3s2s1s0b0b1b2b3b4b5b6b7s0s1s2s3s4s5s6s7xtal218xtal119ale30ea31psen29rst9p0.0/ad039p0.1/ad138p0.2/ad237p0.3/ad336p0.4/ad435p0.5/ad534p0.6/ad633p0.7/ad732p1.01p1.12p1.23p1.34p1.45p1.56p1.67p1.78p3.0/rxd10p3.1/txd11p3.2
46、/int012p3.3/int113p3.4/t014p3.7/rd17p3.6/wr16p3.5/t115p2.7/a1528p2.0/a821p2.1/a922p2.2/a1023p2.3/a1124p2.4/a1225p2.5/a1326p2.6/a1427u1at89c51s-setm-seth-seta02b018a13b117a24b216a35b315a46b414a57b513a68b612a79b711ce19ab/ba1u274ls245- 29 -附錄二附錄二 元件清單元件清單序號名稱型號規格數量1單片機at89c511 片2譯碼驅動器74ls2451 片3led 數碼管
47、7seg-mpx8-cc-blue1 個4按鍵button3 個5導線若干- 30 -附錄三 程序清單s_setbitp1.0;數字鐘秒控制位m_setbitp1.1;分鐘控制位h_setbitp1.2;小時控制位secondequ30hminuteequ31hhourequ32htcntequ34h org00hsjmpstartorg0bhljmpint_t0 start: movdptr,#tablemovhour,#0;初始化movminute,#0movsecond,#0movtcnt,#0movtmod,#01h ;置 t0 為計數器方式 1movth0,#(65536-50000
48、)/256;定時 50 毫秒movtl0,#(65536-50000)mod 256movie,#82h setb tr0 ;啟動 t0 工作a1: lcall displayjnbs_set,s1jnbm_set,s2jnbh_set,s3ljmpa1s1: - 31 - lcalldelay;去抖動jbs_set,a1incsecond;秒值加 1mova,secondcjnea,#60,j0;判斷是否加到 60 秒movsecond,#0ljmpj0s2: lcalldelay jbm_set,a1k1: incminute;分鐘值加 1mova,minutecjnea,#60,j1;判
49、斷是否加到 60 分movminute,#0ljmpj1s3: lcalldelayjbh_set,a1k2: inchour;小時值加 1mova,hourcjnea,#24,j2;判斷是否加到 24 小時movhour,#0 ljmpj2 j0:jbs_set,a1lcalldisplaysjmpj0j1:jb m_set,a1 lcalldisplay- 32 -sjmpj1j2: jb h_set,a1 lcall displaysjmp j2 int_t0: movth0,#(65536-50000)/256movtl0,#(65536-50000)mod 256inctcntmov
50、a,tcntcjnea,#20,retune;計時 1 秒incsecondmovtcnt,#0mova,secondcjnea,#60,retuneincminutemovsecond,#0mova,minutecjnea,#60,retuneinchourmovminute,#0mova,hourcjnea,#24,retunemovhour,#0 retune: retidisplay: mova,second;顯示秒movb,#10divabclrp3.6movca, a+dptr- 33 -movp0, alcalldelaysetbp3.6mova,bclrp3.7movca,a+
51、dptrmovp0,alcalldelaysetbp3.7clrp3.5movp0,#40h;顯示分隔符lcalldelaysetbp3.5mova,minute;顯示分鐘movb,#10divabclrp3.3movca,a+dptrmovp0,alcalldelaysetbp3.3mova,bclrp3.4movca,a+dptrmovp0,alcalldelaysetbp3.4clrp3.2movp0,#40h;顯示分隔符lcalldelaysetbp3.2 mova,hour;顯示小時movb,#10divab- 34 -clrp3.0movca,a+dptrmovp0,alcalld
52、elaysetbp3.0mova,bclrp3.1movca,a+dptrmovp0,alcalldelaysetbp3.1rettable: db 3fh,06h,5bh,4fh,66hdb6dh,7dh,07h,7fh,6fhdelay: movr6,#10d1:movr7,#250djnzr7,$djnzr6,d1retend- 35 -畢業設計(論文)成績評定表畢業設計(論文)成績評定表系別: 填表日期: 年 月 日學生姓名學號班級設計(論文)題目單片機數字時鐘設計指導教師意見: 指導教師職稱成績- 36 -g an employment tribunal claiemployment
53、 tribunals sort out disagreements between employers and employees.you may need to make a claim to an employment tribunal if:you dont agree with the disciplinary action your employer has taken against youyour employer dismisses you and you think that you have been dismissed unfairly.for more informat
54、ion about dismissal and unfair dismissal, see dismissal.you can make a claim to an employment tribunal, even if you havent appealed against the disciplinary action your employer has taken against you. however, if you win your case, the tribunal may reduce any compensation awarded to you as a result
55、of your failure to appeal.remember that in most cases you must make an application to an employment tribunal within three months of the date when the event you are complaining about happened. if your application is received after this time limit, the tribunal will not usually accept i.if you are wor
56、ried about how the time limits apply to you, take advice from one of the organisations listed under further help.employment tribunals are less formal than some other courts, but it is still a legal process and you will need to give evidence under an oath or affirmation.most people find making a clai
57、m to an employment tribunal challenging. if you are thinking about making a claim to an employment tribunal, you should get help straight away from one of the organisations listed under further help.if you are being represented by a solicitor at the tribunal, they may ask you to sign an agreement wh
58、ere you pay their fee out of your compensation if you win the case. this is known as a damages-based agreement. in england and wales, your solicitor cant charge you more than 35% of your compensation if you win the case.if you are thinking about signing up for a damages-based agreement, you should m
59、ake sure youre clear about the terms of the agreement. it might be best to get advice from an experienced adviser, for example, at a citizens advice bureau. to find your nearest cab, including those that give advice by e-mail, click on nearest cab.for more information about making a claim to an empl
60、oyment tribunal, see employment tribunals.the (lack of) air up there watch mcayman islands-based webb, the head of fifas anti-racism taskforce, is in london for the football associations 150th anniversary celebrations and will attend citys premier league match at chelsea on sunday.i am going to be a
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- xxx企業工傷管理制度
- 分公司區域銷售管理制度
- 公司大廳值班室管理制度
- 公司外貿接待室管理制度
- 加油站模式考勤管理制度
- 化妝品技術部門管理制度
- 辦公室培訓教室管理制度
- 施工材料存放管理制度
- 公司承包制食堂管理制度
- 晉城街道公廁管理制度
- 號樓樁基施工競爭性談判采購
- 中國華電集團公司火電廠煙氣脫硫工程(石灰石-石膏濕法)設計導則(A版)
- 譯林版五下英語作文范文系列一
- 《小學英語小組合作學習的研究》課題結題報告
- 設計失效模式分析報告(DFMEA)
- 事業單位專業技術崗位說明書(小學)
- 廣東省中醫藥文化養生旅游
- 試驗設計與數據處理作業333333
- 樹脂膠水物質資料安全表(MSDS)
- III型軌枕新III型軌枕材料要求課件
- 降低給藥錯誤發生率.pptx
評論
0/150
提交評論