單片機課程設計---六十秒倒計時電路設計_第1頁
已閱讀1頁,還剩7頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、<p>  論文題目: </p><p>  學 院: </p><p>  專 業(yè): </p><p>  年 級: </p><p>  學 號:

2、 </p><p>  學生姓名: </p><p>  指導教師: </p><p><b>  2012年1月2日</b></p><p><b>  單片機課程設計</b></p>

3、<p>  ——六十秒倒計時電路設計</p><p><b>  1 前言</b></p><p>  在生活和生產的各領域中,凡是有自動控制要求的地方都會有單片機的身影出現;從簡單到復雜,從空中、地面到地下,凡是能想像到的地方幾乎都有使用單片的需求?,F在盡管單片機的應用已經很普遍了,但仍有許多可以用單片機控制而尚未實現的項目,因此,單片機的應用大有想像

4、和拓展空間。 單片機的應用有利于產品的小型化、多功能化和智能化,有助于提高勞動效率,減輕勞動強度,提高產品質量,改善勞動環(huán)境,減少能源和材料消耗,保證安全等。 但是,單片機應用的意義絕不僅限于它的廣闊范圍以及所帶來的經濟效益上,更重要的意義還在于:單片機的應用正從根本上改變著傳統(tǒng)的控制系統(tǒng)設計思想和設計方法。從前必須有模擬電路或數字電路實現的大部分功能,現在已能使用單片機通過軟件(編程序)方法實現了。這種以軟件取代硬件并提高系統(tǒng)性能的控

5、制系統(tǒng)“軟化”技術,稱之為微控制技術。微控制技術是一種全新的概念,是對傳統(tǒng)控制技術的一次革命。隨著單片機應用的推廣普及,微控制技術必將不斷發(fā)展、日益完善和更加充實。</p><p>  近年來隨著計算機在社會領域的滲透, 單片機的應用正在不斷地走向深入,同時帶動傳統(tǒng)控制檢測日新月益更新。在實時檢測和自動控制的單片機應用系統(tǒng)中,單片機往往是作為一個核心部件來使用,僅單片機方面知識是不夠的,還應根據具體硬件結構,以及

6、針對具體應用對象特點的軟件結合,以作完善。 模擬多通道壓力系統(tǒng)是利用壓力傳感器采集當前壓力并反映在顯示器上,它可以分析壓力過量程,并發(fā)出報警。并采用電子秤原理可根據輸入單價準確的計算出物體的金額。本篇論文討論了簡單的倒計時器的設計與制作 ,對于倒計時器中的四位LED數碼顯示器來說,我為了簡化線路、降低成本,采用以軟件為主的接口方法,即不使用專門的硬件譯碼器,而采用軟件程序進行譯碼。</p><p>  2課程設計

7、的目的和要求</p><p><b>  2.1目的</b></p><p>  課程設計是單片機課程教學的最后一個環(huán)節(jié),是對學生進行全面的系統(tǒng)的訓練。進行課程設計可以讓學生把學過的比較零碎的知識系統(tǒng)化,真正的能夠把學過的知識落到實處,能夠開發(fā)簡單的系統(tǒng),也進一步激發(fā)了學生再深一步學習的熱情,因此課程設計是必不可少的,是非常必要的。</p><p&

8、gt;  課程設計是提高學生單片機技術應用能力以及文字總結能力的綜合訓練環(huán)節(jié),是配合單片機課程內容掌握、應用得的專門性實踐類課程。通過典型實際問題的實際,訓練學生的軟硬件的綜合設計、調試能力以及文字組織能力,建立系統(tǒng)設計概念,加強工程應用思維方式的訓練,同時對教學內容做一定的擴充。</p><p><b>  2.2要求</b></p><p>  單片機控制的60s

9、倒計時</p><p> ?。?)用單片機AT89C51的定時器實現60s倒計時。本例中用兩位數碼管靜態(tài)顯示倒計時秒值。</p><p> ?。?)用PROTEUS設計,仿真基于AT89c51單片機的60s倒計時實驗。</p><p><b>  目標:</b></p><p>  通過課程設計,使自己深刻理解并掌握基本

10、概念,掌握單片機的基本應用程序設計及綜合應用程序設計的方法。通過做一個綜合性訓練題目,達到對內容的消化、理解并提高解決問題的能力的目的。</p><p><b>  3設計過程</b></p><p><b>  3.1總體設計</b></p><p>  本設計由硬件設計和軟件設計兩部分組成,總電路如下圖所示,硬件設計主

11、要包括單片機芯片選擇,數碼管選擇及晶振,電容,電阻等元器件的選擇及其參數的確定;軟件設計主要是實現60秒倒計時程序的編寫,包括利用中斷實現1秒的定時及60秒的倒計時。</p><p>  具體設計:通過AT89C51型號單片機,由P1和P2兩組I/O引腳分別控制兩個7SEG–COM –ANODE型號數碼管,分十位控制和個位控制,達到顯示60秒倒計時的目的。通過復位電路,在仿真過程中點擊開關實現60復位。</

12、p><p><b>  3.2硬件設計</b></p><p> ?。?)AT89C51的芯片概述</p><p>  AT89C51是一個低功耗,高性能CMOS 8位單片機,片內含4k Bytes ISP(In-system programmable)的可反復擦寫1000次的Flash只讀程序存儲器,器件采用ATMEL公司的高密度、非易失性存儲技

13、術制造,兼容標準MCS-51指令系統(tǒng)及80C51引腳結構,芯片內集成了通用8位中央處理器和ISP Flash存儲單元,功能強大的微型計算機的AT89C51可為許多嵌入式控制應用系統(tǒng)提供高性價比的解決方案。AT89C單片機為很多嵌入式控制系統(tǒng)提供了一種靈活性高且價廉的方案。 其工作電壓在4.5-5V,一般我們選用+5V電壓。?</p><p><b>  主要特性:</b></p>

14、<p>  ?與MCS-51 兼容 </p><p>  ?4K字節(jié)可編程閃爍存儲器 </p><p>  ?壽命:1000寫/擦循環(huán)</p><p>  ?數據保留時間:10年</p><p>  ?全靜態(tài)工作:0Hz-24MHz</p><p>  ?三級程序存儲器鎖定</p><

15、p>  ?128×8位內部RAM</p><p>  ?32可編程I/O線</p><p>  ?兩個16位定時器/計數器</p><p><b>  ?5個中斷源 </b></p><p><b>  ?可編程串行通道</b></p><p>  ?低功耗的

16、閑置和掉電模式</p><p>  ?片內振蕩器和時鐘電路 </p><p><b>  管腳說明:</b></p><p>  1)電源及時鐘引腳(4個)</p><p>  Vcc: 電源接入引腳</p><p><b>  Vss:接地引腳</b></p>

17、<p>  XTAL1:晶振震蕩器接入的一個引腳(采用外部振蕩器時,此引腳接地);</p><p>  XTAL2:晶體振蕩器的另一個引腳(采用外部振蕩器時,此引腳作為外部振蕩器信號的輸入端)。</p><p>  2)控制線引腳(4個)</p><p>  RST/Vpd:復位信號輸入引腳/備用電源輸入引腳;</p><p> 

18、 ALE:地址鎖存允許信號輸出引腳/編程脈沖輸入引腳:</p><p>  EA:內外存儲器選擇引腳/片外EPROM編程電壓輸入引腳;</p><p>  PSEN:外部程序存儲器選通信號輸出引腳。</p><p><b>  3)并行I/O引腳</b></p><p>  P0.0-P0.7:一般I/O口引腳或數據/低

19、位地址總線復用引腳;</p><p>  P1.0-P1.7:一般I/O口引腳;</p><p>  P2.0-P2.7:一般I/O口引腳或高位地址總線引腳;</p><p>  P3.0-P3.7:一般I/O口引腳或第二功能引腳</p><p><b>  振蕩器特性:</b></p><p>

20、  XTAL1和XTAL2分別為反向放大器的輸入和輸出。該反向放大器可以配置為片內振蕩器。石晶振蕩和陶瓷振蕩均可采用。如采用外部時鐘源驅動器件,XTAL2應不接。有余輸入至內部時鐘信號要通過一個二分頻觸發(fā)器,因此對外部時鐘信號的脈寬無任何要求,但必須保證脈沖的高低電平要求的寬度。</p><p> ?。?)LED數碼管顯示器概述</p><p>  本設計中采用的是7SEG–COM –AN

21、ODE型號數碼管,它是一種半導體發(fā)光器件,其基本單元是發(fā)光二極管。</p><p>  數碼管按段數分為七段數碼管和八段數碼管,八段數碼管比七段數碼管多一個發(fā)光二極管單元(多一個小數點顯示);按能顯示多少個“8”可分為1位、2位、4位等等數碼管;按發(fā)光二極管單元連接方式分為共陽極數碼管和共陰極數碼管。共陽數碼管是指將所有發(fā)光二極管的陽極接到一起形成公共陽極(COM)的數碼管。共陽數碼管在應用時應將公共極COM接到

22、+5V,當某一字段發(fā)光二極管的陰極為低電平時,相應字段就點亮。當某一字段的陰極為高電平時,相應字段就不亮。。共陰數碼管是指將所有發(fā)光二極管的陰極接到一起形成公共陰極(COM)的數碼管。共陰數碼管在應用時應將公共極COM接到地線GND上,當某一字段發(fā)光二極管的陽極為高電平時,相應字段就點亮。當某一字段的陽極為低電平時,相應字段就不亮。</p><p><b>  3.3軟件設計</b><

23、/p><p><b>  程序總框圖如下:</b></p><p>  定時/計數器初值計算:</p><p> ?。?)本電路應用TIMER0 MODE 16位計數器的計時中斷法。 </p><p> ?。?)1秒等于1000000微秒,而每一計時脈沖是1微秒,因此需輸入100000個計時脈沖,方可達到1秒的時間。本設計中

24、,設定中斷每次溢出時間50ms。</p><p> ?。?)由上式得知,循環(huán)20次即可達到1秒定時,即: </p><p>  N=t/Tcy=0.05s/0.000001=5000</p><p>  X=65536-5000=15536=3CB0H</p><p> ?。?)由上式得知5000個脈沖,首先需設定TL0=3CH,TH0=0B

25、0H,此時第1次只要輸入5000個脈沖輸入,就會溢出;第2次至第20次,則需每1000000個計時脈沖,定時1秒。</p><p> ?。?)上電時,顯示60,開始倒數計時按下開關實現復位</p><p><b>  軟件程序:</b></p><p>  ORG 0000H</p><p>  AJMP MAI

26、N</p><p>  ORG 0030H</p><p>  MAIN: MOV R2,#60 ;計數初值</p><p>  LOOP1: MOV A,R2 </p><p><b>  MOV B,#10</b></p><p&g

27、t;  DIV AB </p><p>  MOV DPTR,#TABLE </p><p>  MOVC A,@A+DPTR ;查表</p><p>  MOV P1,A ;十位顯示</p><p><b>  MOV A,B</b&g

28、t;</p><p>  MOVC A,@A+DPTR</p><p>  MOV P2,A ;個位顯示</p><p>  MOV R7,#20</p><p>  LOOP0: MOV TMOD,#01H ;置T0工作于方式0</p><p>  MOV TH

29、0,#3CH ;裝入計數初值</p><p>  MOV TL0,#0B0H</p><p>  SETB TR0 ;啟動定時器T0</p><p>  JNB TF0,$ ;TF0=0,等待</p><p>  CLR TF0

30、 ;清TF0</p><p>  DJNZ R7,LOOP0 ;循環(huán)20次</p><p>  DEC R2 ;減一</p><p>  CJNE R2,#0FFH,LOOP1 ;倒計時</p><p>  AJMP MAIN ;復

31、位回到60秒初始</p><p>  TABLE: DB 0C0H,0F9H,0A4H,0B0H</p><p>  DB 99H,92H,82H,0F8H</p><p>  DB 80H,90H,88H,83H</p><p>  DB 0C6H,0A1H,86H,8EH</p><p><b>

32、;  END</b></p><p><b>  4心得體會</b></p><p>  在這次單片機課程設計中,我覺得最大的收獲就是提高了自己的動手及思考解決問題的能力,平常以為很明白的程序,在仿真過程中卻發(fā)現并不是想象的那么簡單,設計的過程中失敗了很多次,但通過自己的不懈努力最終獲得設計的成功!</p><p>  動手時總會感

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論