微機原理與單片機課程設計_第1頁
微機原理與單片機課程設計_第2頁
微機原理與單片機課程設計_第3頁
微機原理與單片機課程設計_第4頁
微機原理與單片機課程設計_第5頁
已閱讀5頁,還剩15頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、 新能源與動力工程學院新能源與動力工程學院課程設計報告微機原理與單片機課程設計 專業(yè)電力工程與管理 班級 姓名 學號 指導教師 2015 年 7 月蘭州交通大學新能源與動力工程學院課程設計任務書蘭州交通大學新能源與動力工程學院課程設計任務書課程名稱:課程名稱: 微機原理與單片機課程設計微機原理與單片機課程設計 指導教師(簽名):指導教師(簽名): 班級:班級: 電力工程與管理電力工程與管理12011201 姓名:姓名: 學號:學號: 一、一、課程設計題目課程設計題目基于單片機的溫度警報器的設計二、課程設計使用的原始資料(數據)及設計技術要求:二、課程設計使用的原始資料(數據)及設計技術要求:硬

2、件電路的設計、軟件電路的設計,總體方案的選擇、討論確定。軟件流程圖的設計,硬件電路各部分的設計,程序的軟調試、整機的調試,撰寫設計報告。 三、課程設計的目的三、課程設計的目的通過制作簡易溫度警報器,加深對所學專業(yè)知識的認識,提高對單片機的應用能力,提高收集文獻,資料的能力,從而達到綜合運用所學的知識進行電子產品設計,制作與調試。四、課程設計的主要內容和要求四、課程設計的主要內容和要求(包括原始數據、技術參數、設計要求、工作量要求等) (1)硬件電路的設計、軟件電路的設計。(2)總體方案的選擇、討論確定。(3)軟件流程圖的設計,硬件電路各部分的設計,整機的調試。(4)撰寫設計報告。五、工作進度安

3、排五、工作進度安排時間設計內容要求7 月 6 日熟悉題目、查閱資料,擬定設計方案按要求制定出切實可行的方案7 月 78 日設計硬件電路及軟件程序完成硬件設計及程序設計7 月 910日仿真調試及產品焊接先進行計算機仿真再完成實際焊接7 月 11 日產品整理調試并完成設計報告實現設計要求,報告按要求裝訂成冊7 月 12 日答辯展示產品,并簡明扼要自述五分鐘六、主要參考文獻六、主要參考文獻1.王思明等.單片機原理與應用系統(tǒng)設計M,科學出版社,20122.童詩白、華成英.模擬電子技術基礎M,高等教育出版社,20063.閻石.數字電子技術基礎M,高等教育出版社,2005審核批準意見審核批準意見系主任(簽

4、字)系主任(簽字) 年年月月日日指導教師評語及成績指導教師評語及成績指導教師評語指導教師評語設計過程設計過程(4040)設計報告設計報告(5050)小組答辯小組答辯(1010)總成績總成績(100100)成成績績指導教師簽字指導教師簽字: 年年 月月目目錄錄1 設計原始資料 .21.1 具體題目 .21.2 要完成的內容 .32 系統(tǒng)設計 .32.1 系統(tǒng)功能 .32.2 系統(tǒng)框圖 .33 硬件設計 .33.1 單片機最小系統(tǒng)電路 .33.2 DS18B20 測溫電路 .43.3 報警電路 .43.4 四位數碼管顯示電路 .53.5 報警溫度設定按鍵電路 .63.6 ISP 程序下載接口電路

5、.63.7 電路原材料清單 .63.8 使用工具及儀表清單 .74 軟件設計 .74.1 程序流程圖 .74.2 開機數碼管顯示設置 .84.3 溫度采集電路的設計 .94.4 LED 顯示報警電路的設計 .95 調試過程 .105.1 數碼管顯示亂碼 .105.2 按鍵處理問題 .105.3 DS18B20 時序問題 .105.4 裝配與調試 .10總結.10參考文獻.12附錄.13- 1 -1 1 設計原始資料設計原始資料隨著科學技術日益迅速的發(fā)展,數字監(jiān)控系統(tǒng)已經深入到生活的各個方面。數字溫度計作為數字監(jiān)控系統(tǒng)的重要組成部分發(fā)揮著極其重要的作用。它克服了接觸式溫度計對傳感器的耐熱性能要求

6、比較苛刻的缺點,使溫度計無論在使用范圍還是測量精度上都有了長足的進步。本設計就是在這種廣闊的應用背景下應運而生的。下面就本設計的設計目標和思路進行簡單介紹。1.11.1 具體題目具體題目由于本設計是測溫電路,可以使用熱敏電阻之類的器件利用其感溫效應,在將隨被測溫度變化的電壓或電流采集過來,進行 A/D 轉換后,就可以用單片機進行數據的處理,在顯示電路上,就可以將被測溫度顯示出來,這種設計需要用到 A/D 轉換電路,感溫電路比較麻煩。1.21.2 要完成的內容要完成的內容選定了溫度傳感器之后,再來考慮它的控制內核,因為數字溫度計的設計并不復雜,單片機完全可以處理的了,DSP 是比較高端的控制內核

7、應用成本相對較高,所以選用單片機是即經濟又實惠的選擇。2 2 系統(tǒng)設計系統(tǒng)設計2.12.1 系統(tǒng)功能系統(tǒng)功能本系統(tǒng)利用單片機采集溫度,溫度值精確到小數點一位,用 4 位數碼管顯示溫度值,設置三個按鍵調整報警溫度值,當溫度超出所設定的上下限范圍時,蜂鳴器開始報警。2.22.2 系統(tǒng)框圖系統(tǒng)框圖圖 1 總體設計方框圖溫度傳感器LED 顯示蜂鳴報警dddddddddddddddddddddddddddjin 警復位電路報警電路時鐘振蕩單片機- 2 -3 3 硬件設計硬件設計3.13.1 單片機最小系統(tǒng)電路單片機最小系統(tǒng)電路圖 2 單片機最小系統(tǒng)(1)單片機 9 腳接復位電路,可按復位按鈕 S1 給單

8、片機復位。(2)晶振采用 12MHZ。3.23.2 DS18B20DS18B20 測溫電路測溫電路圖 3 DS18B20 電路- 3 -DS18B20 的 1 腳接地,2 腳數據端接單片機的 P3.4,3 腳接 VCC,為了確保DS18B20 工作可靠,2 腳要接 10K 的上拉電阻。3.33.3 報警電路報警電路圖 4 蜂鳴器電路本系統(tǒng)中采用蜂鳴器報警,由于單片機輸出電流較小,所以用三極管 9013驅動蜂鳴器發(fā)出聲音。3.43.4 四位數碼管顯示電路四位數碼管顯示電路圖 5 數碼管顯示電路- 4 -4 位數碼管為共陽管,由于單片機輸出電流比較小,故用 4 個 PNP 型的三極管 9015 來

9、驅動數碼管。單片機輸出低電平時三極管導通,使數碼管的 4 各公共端 1、4、5 和 12 腳為高電平,此時數碼管的數據端輸入低電平后數碼管被點亮,120 歐電阻 R12 到 R19 為三極管的限流電阻。3.53.5 報警溫度設定按鍵電路報警溫度設定按鍵電路圖 6 按鍵電路報警溫度用按鍵 S2,S3,S4 來設置,S2 為調整鍵,按一次可調整報警上限溫度值,按兩次可調整報警下限溫度值,按三次數碼管恢復到正常溫度顯示。3.63.6 ISPISP 程序下載接口電路程序下載接口電路- 5 -圖 7 下載電路本系統(tǒng)才用 AT89S52 單片機,故可以采用 ISP 方式下載程序。3.73.7 電路原材料清

10、單電路原材料清單序號名稱型號單位數量備注1電阻1K支12電阻200支53傳感器DS18B20支4電阻510支85電阻5.6K支16電阻10K支47晶振12MHz支18普通電容33pF支29電解電容10uF/50V支1105 號電池節(jié)311小按鈕支412三極管9012支4三極管9013支1蜂鳴器支數碼管支單片機AT89C52支3.83.8 使用工具及儀表清單使用工具及儀表清單序號名稱型號單位數量備注萬用表塊內熱式電烙鐵焊錫絲若干直流穩(wěn)壓電源臺編程燒寫器臺導線若干4 4 軟件設計軟件設計- 6 -4.14.1 程序流程圖程序流程圖圖 8 主程序流程圖 圖 9 讀溫度流程圖4.24.2 開機數碼管顯

11、示設置開機數碼管顯示設置/*顯示開機初始化等待畫面*/Disp_init() P2 = 0 xfe; /顯示-P0 = 0 xbf;Delay(200);P0 = 0 xef;Delay(200); P0 = 0 xfb;Delay(200);開始初始化示化獲取溫度值與溫度上下限比較報警轉換并顯示YESY發(fā) DS18B20 復位命令發(fā)跳過 ROM 命令發(fā)讀取溫度命令讀取操作,CRC 校驗9 字節(jié)完?CRC 校驗正?確?移入溫度暫存器結束NNY- 7 -P0 = 0 xfe;Delay(200);P0 = 0 xff; /關閉顯示給單片機上電后,18B20 讀取溫度值需要一定的時間,故上數碼管顯

12、示一定時間的“-” 。4.34.3 溫度采集電路的設計溫度采集電路的設計溫度采集電路部分,采用數字溫度傳感器 DS18B20 進行溫度采集。DS18B20是 DALLAS 公司生產的一線式數字溫度傳感器,具有 3 個引腳;溫度側量范圍為-55+125,測量精度為 0.5;被測溫度用符號擴展的 16 位數字量方式串行輸出;CPU 只需用一個端口線就可以與 DS18B20 通信。溫度采集電路如圖10 所示。圖 10 溫度采集電路4.44.4 LEDLED 顯示報警電路的設計顯示報警電路的設計LED 數碼管與單片機的 P0 口相連,單片機將采集到的溫度值轉化為與數碼管對應的數據,通過 P0 口輸出顯

13、示。即信號通過譯碼管的端口a、b、c、d、e、f、g、dp 端來控制每段譯碼管的亮滅與否,同時通過端口- 8 -1、2、3、4 四個端口來控制四個譯碼管。在本次設計中,用集成芯片 74HC245驅動數碼管。同時當采集到的溫度值超過所設置的范圍時,單片機會輸出一信號,通過三極管放大后驅動蜂鳴器發(fā)出報警信號。5 5 調試過程調試過程5.15.1 數碼管顯示亂碼數碼管顯示亂碼由于 P2 口的 P2.0 到 P2.7 并沒有按照順序和數碼管的 a,b,c,d,e,f,g 相連,所以需要重新編碼,因為用的是共陽數碼管,所以數據端低電平亮,故LEDData=0 x28,0 xeb,0 x32,0 xa2,

14、0 xe1,0 xa4,0 x24,0 xea,0 x20,0 xa0。5.25.2 按鍵處理問題按鍵處理問題由于按鍵采用的是機械按鍵,會發(fā)生抖動,所以程序中要加延時,去抖動。5.35.3 DS18B20DS18B20 時序問題時序問題DS18B20 對于時序要求很嚴格,所以讀寫數據時要嚴格按照時序圖上的時間來編寫程序。5.45.4 裝配與調試裝配與調試圖 11 裝配實物圖- 9 -總結總結本設計的重點在于詳細設計了基于單片機 AT89C51 的溫度監(jiān)控系統(tǒng),并且已經在硬件平臺上成功運行。此系統(tǒng)可廣泛用于溫度在 DSl8820 測溫范圍之內的場合,有良好的應用前景。經過學習,終于完成了我的數字

15、溫度計的設計,雖然沒有完全達到設計要求,但從心底里說,還是比較高興的。過程當中用到的單片機作為控制內核,四段數碼管作為顯示部分,及其他電路,共同組成了我的成果數字溫度計。首先設計的是它的硬件電路,最重要的部分是 89S51 控制內核,所有的數據處理都是采用的單片機,其次是 DS18B20 溫度采集電路,其他還有晶振電路,復位電路,報警點及上下限溫度調整電路。其次我們設計了它的靈魂軟件電路,通過用 C 語言編程實現對器件的控制。從這次的課程設計中,我真真正正的意識到,在以后的學習中,要理論聯系實際,把我們所學的理論知識用到實際當中,不僅使我真正的學會了數字溫度計的設計,而且我相信通過這次的學習我

16、能夠達到舉一反三的效果,同時這次的不足之處是在有些細節(jié)方面剛開始做的很不詳細,我想原因在于自己平時對自己的學習要求的不夠嚴格,才造成遇到一些問題顯得驚慌失措,在日后我會克服這些缺點的。- 10 -參考文獻參考文獻1李朝青. .單片機原理及接口技術. .杭州:北京航空航天大學出版社,19982李廣弟. .單片機基礎M. .北京:北京航空航天大學出版社,19943閻石. .數字電子技術基礎. .北京:高等教育出版社,19894王思明等.單片機原理與應用系統(tǒng)設計M,科學出版社,20125童詩白、華成英.模擬電子技術基礎M,高等教育出版社,20066劉建軍等.電子電工基礎,人民郵電出版社,2011-

17、11 -附錄附錄附錄一附錄一 程序源代碼程序源代碼#include #include DS18B20.h #define uint unsigned int#define uchar unsigned char /宏定義#define SET P1_0 /定義調整鍵#define DEC P1_1 /定義減少鍵#define ADD P1_2 /定義增加鍵#define BEEP P3_4 /定義蜂鳴器bit shanshuo_st; /閃爍間隔標志bit beep_st; /蜂鳴器間隔標志sbit DIAN = P25; /小數點uchar x=0; /計數器signed char m; /

18、溫度值全局變量uchar n; /溫度值全局變量uchar set_st=0; /狀態(tài)標志signed char shangxian=30; /上限報警溫度,默認值為 38signed char xiaxian=20; /下限報警溫度,默認值為 38uchar code LEDData=0 x28,0 xeb,0 x32,0 xa2,0 xe1,0 xa4,0 x24,0 xea,0 x20,0 xa0;/*延時子程序*/void Delay(uint num)while( -num );/*初始化定時器 0*/void InitTimer(void)TMOD=0 x1;TH0=0 x4c;T

19、L0=0 x00; /50ms(晶振 11.0592M)/*定時器 0 中斷服務程序*/void timer0(void) interrupt 1TH0=0 x4c;TL0=0 x00;x+;/*讀取溫度*/void check_wendu(void)- 12 -uint a,b,c;c=ReadTemperature()-5; /獲取溫度值并減去 DS18B20 的溫漂誤差a=c/100; /計算得到十位數字b=c/10-a*10; /計算得到個位數字m=c/10; /計算得到整數位n=c-a*100-b*10; /計算得到小數位if(m99)m=99;n=9; /設置溫度顯示上限 /*顯示

20、開機初始化等待畫面*/Disp_init() P2 = 0 xf7; /顯示-P0 = 0 xbf;Delay(200);P0 = 0 xef;Delay(200); P0 = 0 xfb;Delay(200);P0 = 0 xfe;Delay(200);P0 = 0 xff; /關閉顯示/*顯示溫度子程序*/Disp_Temperature() /顯示溫度P2 =0 x3c; /顯示 CP0 = 0 xbf;Delay(300);P2 =LEDDatan; /顯示個位P0 = 0 xef;Delay(300);P2 =LEDDatam%10; /顯示十位DIAN =0; /顯示小數點P0 =

21、 0 xfb;Delay(300);P2 =LEDDatam/10; /顯示百位P0 = 0 xfe;Delay(300);P0 = 0 xff; /關閉顯示/*顯示報警溫度子程序*/Disp_alarm(uchar baojing)- 13 -P2 =0 x3c; /顯示 CP0 = 0 xbf;Delay(200);P2 =LEDDatabaojing%10; /顯示十位P0 = 0 xef;Delay(200);P2 =LEDDatabaojing/10; /顯示百位P0 = 0 xfb;Delay(200);if(set_st=1)P2 =0 x61;else if(set_st=2)P2 =0 x3d; /上限 H、下限 L 標示P0 = 0 xfe;Delay(200);P0 = 0 xff; /關閉顯示/*報警子程序*/void Alarm()if(x=10)beep_st=beep_st;x

溫馨提示

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

評論

0/150

提交評論