微機原理課程設計---溫度采集系統(tǒng)報告_第1頁
已閱讀1頁,還剩21頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、<p>  《微機原理及接口技術》</p><p><b>  課程設計報告</b></p><p>  題目:溫度采集系統(tǒng)軟硬件設計</p><p>  學 院: </p><p>  專 業(yè): 通信工程 </p>

2、<p><b>  小組成員: </b></p><p>  指導教師: </p><p>  日 期: 2011 年 6 月 10 日</p><p><b>  目 錄</b></p><p>  1、設計目的 ……………………………

3、……………………3</p><p>  2、所用元器件…………………………………………3</p><p>  3、設計內容及步驟………………………………………3</p><p>  3.1 設計要求……………………………………………3</p><p>  3.2 任務分工……………………………………………3</p>&l

4、t;p>  3.3 系統(tǒng)總體方案………………………………………4</p><p>  4、軟件模塊設計…………………………………………4</p><p>  4.1溫度采集及轉換模塊………………………………4</p><p>  4.2溫度顯示子程序流程圖……………………………5</p><p>  4.3系統(tǒng)總流程圖………………

5、……………………6</p><p>  4.4系統(tǒng)總程序………………………………………7</p><p>  5、硬件模塊設計………………………………………11</p><p>  5.1溫度采集處理模塊…………………………………11</p><p>  5.2 A/D轉換模塊……………………………………12</p><

6、;p>  5.3 8088的工作原理……………………………………14</p><p>  5.4并行接口8255模塊…………………………………16</p><p>  5.5 LED顯示模塊…………………………………………19</p><p>  6、心得體會…………………………………………………20</p><p>  7、參考

7、文獻…………………………………………………21</p><p>  附:溫度采集系統(tǒng)總電路圖</p><p><b>  1、設計目的</b></p><p>  1)查資料了解8255A和ADC0809A/D轉換器的工作原理</p><p>  2)原理圖設計,用PROTEL畫出原理圖</p><

8、p>  3)軟件設計,給出流程圖及源代碼并加注釋</p><p><b>  2、所用元器件</b></p><p>  1)溫度傳感器 LM355 5)CPU8088</p><p>  2)放大器 LM301A 6)數字顯示器LED&l

9、t;/p><p>  3)A/D轉換器 ADC0809 7)電阻</p><p>  4)可編程并行接口 8255A 8)電容</p><p><b>  3、設計內容及步驟</b></p><p><b>  3.1 設計要求&l

10、t;/b></p><p>  以8088 CPU 為核心設計一個溫度采集系統(tǒng),系統(tǒng)可以實現一路溫度的采集,在3位LED顯示器上顯示當前溫度。本設計所用器件主要有傳感器,A/D轉換器,8088CPU,可編程并行接口8255,LED顯示器等。首先傳感器把所測的溫度轉換為電壓,輸入A/D轉換器中進行轉換,然后再把得到的二進制數經過CPU在LED上顯示出來。</p><p><b&g

11、t;  3.2 任務分工</b></p><p>  3.3 系統(tǒng)總體方案</p><p>  按照設計要求,我們選擇溫度傳感器LM335,A/D轉換器ADC0809,把溫度傳感器采集過來的電壓信號放大后直接傳給A/D 轉換器,然后通過8路數據接入8255可編程芯片,經微處理器8088處理后輸出,通過LED顯示當前采集的溫度值。</p><p>&l

12、t;b>  圖3-1 系統(tǒng)框圖</b></p><p><b>  4、軟件模塊設計</b></p><p>  程序的主要功能是負責溫度的轉化,讀出處理并實現在LED上實時顯示。 </p><p>  4.1溫度采集及轉換模塊</p><p>  傳感器把所測的溫度轉換為電壓信號,放大后輸入A/D轉換

13、器中進行轉換。</p><p><b>  流程圖如下:</b></p><p>  圖4.1溫度采集及轉換模塊流程圖</p><p>  4.2溫度顯示子程序流程圖</p><p>  得到的二進制數通過8路數據接入8255可編程芯片,經微處理器8088處理后輸出,通過LED顯示當前采集的溫度值。</p>

14、<p><b>  流程圖如下:</b></p><p>  圖4.2 溫度顯示子程序流程圖</p><p><b>  4.3系統(tǒng)總流程圖</b></p><p>  圖4.3系統(tǒng)總流程圖</p><p><b>  4.4系統(tǒng)總程序</b></p>

15、<p>  DATA SEGMENT</p><p>  BUF1 DB ?</p><p>  BUF2 DW ?</p><p>  BUF3 DW ?</p><p>  LED DB 28H,32H,1EH,14H,0AH,2DH,46H,50H,3CH,64H</p><

16、p>  DATA ENDS</p><p>  STACK SEGMENGT</p><p>  STA1 DW ?</p><p>  STACK ENDS</p><p>  CODE SEGMENT</p><p>  ASSUME CS:CODE,DS:DATA,ES:DATA

17、,SS:STACK</p><p>  EN_8255 PROC NEAR ;以下是數據采集部分 </p><p>  MOV DX,37BH</p><p>  MOV AL,91H ;A,B,C均為方式0,A入B出CL入</p><p>  OUT DX,

18、AL</p><p><b>  RET</b></p><p>  EN_8255 ENDP</p><p>  START: MOV AX,DATA</p><p>  MOV DS,AX ;初始化數據段</p><p>  MOV ES,AX

19、 ;初始化附加段</p><p>  MOV AX,STACK</p><p>  MOV SS,AX ;初始化堆棧段</p><p>  LEA SI,BUF1 ;將BUF1的物理地址給了SI</p><p>  CALL EN_8255 ;調用初

20、始化8255程序</p><p>  MOV BL,0 ;通道號,初始指向第0路</p><p>  MOV CX,1 ;共采集1次</p><p>  AGAIN: MOV AL,BL</p><p>  MOV DX,379H ;送通道地址(B口)<

21、/p><p>  OUT AX,AL</p><p>  OR AL,10H ;AL中的bite4置1,其余位不變</p><p>  OUT DX,AL ;送ALE信號(上升沿)</p><p>  AND AL,0EFH ;AL中bite4置0,其余位不變&

22、lt;/p><p>  OUT DX,AL ;輸出START信號(下降沿)</p><p>  NOP ;空操作等待轉換</p><p>  MOV DX,37AH ;C口</p><p>  WAIT1: IN AL,DX

23、 ;讀EOC狀態(tài)</p><p>  AND AL,0H    ?。蛔畹臀磺澹?,其余位不變</p><p>  JZ WAIT1 ;若EOC為低電平則等待</p><p>  MOV DX,379H ;B口</p><p>  MOV AL,BL</p>

24、<p>  OR AL,20H ;AL中的bite5置1,其余位不變</p><p>  OUT DX,AL ;EOC端為高電平則輸出讀允許信號</p><p><b>  OE=1</b></p><p>  MOV DX,378H    ??;A口</p>

25、<p>  IN AL,DX ;讀入轉換結果</p><p>  MOV [SI],AL ;把轉換的數字量送存儲器</p><p>  MOV DX,379H     ;B口</p><p>  MOV AL,0</p><p>  OUT DX,AL

26、 ;若完成數據采集則回到初始狀態(tài)</p><p>  START2: MOV AX,[SI] ;以下程序是把二進制轉化為壓縮</p><p><b>  BCD碼</b></p><p>  LEA SI,BUF2</p><p>  LEA DI,BUF3<

27、;/p><p>  XOR DX,DX ;將DX清0 </p><p>  MOV CX,OAH ;基數10</p><p>  DIV CX</p><p>  CMP AL,0 ;商=0?</p><p>  JNZ NEXT1

28、 ;不相等則跳到NEXT1</p><p>  MOV [DI],AL ;相等就存結果</p><p>  NEXT1: MOV [DI],DL</p><p>  DIV CX</p><p>  CMP AL,0</p><p>  JNZ

29、 NEXT2</p><p>  INC DI</p><p>  MOV [DI],AL</p><p>  NEXT2: MOV DL,0</p><p>  DIV CX</p><p>  INC DI</p><p>  MOV

30、[DI],DL</p><p>  INC DI</p><p>  MOV [DI],AL</p><p>  DON: MOV AX,[DI+1] ;這小段是把擴展二進制轉化為壓縮</p><p><b>  BCD碼</b></p><p>  MOV

31、 CF,0</p><p>  MOV CL,4      </p><p>  ROL AX,[DI]    ??;不帶CF的循環(huán)左移</p><p>  ADC AX,[DI]</p><p>  ADD DI,2</p><p>  MOV DX,[DI]&l

32、t;/p><p>  SAL DX,CL     ;數據邏輯左移</p><p>  MUL DX,10H</p><p>  ADC DX,AX</p><p>  MOV [DI],DX</p><p><b>  RET</b></p>&l

33、t;p>  DISP1: PROC NEAR ;這段是顯示子程序</p><p>  LEA BL,LED</p><p>  MOV AL,[DI]</p><p>  LEA BX,TAB</p><p>  XLAT TAB</p><p

34、>  CMP AL,BL</p><p>  JNZ DISP3</p><p>  OUT 0FF01H</p><p>  DISP3: INC DI </p><p>  JMP DISP1</p><p>  TAB

35、 28H,32H,1EH,14H,0AH,2DH,46H,50H,3CH,64H,00H,40H</p><p><b>  REP</b></p><p>  START3: MOV DX,0FF03H ;以下是溫度實時顯示部分</p><p>  MOV AL,91H</p><p&

36、gt;  OUT DX,AL</p><p>  DON: MOV DX,FF00H    </p><p>  IN AL,DX     ??;A口輸入</p><p>  JNZ DON</p><p>  MOV DX,0FF01H</p><p>  CALL DISP1

37、 ;調用顯示子程序</p><p>  OUT DX,AL</p><p>  CALL DELAY ;調用延時子程序</p><p>  EXIT: MOV AH,4CH</p><p>  INT 21H </p><p>  DE

38、LAY: PROC NEAR ;延時子程序</p><p>  MOV CX,150000</p><p>  DELAY1: LOOP DELAY1 </p><p><b>  REP</b></p><p>  CODE ENDS<

39、/p><p>  END START </p><p>  5、硬件模塊設計和原理圖</p><p>  系統(tǒng)底層電路的功能主要包括:溫度測試及其相關處理,實時顯示溫度信息。</p><p>  5.1 溫度采集處理模塊</p><p>  本設計所選的溫度傳感器為LM335系列電壓輸出集成溫度傳感器,此

40、傳感器的工作溫度范圍為-10~100攝氏度,作為一個電壓源,當工作電流在0.4~5mA范圍內變化時,并不影響傳感器的性能,因為它的動態(tài)電阻小于1歐姆,如果在25攝氏度下標定,在100度寬的溫度范圍內誤差小于1攝氏度,具有良好的輸出線性。它的工作原理圖如圖4.1所示:</p><p>  圖 5.1 電壓型集成溫度傳感器原理圖</p><p>  圖5.2溫度傳感器電路圖</p>

41、<p>  5.2 A/D轉換模塊</p><p>  本模塊采用ADC0809進行轉換, ADC0809包括一個8位的逼近型的ADC部分,并提供一個8通道的模擬多路開關和聯合尋址邏輯。用它可直接輸入8個單端的模擬信號,分時進行A/D轉換,在多點巡回監(jiān)測、過程控制等領域中使用非常廣泛。</p><p>  5.2.1 ADC0809的主要技術指標</p>

42、<p>  8通道(8路)輸入,8位字長,逐位逼近型,轉換時間100μs內置三態(tài)輸出緩沖器</p><p>  5.2.2 ADC0809的主要引腳功能</p><p>  D7~D0:輸出數據線(三態(tài)) EOC:轉換結束狀態(tài)輸出 </p><p>  IN0~IN7:8通道(路)模擬輸入 OE:輸出允許(打開輸出三態(tài)門) <

43、;/p><p>  ADDA、ADDB、ADDC:通道地址 CLK:時鐘輸入(10KHz~1.2MHz)</p><p>  ALE:通道地址鎖存 START:啟動轉換</p><p>  圖 5.3 ADC0809引腳圖</p><p>  圖5.4 A/D轉換電路圖</p><p&

44、gt;  5.3 8088CPU的工作原理</p><p>  5.3.1 8088CPU的主要技術指標 </p><p><b>  分辨率:8位 </b></p><p><b>  單電源:+5V </b></p><p>  總的不可調誤差:±1LSB  </p>

45、<p>  轉換時間:取決于時鐘頻率 </p><p>  模擬輸入范圍:單極性0~5V </p><p>  時鐘頻率范圍:10KHZ~1280KHZ</p><p>  5.3.2 8088CPU的主要引腳功能</p><p>  8088CPU采用DIP 40 (雙列直插40腳)封裝,為了減少引腳數,部分引腳采用分時復用

46、方式,即在不同時間傳送不同的信息;還有一些引腳的功能因CPU的工作方式(最小方式/最大方式)的不同而不同。 </p><p>  地址總線和數據總線:</p><p>  地址和數據分時使用引腳,共占20根引腳。 </p><p>  20根地址總線,用于輸出CPU要訪問的內存單元(或I/O端口)的地址,為三態(tài)輸出信號;(與數據和狀態(tài)線復用)</p>

47、<p>  16根數據總線,用來在CPU與內存(或I/O端口)之間傳送數據,為三態(tài)雙向信號。(與低16位地址線復用)</p><p>  AD15~AD0——地址/數據總線 A19/S6~A16/S3——地址/狀態(tài)線 </p><p>  圖5.5 8088CPU引腳圖</p><p><b>  控制總線:</b>

48、</p><p>  MN/MX——工作方式選擇控制線,用來控制8088的工作方式。MN/MX接+5V,最小方式,由8088提供系統(tǒng)所需要的全部控制信號,用來構成單處理機系統(tǒng);MN/MX接地,最大方式,系統(tǒng)部分總線控制信號由專用的總線控制器8088提供,該方式用于多處理機系統(tǒng)。</p><p>  與工作方式無關的控制線:</p><p>  RD——讀控制信號

49、 READY——準備好信號</p><p>  RESET——復位信號 INTR——可屏蔽中斷請求</p><p>  NMI——不可屏蔽中斷請求 TEST——測試信號</p><p>  BHE/S7——數據總線高8位允許/狀態(tài)S7信號</p><p&

50、gt;  MN/MX——工作方式選擇 ALE——地址鎖存允許</p><p>  DEN——數據傳送允許 DT/R——數據發(fā)送/接收信號</p><p>  M/IO——存儲器/輸入輸出選擇信號 WR——寫控制信號</p><p>  INTA——中斷響應信號 H

51、OLD——總線請求信號</p><p>  HLDA——總線響應信號 LOCK——總線鎖定信號</p><p>  RQ/GT1和RQ/GT0——總線請求響應 CLK——時鐘信號</p><p>  Vcc——電源(輸入)接+5V電源 GND——地線</p><p>  5.4 并行接口82

52、55模塊</p><p>  5.4.1 8255引腳功能</p><p>  RESET——復位輸入線 </p><p><b>  CS——片選信號線</b></p><p>  WR——寫入信號 </p><p>  D

53、0~D7——三態(tài)雙向數據總線 </p><p>  PA0~PA7——端口A輸入輸出線 </p><p>  PB0~PB7——端口B輸入輸出線 </p><p>  PC0~PC7——端口C輸入輸出線 </p><p>  A0~A1——口地址選擇信號線</p><p>  圖5.6 825

54、5A引腳圖</p><p>  5.4.2 8255的工作方式</p><p>  8255A有三種工作方式,用戶可以通過編程來設置。</p><p>  方式0――簡單輸入/輸出――查詢方式;A,B,C三個端口均可,最為常用。</p><p>  方式1――選通輸入/輸出――中斷方式;A ,B,兩個端口均可。</p><

55、;p>  方式2――雙向輸入/輸出――中斷方式。只有A端口才有。</p><p>  方式0為一種簡單的輸入/輸出方式,沒有規(guī)定固定的應答聯絡信號,可用A,B,C三個口的任一位充當查詢信號,其余I/O口仍可作為獨立的端口和外設相連。即:PA0—PA7,PB0—PB7,PC0—PC7均可作為I/O線使用,沒有限制一定傳送什么信號;口A、口B、口C高4位和口C低4位可以分別設定為輸入口或輸出口。方式0的應用場合

56、有兩種:一種是同步傳送;一種是查詢傳送。</p><p>  方式1,在這種方式下,A口和B口仍作為數據的輸入和輸出口,同時還要利用C口的某些位作為控制和狀態(tài)信號。</p><p>  方式2 ,這種工作方式只有A口才有。在A口工作于雙向輸入輸出方式時,要利用C口的5條線才能實現。此時,B口只能工作在方式0或方式1,而C口剩下的3條線可作為輸入輸出線使用或作為B口方式1之下的控制線。<

57、;/p><p><b>  方式控制字:</b></p><p>  方式控制字決定了8255的工作方式。8255的控制字由8位二進制書構成:</p><p>  表5.1 8255控制字</p><p>  D7: 功能控制 (0:位操作;1:方式選擇)</p><p>  D6 D5:方式選擇(

58、00:方式0; 01:方式1; 1X:方式2;)</p><p>  D4:控制A口8位(0:輸出; 1:輸入)</p><p>  D3:控制C口高四位(0:輸出; 1:輸入)</p><p>  D2:方式選擇(0:方式0;1:方式1)</p><p>  D1:控制B口8位(0:輸出; 1:輸入)</p><p&

59、gt;  D0:控制C口低四位 (0:輸出; 1:輸入)</p><p>  8255工作之前軟件上必須初始化,即將方式控制字寫入控制字寄存器中,以指定端口的工作方式。</p><p>  口C的按位置/復位控制字:</p><p>  只有C口才有,它是通過向控制口寫入按指定位置位/復位的控制字來實現的。C口的這個功能可用于設置方式1的中斷允許,可以設置外設的啟/

60、停等。</p><p>  圖5.7 8255與8088連接電路圖</p><p>  5.5 LED顯示模塊</p><p>  數據顯示用3片LED數碼管,LED數碼管(LED Segment Displays)是由多個發(fā)光二極管封裝在一起組成“8”字型的器件,LED數碼管根據LED的接法不同分為共陽極的LED數碼管、共陰極的LED數碼管兩種。下圖5.8例

61、舉的是共陽極的LED數碼管,共陽就是7段的顯示字碼共用一個電源的正極。圖5.9為LED顯示電路圖。</p><p>  圖5.8 共陽極LED數碼管的內部結構原理圖</p><p>  圖5.9 溫度顯示電路</p><p><b>  6、心得體會</b></p><p>  通過幾天的課程設計,我們進一步熟悉了課本知

62、識并提高運用理論知識去分析,解決實際問題的能力,熟悉了溫度采集系統(tǒng)軟硬件設計過程,實現了程序的基本功能。在程序的設計和編碼過程中,不僅將書本的知識又重新鞏固了一遍,同時還查閱了大量的書籍文獻,提高了自身能力;提高了軟件的設計應用能力和硬件原理認識。在設計過程中,我們齊心協(xié)力,共同探討共同合作,盡管只有三天的時間,對于大型軟硬件結合實驗來講,時間倉促了一些,但我們學到了很多處理問題的基本方法。</p><p>  

63、本次實驗過程中所用到的芯片大多來自于課本,通過本次實驗,加強了對芯片功能的認識、了解,并且基本上掌握了各種芯片的使用方法,擴展了對8255,8088以及LED顯示的功能應用,理論聯系實際,使我們由單純的理論知識上升到實踐的高度。此次實驗給我們提供了一個鍛煉自我的平臺,使我們受益匪淺;也讓我們對微機原理與接口技術有了更深的學習和掌握。</p><p><b>  7、參考文獻</b></

溫馨提示

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

評論

0/150

提交評論