

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、<p><b> 畢業(yè)論文</b></p><p> 課程設計 :多功能數字鐘 </p><p> 學 院:信息科學與工程學院</p><p> 姓 名:———— </p><p> 班 級:09通1班 </p><
2、p> 學 號:———— </p><p> 指導老師 :—————— </p><p> 時 間 :2012.2.20—3.11 </p><p><b> 摘要</b></p><p> 近年來隨著計算機在社會領域的滲透和大規(guī)模集成電路的發(fā)展,單片
3、機的應用正在不斷地走向深入,由于它具有功能強,體積小,功耗低,價格便宜,工作可靠,使用方便等特點,因此特別適合于與控制有關的系統(tǒng),越來越廣泛地應用于自動控制,智能化儀器,儀表,數據采集,軍工產品以及家用電器等各個領域,單片機往往是作為一個核心部件來使用,在根據具體硬件結構,以及針對具體應用對象特點的軟件結合,以作完善。</p><p> 本次設計中以單片機的發(fā)展過程和發(fā)展方向為背景,介紹了單片機的輸入輸出的工作
4、原理和操作方法,中斷的工作原理和操作方法,74LS245譯碼器的工作原理和與,LED連接的方法。</p><p> 本次做的數字鐘是以單片機(AT89C51)為核心,結合相關的元器件(共陰極LED數碼顯示器、BCD-鎖存/7段譯碼/驅動器74LS245等),再配以相應的軟件,是它具有時,分,秒顯示的功能,并且時,分,秒還可以調整。此次設計電子數字鐘是為了了解電子數字鐘的原理,從而學會制作電子數字鐘。而且通過電子
5、數字鐘的制作進一步的了解各種在制作中用到的中小規(guī)模集成電路的作用及實用方法。通過它可以進一步學習與掌握單片機原理與使用方法。</p><p> 關鍵詞:單片機 AT89C51 共陰極LED數碼顯示器 74LS245譯碼器 </p><p><b> 目錄</b></p><p><b> 摘要- 2
6、-</b></p><p><b> 目錄- 3 -</b></p><p> 第一章 數電字子鐘的背景、意義、應用- 4 -</p><p> 第二章 單片機和數字鐘的基本知識?- 4 -</p><p> 2.1應用知識簡介- 4 -</p><p> 2.2單片
7、機數字鐘的基本原理- 5 -</p><p> 第三章系統(tǒng)硬件電路的設計- 5 -</p><p> 3.1 單片機的基本結構- 5 -</p><p> 3.2 74LS245 引腳圖及功能:- 7 -</p><p> 3.3七段數碼管的引腳圖及使用:- 9 -</p><p> 3.4硬件電
8、路的設計原則- 9 -</p><p> 第四章軟件程序的設計- 11 -</p><p> 4.2 軟件流程圖- 11 -</p><p> 4.2.1 系統(tǒng)軟件設計流程圖- 11 -</p><p> 4.3 定時程序設計- 14 -</p><p> 4.3.1實時時鐘實現的基本方法:- 1
9、4 -</p><p> 4.3.2 實時時鐘程序設計步驟:- 14 -</p><p> 結束語- 21 -</p><p> 參考文獻- 22 -</p><p> 第一章 數電字子鐘的背景、意義、應用 </p><p> 20世紀末,電子技術獲得了飛速的發(fā)展,在其推動下,現代電子產品幾乎滲透了
10、社會的各個領域,有力地推動了社會生產力的發(fā)展和社會信息化程度的提高,同時也使現代電子產品性能進一步提高,產品更新換代的節(jié)奏也越來越快。 時間對人們來說總是那么寶貴,工作的忙碌性和繁雜性容易使人忘記當前的時間。忘記了要做的事情,當事情不是很重要的時候,這種遺忘無傷大雅。但是,一旦重要事情,一時的耽誤可能釀成大禍。</p><p> 目前,單片機正朝著高性能和多品種方向發(fā)展趨勢將是進一步向著CMOS化、低功耗、小體
11、積、大容量、高性能、低價格和外圍電路內裝化等幾個方面發(fā)展。下面是單片機的主要發(fā)展趨勢。單片機應用的重要意義還在于,它從根本上改變了傳統(tǒng)的控制系統(tǒng)設計思想和設計方法。從前必須由模擬電路或數字電路實現的大部分功能,現在已能用單片機通過軟件方法來實現了。這種軟件代替硬件的控制技術也稱為微控制技術,是傳統(tǒng)控制技術的一次革命。</p><p> 單片機模塊中最常見的是數字鐘,數字鐘是一種用數字電路技術實現時、分、秒計時的
12、裝置,與機械式時鐘相比具有更高的準確性和直觀性,且無機械裝置,具有更更長的使用壽命,因此得到了廣泛的使用。</p><p> 數字鐘是采用數字電路實現對.時,分,秒.數字顯示的計時裝置,廣泛用于個人家庭,車站, 碼頭辦公室等公共場所,成為人們日常生活中不可少的必需品,由于數字集成電路的發(fā)展和石英晶體振蕩器的廣泛應用,使得數字鐘的精度,遠遠超過老式鐘表, 鐘表的數字化給人們生產生活帶來了極大的方便,而且大大地擴展
13、了鐘表原先的報時功能。諸如定時自動報警、按時自動打鈴、時間程序自動控制、定時廣播、自動起閉路燈、定時開關烘箱、通斷動力設備、甚至各種定時電氣的自動啟用等,所有這些,都是以鐘表數字化為基礎的。因此,研究數字鐘及擴大其應用,有著非?,F實的意義。 </p><p> 數字鐘已成為人們日常生活中:必不可少的必需品,廣泛用于個人家庭以及車站、碼頭、劇場、辦公室等公共場所,給人們的生活、學習、工作、娛樂帶來極大的方便。由
14、于數字集成電路技術的發(fā)展和采用了先進的石英技術,使數字鐘具有走時準確、性能穩(wěn)定、攜帶方便等優(yōu)點,它還用于計時自動報時及自動控制的領域。 </p><p> 第二章 單片機和數字鐘的基本知識? </p><p><b> 2.1應用知識簡介</b></p><p><b> 51單片機:</b&
15、gt;</p><p> 單片機又稱單片微控制器,它不是完成某一個邏輯功能的芯片,而是把一個計算機系統(tǒng)集成到一個芯片上。作為嵌入式系統(tǒng)控制核心的單片機具有其體積小、功能全、性價比高等諸多優(yōu)點。51 系列單片機是國內目前應用最廣泛的單片機之一,隨著嵌入式系統(tǒng)、片上系統(tǒng)等概念的提出和普遍接受及應用,51 系列單片機的發(fā)展又進入了一個新的階段。在今后很長一段時間內51 系列單片機仍將占據嵌入式系統(tǒng)產品的中低端市場。&
16、lt;/p><p><b> ? 匯編語言:</b></p><p> 匯編語言是一種面向機器的計算機低級編程語言,通常是為特定的計算機或系列計算機專門設計的。匯編語言保持了機器語言的優(yōu)點,具有直接和簡捷的特點,其代碼具有效率高實時性強等優(yōu)點。但是對于復雜的運算或大型程序,用匯編語言編寫將非常耗時。匯編語言可以與高級語言配合使用,應用十分廣泛。</p>
17、<p><b> ? ISP</b></p><p> ISP(In-System Programming)在系統(tǒng)可編程,是當今流行的單片機編程模式,指電路板上的空白元器件可以編程寫入最終用戶代碼,而不需要從電路板上取下元器件。已經編程的器件也可以用ISP 方式擦除或再編程。本次課程設計便使用ISP 方式,直接將編寫好的程序下載到連接好的單片機中進行調試。</p>
18、<p> 2.2單片機數字鐘的基本原理</p><p> 它是利用單片機的內部的定時/計數器工作與定時方式,對機器周期計數形成基準時間(如10ms)然后用另外一個計數器或軟件計數的形式對基準時間進行計數形成秒(如對10ms計數100次),“秒”計數60次“分”,“分”計數60次形成“時”,“時”計數24次滿一天清零,然后通過譯碼器,數碼管把他們的內容在相應的位置顯示出來。在具體的設計時定時器采用中
19、斷方式工作,對時鐘的形成在終中斷序中實現,在主程序只是對定時/計數器的定義初始化,調用顯示程序和控制程序的初始化。另外為了使用的方便,也設計了按鍵,可以通過按鍵對時分秒進行調整,這樣程序就加了按鍵程序。</p><p> 第三章系統(tǒng)硬件電路的設計</p><p> 3.1 單片機的基本結構</p><p> MCS-51單片機內部結構:</p>
20、<p> 8051單片機包含中央處理器、程序存儲器(ROM)、數據存儲器(RAM)、定時/計數器、并行接口、串行接口和中斷系統(tǒng)等幾大單元及數據總線、地址總線和控制總線等三大總線,現在我們分別加以說明:</p><p><b> 中央處理器:</b></p><p> 中央處理器(CPU)是整個單片機的核心部件,是8位數據寬度的處理器,能處理8位二進制數
21、據或代碼,CPU負責控制、指揮和調度整個單元系統(tǒng)協調的工作,完成運算和控制輸入輸出功能等操作。</p><p> 數據存儲器(RAM)</p><p> 8051內部有128個8位用戶數據存儲單元和128個專用寄存器單元,它們是統(tǒng)一編址的,專用寄存器只能用于存放控制指令數據,用戶只能訪問,而不能用于存放用戶數據,所以,用戶能使用的RAM只有128個,可存放讀寫的數據,運算的中間結果或用
22、戶定義的字型表。</p><p> 圖3-1 單片機8051的內部結構</p><p> 程序存儲器(ROM):</p><p> 8051共有4096個8位掩膜ROM,用于存放用戶程序,原始數據或表格。</p><p> 定時/計數器(ROM):</p><p> 8051有兩個16位的可編程定時/計數器,
23、以實現定時或計數產生中斷用于控制程序轉向。</p><p> 并行輸入輸出(I/O)口:</p><p> 8051共有4組8位I/O口(P0、 P1、P2或P3),用于對外部數據的傳輸。</p><p> MCS-51的引腳說明:</p><p> MCS-52系列單片機中的8031、8051及8751均采用40Pin封裝的雙列直
24、接DIP結構,右圖是它們的引腳配置,40個引腳中,正電源和地線兩根,外置石英振蕩器的時鐘線兩根,4組8位共32個I/O口,中斷口線與P3口線復用。現在我們對這些引腳的功能加以說明:</p><p> MCS-51的引腳說明:</p><p> MCS-52系列單片機中的8031、8051及8751均采用40Pin封裝的雙列直接DIP結構,右圖是它們的引腳配置,40個引腳中,正電源和地線
25、兩根,外置石英振蕩器的時鐘線兩根,4組8位共32個I/O口,中斷口線與P3口線復用?,F在我們對這些引腳的功能加以說明:</p><p> 圖3-2 單片機的引腳</p><p> Pin9:RESET/Vpd復位信號復用腳,當8052通電,時鐘電路開始工作,在RESET引腳上出現24個時鐘周期以上的高電平,系統(tǒng)即初始復位。初始化后,程序計數器PC指向0000H,P0-P3輸出口全部為高
26、電平,堆棧指針寫入07H,其它專用寄存器被清“0”。RESET由高電平下降為低電平后,系統(tǒng)即從0000H地址開始執(zhí)行程序。然而,初始復位不改變RAM(包括工作寄存器R0-R7)的狀態(tài),8052的初始態(tài)。 </p><p> 3.2 74LS245 引腳圖及功能:</p><p> 總線驅動器74LS245經常用作三態(tài)數據緩沖器,74LS245為雙向三態(tài)數據緩沖器。單向的內部有8個三態(tài)
27、驅動器,分成兩組,分別由控制端 1G 和2G 控制; 雙向的有16個三態(tài)驅動器,每個方向8個。在控制端 G 有效時( G 為低電平),由DIR端控制驅動方向:DIR為“1”時方向從左到右(輸出允許),DIR為“0”時方向從右到左(輸入允許)。 74LS2
28、45的引腳圖。</p><p> G=0,DIR=0,B->A;G=0, DIR=1, A->B;G=1, DIR=X, X=0或者1,輸入和輸出均為高阻態(tài);高阻態(tài)的含意就是相當于沒有這個芯片</p><p> 74LS245是8路3態(tài) 雙向緩沖驅動,也叫做總線驅動門電路或線驅動。主要使用在數據的雙向緩沖,原來常見于51的數據接口電路,比如,早期電路中,擴展了很多的82
29、55/8155/8251/8253/573等芯片的時候,擔心8031的數據驅動能力不足,就使用一片74LS245作為數據緩沖電路,增強驅動能力;也常見與ISA卡的接口電路.</p><p> 3.3七段數碼管的引腳圖及使用:</p><p><b> 數碼管使用條件:</b></p><p> a、段及小數點上加限流電阻。</p&g
30、t;<p> b、使用電壓:段:根據發(fā)光顏色決定; 小數點:根據發(fā)光顏色決定。</p><p> c、使用電流:靜態(tài):總電流 80mA(每段 10mA);動態(tài):平均電流 4-5mA 峰值電流 100mA</p><p> 上面這個只是七段數碼管引腳圖,其中共陽極數碼管引腳圖和共陰極的是一樣的。</p><p> LED數碼管根據LED的接法不同
31、分為共陰和共陽兩類,了解LED的這些特性,對編程是很重要的,因為不同類型的數碼管,除了它們的硬件電路有差異外,編程方法也是不同的。右圖是共陰和共陽極數碼管的內部電路,它們的發(fā)光原理是一樣的,只是它們的電源極性不同而已。 將多只LED的陰極連在一起即為共陰式,而將多只LED的陽極連在一起即為共陽式。以共陰式為例,如把陰極接地,在相應段的陽極接上正電源,該段即會發(fā)光。當然,LED的電流通常較小,一般均需在回路中接上限流電阻。假如我們將&q
32、uot;b"和"c"段接上正電源,其它端接地或懸空,那么"b"和"c"段發(fā)光,此時,數碼管顯示將顯示數字“1”。而將"a"、"b"、"d"、"e"和"g"段都接上正電源,其它引腳懸空,此時數碼管將顯示“2”。其它字符的顯示原理類同。</p><p&g
33、t; 3.4硬件電路的設計原則</p><p> 在性價比滿足應用系統(tǒng)要求的情況下,選擇更可靠,更熟悉的單片機縮短研制周期。</p><p> 盡可能選擇自己較為熟悉的應用電路,以提高系統(tǒng)的可靠性。</p><p> 單片機內部的資源與外部的擴展資源應在滿足系統(tǒng)設計的基礎上留有余地,為進一步的升級和擴展提供方便。</p><p>
34、應充分的結合軟件方案考慮硬件的結構,通常硬件功能較完善,其相應的軟件程序就簡單,但硬件的成本較高,而功能較低,其相應的軟件就復雜,其實際常用軟件代替硬件來降低成本。</p><p> 整個系統(tǒng)相關的器件盡可能的做到性能相匹配。</p><p> 充分的考慮系統(tǒng)的抗干擾性,如具有抗干擾的單片機并充分的帥選芯片與器件,在電路中采取隔離或屏蔽的措施等。</p><p>
35、; 更具以上的原則我們選擇我們較為熟悉的80c51單片機;為了LED數碼管的顯示和和鍵盤的控制,我們也選擇了74LS245的譯碼器和#1,#2,#3號按鍵作為時鐘的參數修改加一鍵</p><p> #1鍵修改時,按一下時加一</p><p> #2鍵修改分,按一下分加一</p><p> #3鍵修改秒,按一下秒加一</p><p>
36、 時鐘硬件連接圖如下圖所示</p><p> 第四章軟件程序的設計</p><p> 4.1 軟件程序內容</p><p> 本設計的軟件程序包括主程序、中斷子程序、打鈴子程序、時鐘顯示子程序、查詢時間表切換程序和延時子程序等等。另外由于電路中有四個按鍵,還另外設計了防抖動程序來防止干擾。</p><p><b> 4.2
37、軟件流程圖</b></p><p> 4.2.1 系統(tǒng)軟件設計流程圖</p><p> 這次的數字電子鐘設計用到很多子程序,它們的流程圖如下所示。</p><p> 主程序是先開始,然后啟動定時器,定時器啟動后在進行按鍵檢測,檢測完后,就可以顯示時間。</p><p> 圖4-1 主程序流程圖</p><
38、;p> 按鍵處理是先檢測秒按鍵是否按下,秒按鍵如果按下,秒就加1;如果沒有按下,就檢測分按鍵是否按下,分按鍵如果按下,分就加1;如果沒有按下,就檢測時按鍵是否按下,時按鍵如果按下,時就加1;如果沒有按下,就把時間顯示出來。</p><p> 圖4-2 按鍵處理流程圖</p><p> 定時器中斷時是先檢測1秒是否到,1秒如果到,秒單元就加1;如果沒到,就檢測1分鐘是否到,1分鐘
39、如果到,分單元就加1;如果沒到,就檢測1小時是否到,1小時如果到,時單元就加1,如果沒到,就顯示時間。</p><p> 圖4-3 定時器中斷流程圖</p><p> 時間顯示是先秒個位計算顯示,然后是秒十位計算顯示,再是分個位計算顯示,再然后是分十位顯示,再就是時個位計算顯示,最后是時十位顯示。</p><p> 4.3 定時程序設計</p>
40、<p> 單片機的定時功能也是通過計數器的計數來實現的,此時的計數脈沖來自單片機的內部,即每個機器周期產生一個計數脈沖,也就是每經過1個機器周期的時間,計數器加1。如果MCS-52采用的12MHz晶體,則計數頻率為1MHz,即每過1us的時間計數器加1。這樣可以根據計數值計算出定時時間,也可以根據定時時間的要求計算出計數器的初值。MCS-51單片機的定時器/計數器具有4種工作方式,其控制字均在相應的特殊功能寄存器中,通過對特
41、殊功能寄存器的編程,可以方便的選擇定時器/計數器兩種工作模式和4種工作方式。</p><p> 定時器/計數器工作在方式0時,為13位的計數器,由TLX(X=0、1)的低5位和THX的高8位所構成。TLX低5位溢出則向THX進位,THX計數溢出則置位TCON中的溢出標志位TFX.</p><p> 當定時器/計數器工作于方式1,為16位的計數器。本設計師單片機多功能定時器,所以MCS-
42、51內部的定時器/計數器被選定為定時器工作模式,計數輸入信號是內部時鐘脈沖,每個機器周期產生一個脈沖使計數器增1。</p><p> 4.3.1實時時鐘實現的基本方法:</p><p> 時鐘的最小計時單位是秒,但使用定時器的方式1,最大的定時時間也只能達到131ms。我們可把定時器的定時時間定為50ms。這樣,計數溢出20次即可得到時鐘的最小計時單位:秒。而計數20次可以用軟件實現。
43、</p><p> 秒計時是采用中斷方式進行溢出次數的累積,計滿20次,即得到秒計時。從秒到分,從分到時是通過軟件累加并進行比較的方法來實現的。要求每滿1秒,則“秒”單元中的內容加1;“秒”單元滿60,則“分”單元中的內容加1;“分”單元滿60,則“時”單元中的內容加1;“時”單元滿24,則將時、分、秒的內容全部清零。:</p><p> 4.3.2 實時時鐘程序設計步驟:</p
44、><p> ?。?)選擇工作方式,計算初值;</p><p> ?。?)采用中斷方式進行溢出次數累計;</p><p> ?。?)從秒——分——時的計時是通過累加和數值比較實現的;</p><p> (4)時鐘顯示緩沖區(qū):時鐘時間在方位數碼管上進行顯示,為此在內部</p><p> RAM中要設置顯示緩沖區(qū),共6個地址
45、單元。顯示緩沖區(qū)從左到右依次存放時、分、秒數值;</p><p> ?。?)主程序:主要進行定時器/計數器的初始化編程,然后反復調用顯示</p><p> 子程序的方法等待中斷的到來。</p><p> (6)中斷服務程序:進行計時操作</p><p> ?。?)加1子程序:用于完成對時、分、秒的加操作,中斷服務程序在秒、</p&g
46、t;<p> 分、時加1時共有三種條調用加1子程序,包括三項內容:合字、加1并進行十進制調整、分字。</p><p><b> 源程序如下:</b></p><p> S_SETBITP1.0;數字鐘秒控制位</p><p> M_SETBITP1.1;分鐘控制位</p>
47、<p> H_SETBITP1.2;小時控制位</p><p> SECONDEQU30H</p><p> MINUTEEQU31H</p><p> HOUREQU32H</p><p> TCNTEQU34H</p><p><b> OR
48、G00H</b></p><p> SJMPSTART</p><p><b> ORG0BH</b></p><p> LJMPINT_T0</p><p> START:MOVDPTR,#TABLE</p><p> MOVHOUR,#0
49、;初始化</p><p> MOVMINUTE,#0</p><p> MOVSECOND,#0</p><p> MOVTCNT,#0</p><p> MOVTMOD,#01H</p><p> MOVTH0,#(65536-50000)/256;定時50毫秒</p>
50、<p> MOVTL0,#(65536-50000)MOD 256</p><p> MOVIE,#82H</p><p><b> SETBTR0</b></p><p> ;****************************************************</p><p
51、> ;判斷是否有控制鍵按下,是哪一個鍵按下</p><p> A1:LCALLDISPLAY</p><p> JNBS_SET,S1</p><p> JNBM_SET,S2</p><p> JNBH_SET,S3</p><p><b> LJMPA1&
52、lt;/b></p><p> S1:LCALLDELAY;去抖動</p><p> JBS_SET,A1</p><p> INCSECOND;秒值加1</p><p> MOVA,SECOND</p><p> CJNEA,#60,J0;判斷是否加到60秒</p&g
53、t;<p> MOVSECOND,#0</p><p><b> LJMPK1</b></p><p> S2:LCALLDELAY</p><p> JBM_SET,A1</p><p> K1:INCMINUTE;分鐘值加1</p><p>
54、MOVA,MINUTE</p><p> CJNEA,#60,J1;判斷是否加到60分</p><p> MOVMINUTE,#0</p><p><b> LJMPK2</b></p><p> S3:LCALLDELAY</p><p> JBH_SET,A1&
55、lt;/p><p> K2:INCHOUR;小時值加1</p><p> MOVA,HOUR</p><p> CJNEA,#24,J2;判斷是否加到24小時</p><p> MOVHOUR,#0</p><p> MOVMINUTE,#0</p><p>
56、MOVSECOND,#0</p><p><b> LJMPA1</b></p><p> ;****************************************************</p><p><b> ;等待按鍵抬起</b></p><p> J0:JB
57、S_SET,A1</p><p> LCALLDISPLAY</p><p><b> SJMPJ0</b></p><p> J1:JBM_SET,A1</p><p> LCALLDISPLAY</p><p><b> SJMPJ1</b>&l
58、t;/p><p> J2:JBH_SET,A1</p><p> LCALLDISPLAY</p><p><b> SJMPJ2</b></p><p> ;***********************************************</p><p> ;定時
59、器中斷服務程序,對秒,分鐘和小時的計數</p><p> INT_T0:MOVTH0,#(65536-50000)/256</p><p> MOVTL0,#(65536-50000)MOD 256</p><p><b> INCTCNT</b></p><p> MOVA,TCNT<
60、;/p><p> CJNEA,#20,RETUNE;計時1秒</p><p> INCSECOND</p><p> MOVTCNT,#0</p><p> MOVA,SECOND</p><p> CJNEA,#60,RETUNE</p><p> INCMINU
61、TE</p><p> MOVSECOND,#0</p><p> MOVA,MINUTE</p><p> CJNEA,#60,RETUNE</p><p><b> INCHOUR</b></p><p> MOVMINUTE,#0</p><p
62、> MOVA,HOUR</p><p> CJNEA,#24,RETUNE</p><p> MOVHOUR,#0</p><p> MOVMINUTE,#0</p><p> MOVSECOND,#0</p><p> MOVTCNT,#0</p><p&g
63、t; RETUNE:RETI</p><p> ;******************************************</p><p><b> ;顯示控制子程序</b></p><p> DISPLAY:MOVA,SECOND;顯示秒</p><p> MOVB,#10</p
64、><p><b> DIVAB</b></p><p><b> CLRP3.6</b></p><p> MOVCA,@A+DPTR</p><p><b> MOVP0,A</b></p><p> LCALLDELAY<
65、/p><p><b> SETBP3.6</b></p><p><b> MOVA,B</b></p><p><b> CLRP3.7</b></p><p> MOVCA,@A+DPTR</p><p><b> MOV
66、P0,A</b></p><p> LCALLDELAY</p><p><b> SETBP3.7</b></p><p><b> CLRP3.5</b></p><p> MOVP0,#40H;顯示分隔符</p><p> LC
67、ALLDELAY</p><p><b> SETBP3.5</b></p><p> MOVA,MINUTE;顯示分鐘</p><p> MOVB,#10</p><p><b> DIVAB</b></p><p><b> CLR
68、P3.3</b></p><p> MOVCA,@A+DPTR</p><p><b> MOVP0,A</b></p><p> LCALLDELAY</p><p><b> SETBP3.3</b></p><p><b>
69、MOVA,B</b></p><p><b> CLRP3.4</b></p><p> MOVCA,@A+DPTR</p><p><b> MOVP0,A</b></p><p> LCALLDELAY</p><p><b>
70、; SETBP3.4</b></p><p><b> CLRP3.2</b></p><p> MOVP0,#40H;顯示分隔符</p><p> LCALLDELAY</p><p><b> SETBP3.2</b></p><p&g
71、t; MOVA,HOUR;顯示小時</p><p> MOVB,#10</p><p><b> DIVAB</b></p><p><b> CLRP3.0</b></p><p> MOVCA,@A+DPTR</p><p><b&g
72、t; MOVP0,A</b></p><p> LCALLDELAY</p><p><b> SETBP3.0</b></p><p><b> MOVA,B</b></p><p><b> CLRP3.1</b></p>
73、<p> MOVCA,@A+DPTR</p><p><b> MOVP0,A</b></p><p> LCALLDELAY</p><p><b> SETBP3.1</b></p><p><b> RET</b></p>&
74、lt;p> TABLE: DB 3FH,06H,5BH,4FH,66H</p><p> DB6DH,7DH,07H,7FH,6FH</p><p> DELAY:MOVR6,#10</p><p> D1:MOVR7,#250</p><p><b> DJNZR7,$</b>
75、</p><p> DJNZR6,D1</p><p><b> RET</b></p><p><b> END</b></p><p> 調試結果如下圖所示:</p><p><b> 結束語</b></p><p&g
76、t; 做了一周的數字鐘課程設計,讓我感受頗深,有關于單片機知識的,但更多是團隊和合作。</p><p> 我們小組一共5個人,人多,分工就顯得很重要,在我們的集體的討論之下,我得到了設計硬件電路和總體調試的任務,當時讓我感到很有壓力。因為我們平時接觸的都是純粹理論的東西,做實驗也是霧里看花,對硬件的認識是很缺乏的。</p><p> 一回來我就去圖書館查閱的大量的單片機和數字芯片的資
77、料,由于資料比較分散,所以整理有用的資料</p><p> 就顯得很重要,有些東西實在是不懂我就把資料帶回來請教同學,讓我受益匪淺。然后在硬件電路的設計中,由于要涉及軟件設計的具體情況,又和組員共同討論,最終確定了一個大家都可以接受的方案。</p><p> 當時感覺這下任務該完成了,沒有想到的是在實際的調試中更是遇到了太多的麻煩。</p><p> 我們拿著
78、設計好的電路接線圖和設計的程序去實驗室調試,第一次就給了我們致命的打擊,設計的功能</p><p> 全沒有實現,只有數碼管一滅一亮的循環(huán),其它的計時、調試、都沒有現象,當時由于沒有一些元件沒當時只是對程序進行了修改,但還是沒有明顯的效果,就垂頭喪氣的回來反復的去調試,可效果還是一個樣。眼看著就要到演示的時間了,可我們的成果卻沒有很大的改觀,當然之所以現在時間這么緊迫和我們剛開始低估課題有很大的關系,我記得都已
79、經是星期四的中午了還沒有弄好,我們一直都是在程序上面做修改卻沒有想到是電路的問題,這個問題還是我們的組員在無意見提出來的,當時我眼前一亮,對啊,</p><p> 為什么不改改電路呢,這下我們五個人集中力量對電路排查,終于找到了問題之所在?。∥覀儼?4LS47換成74LS245后,調試結果馬上就對了?,F在想想我們的這個結果來的卻是不容易啊!這與我們組成員的認真、團結十分不開的。當然更重要的是老師的指導?。?lt
80、;/p><p><b> 參考文獻</b></p><p> 《單片機原理及應用》 姜志海 電子工業(yè)出版社</p><p> 《電子技術基礎試驗》 陳大欽 高等教育出版社</p><p> 《C程序設計》 潭浩強 北京航空航天出版社</p><p> 《電路基礎》 許熙
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 畢業(yè)論文——多功能數字鐘
- 畢業(yè)論文多功能數字鐘
- 單片機多功能數字鐘畢業(yè)論文
- 單片機畢業(yè)論文----多功能數字鐘
- 多功能數字鐘的設計與制作-畢業(yè)論文
- 畢業(yè)論文:關于多功能數字鐘電路設計
- 畢業(yè)論文:關于多功能數字鐘電路設計
- 多功能數字鐘論文設計
- 多功能數字鐘畢業(yè)設計
- 數字鐘畢業(yè)論文
- 基于at89s52的多功能數字鐘畢業(yè)論文
- 畢業(yè)設計論文—多功能數字鐘的設計論文
- 電子數字鐘畢業(yè)論文
- 數字電路多功能數字鐘畢業(yè)設計
- 畢業(yè)論文---數字鐘設計
- 數字鐘設計畢業(yè)論文
- 多功能數字鐘課程設計
- 課程設計-- 多功能 數字鐘
- 數字鐘的設計畢業(yè)論文
- 多功能數字鐘設計[文獻綜述]
評論
0/150
提交評論