智能儀表綜合課程設計基于單片機的紅外脈沖計數(shù)器_第1頁
智能儀表綜合課程設計基于單片機的紅外脈沖計數(shù)器_第2頁
智能儀表綜合課程設計基于單片機的紅外脈沖計數(shù)器_第3頁
智能儀表綜合課程設計基于單片機的紅外脈沖計數(shù)器_第4頁
智能儀表綜合課程設計基于單片機的紅外脈沖計數(shù)器_第5頁
已閱讀5頁,還剩16頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、摘 要計數(shù)是一種簡單的基本運算,計數(shù)器就是實現(xiàn)這種運算的邏輯電路。計數(shù)器在數(shù)字系統(tǒng)中主要是對脈沖的個數(shù)進行技術(shù),以實現(xiàn)測量、計數(shù)和控制的功能。同時兼有分頻功能,計數(shù)器是由基本的計數(shù)單元和一些控制門所組成,計數(shù)單元則是由基本的計數(shù)單元和一些控制門組成,計數(shù)單元則是由一系列具有存儲信息功能的各類觸發(fā)器構(gòu)成。還有的計數(shù)器是通過一些復雜的集成單元比如單片機以及外設構(gòu)成,以完成顯示、控制等一些復雜的功能帶有傳感器的計數(shù)器應用范圍遍布印刷、紡織、印染、針織、電纜、電訊、軍工、輕工、機械、開關、斷路器、礦山、實行多班制的紡織行業(yè)的織布機、織帶機、制線、制帶、造紙、制革、薄膜、高壓開關電器產(chǎn)品、試驗設備,印刷

2、設備、短路器、醫(yī)療、紡織、機械、倉庫和碼頭的貨運、行人及車輛過往的數(shù)量計數(shù)、冶金、食品、國防、包裝、配料、石油、化工、發(fā)電、機床、儀表、自動化控制等行業(yè)。關鍵詞:紅外脈沖計數(shù);1838;at89c51目錄1 紅外脈沖計數(shù)器的簡介11.1紅外脈沖計數(shù)器簡介11.2紅外計數(shù)器的作用11.3本課題的背景和意義12 系統(tǒng)設計簡介22.1 紅外脈沖計數(shù)器簡介22.2 設計要求22.3 設計方案論證22.4 硬件設計電路33.系統(tǒng)硬件設計53.1主控制器選擇53.2顯示電路53.3紅外傳感器簡介63.41838紅外傳感器與單片機的接口電路73.6時鐘電路83.7復位電路83.8系統(tǒng)總體電路圖94 設計語言

3、及軟件介紹104.1 c語言介紹104.2 keilc51軟件介紹115 系統(tǒng)軟件設計125.1 概述125.2 系統(tǒng)程序設計模塊125.2.1主程序125.2.2顯示子程序125.2.3中斷子程序125.3 控制源程序135.3.1 c程序135.3.2程序清單155.4 調(diào)試及仿真15結(jié) 論18參考文獻191 紅外脈沖計數(shù)器的簡介1.1紅外脈沖計數(shù)器簡介計數(shù)是一種簡單的基本運算,計數(shù)器就是實現(xiàn)這種運算的邏輯電路。計數(shù)器在數(shù)字系統(tǒng)中主要是對脈沖的個數(shù)進行技術(shù),以實現(xiàn)測量、計數(shù)和控制的功能。同時兼有分頻功能,計數(shù)器是由基本的計數(shù)單元和一些控制門所組成,計數(shù)單元則是由基本的計數(shù)單元和一些控制門組

4、成,計數(shù)單元則是由一系列具有存儲信息功能的各類觸發(fā)器構(gòu)成。還有的計數(shù)器是通過一些復雜的集成單元比如單片機以及外設構(gòu)成,以完成顯示、控制等一些復雜的功能。1.2紅外計數(shù)器的作用計數(shù)器的應用范圍也遍布印刷、紡織、印染、針織、電纜、電訊、軍工、輕工、機械、開關、斷路器、礦山、實行多班制的紡織行業(yè)的織布機、織帶機、制線、制帶、造紙、制革、薄膜、高壓開關電器產(chǎn)品、試驗設備,印刷設備、短路器、醫(yī)療、紡織、機械、倉庫和碼頭的貨運、行人及車輛過往的數(shù)量計數(shù)、冶金、食品、國防、包裝、配料、石油、化工、發(fā)電、機床、儀表、自動化控制等行業(yè)。本次設計的目的就是讓我們在理論學習的基礎上,將所學知識運用到實際當中,制作一

5、個以單片機為mcu的計數(shù)顯示器件。并使我們了解電子設備在工業(yè)中的實際運用,以及工程設計的相關程序。1.3本課題的背景和意義將紅外脈沖信號轉(zhuǎn)換為可以顯示出來的數(shù)值,然后通過顯示單元,如led、lcd或者電腦屏幕等顯示出來給人觀察。這樣就完成了紅外脈沖計數(shù)器的基本計數(shù)功能。隨著計數(shù)器技術(shù)的不斷發(fā)展與進步,計數(shù)器的種類越來越多,應用的范圍越來越廣,隨之而來的競爭也越來越激烈。過硬的技術(shù)也成為眾多生產(chǎn)廠商競爭的焦點之一。廠商為了在競爭中處于不敗之地,從而不斷地改進技術(shù),增加產(chǎn)品的種類?,F(xiàn)計數(shù)器的種類以增加到:電磁計數(shù)器、電子計數(shù)器、機械計數(shù)器(拉動機械計數(shù)器、轉(zhuǎn)動機械計數(shù)器、按動機械計數(shù)器、測長機械計

6、數(shù)器)、液晶計數(shù)器等。本課題以設計紅外脈沖計數(shù)器為目標,采用1838紅外接受管作為傳感器,由單片機對其輸出信號做處理并顯示。2 系統(tǒng)設計簡介2.1 紅外脈沖計數(shù)器簡介紅外脈沖計數(shù)器就是對紅外脈沖進行計數(shù),并對當前值進行檢測并作出相應的處理。紅外脈沖計數(shù)器具有良好的抗干擾性及穩(wěn)定性,在生產(chǎn)生活中尤其是在工業(yè)自動控制方面具有相當重要的作用。應用范圍也遍布印刷、紡織、印染、針織、電纜、電訊、軍工、輕工、機械、開關、斷路器、礦山、儀表、自動化控制等行業(yè)。2.2 設計要求1、將計數(shù)值準確通過led數(shù)碼管顯示出來2、測量范圍為00-99。2.3 設計方案論證方案一:采用多種數(shù)字邏輯電路來實現(xiàn)邏輯控制、主門

7、、門控、計數(shù)單元的設計要求,這樣設計的電路整體比較復雜,而且不宜完成發(fā)揮部分的功能要求。所以方案一不采用。方案二:可以采用fpga來實現(xiàn)邏輯控制、主門、門控、計數(shù)單元的設計要求,并且設計方便,但由于對fpga的技術(shù)原理掌握不夠熟練,所以放棄方案二。方案三:系統(tǒng)采用8051為核心的單片機控制系統(tǒng),實現(xiàn)原理圖中的邏輯控制、主門、門控、計數(shù)的設計要求單片機計數(shù)器的方式控制寄存器tmod中的gate位=1時,可以很方便的進行int0引腳的外部輸入信號的時間間隔測量。且單片機的控制電路很容易實現(xiàn)擴展,比如語音模塊、測溫i2c模塊、時鐘模塊、a/d模塊等。故采用方案三。整體設計框圖如圖.所示。at89c5

8、1主控制器顯示電路時鐘電路信號接受電路復位電路 圖2.3 脈沖計數(shù)器總體電路結(jié)構(gòu)框圖2.4 硬件設計電路在at89s51單片機的p32引腳,即外部中斷0的入口引腳外接1838的output腳,作為計數(shù)的輸入口,用單片機的p0.0p0.7接一個共陰數(shù)碼管的段選,作為09的數(shù)字顯示,用單片機的p2.0作為共陰數(shù)碼管的位選,控制計數(shù)器的個位數(shù)顯示,用p2.1作為共陰數(shù)碼管的位選,控制計數(shù)器的十位顯示;硬件電路圖如圖2.所示: 圖2.4 數(shù)字溫度計設計電路圖3.系統(tǒng)硬件設計3.1主控制器選擇圖3-1at89c51引腳圖vcc:電源電壓; gnd:地;51單片機是對所有兼容intel 8031指令系統(tǒng)的

9、單片機的統(tǒng)稱。該系列單片機的始祖是intel的8031單片機,后來隨著flash rom計數(shù)的發(fā)展,成為應用最廣泛的8位單片機之一。其代表型號是atmel公司的at89系列,它廣泛應用于工業(yè)測控系統(tǒng)之中。本課程設計采用的單片機是stc89c52rc,完全兼容8031指令系統(tǒng),并具有更大的flash rom。其良好的穩(wěn)定性及性價比使得它占據(jù)著國內(nèi)51單片機較大的市場。3.2顯示電路在本任務中用2位數(shù)碼管顯示當前數(shù)值的十位、個位,由于數(shù)碼管個數(shù)多,如采用靜態(tài)顯示方式,則占用單片機的i/o口線太多,如果用定時器/計數(shù)器的串行移位寄存器工作方式及外接串入并出移位寄存器74ls164的方式,則電路復雜。

10、所以,在數(shù)碼管個數(shù)較多時,常采用動態(tài)顯示方式。位數(shù)碼管的相同段并聯(lián)在一起,由一個6位i/o(p1口)輸出字形碼控制顯示某一字形,每個數(shù)碼管的公共端由另外一個i/o口(p0口)輸出的字位碼控制,即數(shù)碼管顯示的字形是由單片機i/o口輸出的字形碼確定,而哪個數(shù)碼管點亮是由單片機i/o口輸出的字位碼確定的。個數(shù)碼管分時輪流循環(huán)點亮,在同一時刻只有1個數(shù)碼管點亮,但由于數(shù)碼管具有余輝特性及人眼具有視覺暫留特性,所以適當?shù)剡x取循環(huán)掃描頻率,看上去所有數(shù)碼管是同時點亮的,察覺不出閃爍現(xiàn)象。動態(tài)顯示方式所接數(shù)碼管不能太多,否則會因每個數(shù)碼管所分配的實際導通時間太少,使得數(shù)碼管的亮度不足。在本任務中,為了簡便,

11、字形碼和字位碼都沒由加驅(qū)動電路,在實際應用中應加驅(qū)動電路。如圖所示:圖3-2顯示電路3.3紅外傳感器簡介紅外接收電路通常被廠家集成在一個元件中,成為一體化紅外接收頭。 內(nèi)部電路包括紅外監(jiān)測二極管,放大器,限副器,帶通濾波器,積分電路,比較器等。紅外監(jiān)測二極管監(jiān)測到紅外信號, 然后把信號送到放大器和限幅器,限幅器把脈沖幅度控制在一定的水平,而不論紅外發(fā)射器和接收器的距離遠近。交流信號進入帶通濾波器,帶通濾波器可以通過30khz到60khz的負載波,通過解調(diào)電路和積分電路進入比較器,比較器輸出高低電平,還原出發(fā)射端的信號波形。注意輸出的高低電平和發(fā)射端是反相的,這樣的目的是為了提高接收的靈敏度。

12、一體化紅外接收頭,如圖-所示: 圖- 紅外接收頭紅外接收頭的種類很多,引腳定義也不相同,一般都有三個引腳,包括供電腳,接地和信號輸出腳。根據(jù)發(fā)射端調(diào)制 載波的不同應選用相應解調(diào)頻率的接收頭。 3.4 紅外傳感器與單片機的接口電路 ds18b20可以采用兩種方式供電,一種是采用電源供電方式,此時ds18b20的1腳接地,2腳作為信號線,3腳接電源。另一種是寄生電源供電方式,單片機端口接單線總線, 本次采用電源供電方式如圖3-4所示:圖3-4 1838紅外感器與單片機的接口電路3.6時鐘電路 時鐘電路用來提供單片機各種微操作的時間基準。圖3-5時鐘電路3.7復位電路 復位電路是單片機的片內(nèi)電路初始

13、化,使單片機從一種確定的狀態(tài)開始運行。復位操作通常有兩種基本形式:上電復位、開關復位。此處選擇上電復位,該操作要求接通電源后自動實現(xiàn)復位操作。電容上電后使rst持續(xù)一段高電平時間,此處電解電容c3設定參數(shù)為10uf,如圖所示:圖3-6復位電路3.8系統(tǒng)總體電路圖 溫度計電路設計原理圖如圖3-7所示,控制器使用單片機at89c51,溫度計傳感器使用1838紅外接收管,用led實現(xiàn)溫度顯示。本溫度計大體分三個工作過程。首先,由1838紅外傳感器芯片將接收到的紅外脈沖信號轉(zhuǎn)換為電信號并將結(jié)果送入單片機。然后,通過89c5i單片機芯片對送來的信號進行累計加數(shù),井將此結(jié)果送入led顯示模塊。由圖3-7可

14、看到,本電路主要由1838紅外感器芯片、和89c51單片機芯片組成。圖3-7系統(tǒng)總體設計圖4 設計語言及軟件介紹4.1 c語言介紹c語言是一種面向過程的計算機程序設計語言,它是目前眾多計算機語言中舉世公認的優(yōu)秀的結(jié)構(gòu)程序設計語言之一。它由美國貝爾研究所的d.m.ritchie于1972年推出。1978后,c語言已先后被移植到大、中、小及微型機上。 c語言發(fā)展如此迅速,而且成為最受歡迎的語言之一,主要因為它具有強大的功能。許多著名的系統(tǒng)軟件,如dbase 都是由c 語言編寫的。用c 語言加上一些匯編語言子程序,就更能顯示c 語言的優(yōu)勢了,像pc- dos 、wordstar等就是用這種方法編寫的

15、。c語言是一種成功的系統(tǒng)描述語言,用c語言開發(fā)的unix操作系統(tǒng)就是一個成功的范例;同時c語言又是一種通用的程序設計語言,在國際上廣泛流行。世界上很多著名的計算公司都成功的開發(fā)了不同版本的c語言,很多優(yōu)秀的應用程序也都使用c語言開發(fā)的,它是一種很有發(fā)展前途的高級程序設計語言。 1.c是中級語言。它把高級語言的基本結(jié)構(gòu)和語句與低級語言的實用性結(jié)合起來。c 語言可以像匯編語言一樣對位、字節(jié)和地址進行操作, 而這三者是計算機最基本的工作單元。 2.c是結(jié)構(gòu)式語言。結(jié)構(gòu)式語言的顯著特點是代碼及數(shù)據(jù)的分隔化,即程序的各個部分除了必要的信息交流外彼此獨立。這種結(jié)構(gòu)化方式可使程序?qū)哟吻逦阌谑褂?、維護以及

16、調(diào)試。c 語言是以函數(shù)形式提供給用戶的,這些函數(shù)可方便的調(diào)用,并具有多種循環(huán)、條件語句控制程序流向,從而使程序完全結(jié)構(gòu)化。 3.c語言功能齊全。具有各種各樣的數(shù)據(jù)類型,并引入了指針概念,可使程序效率更高。而且計算功能、邏輯判斷功能也比較強大,可以實現(xiàn)決策目的的游戲。4.c語言適用范圍大。適合于多種操作系統(tǒng),如windows、dos、unix等等;也適用于多種機型。 c語言對編寫需要硬件進行操作的場合,明顯優(yōu)于其它解釋型高級語言,有一些大型應用軟件也是用c語言編寫的。 c語言具有較好的可移植性,并具備很強的數(shù)據(jù)處理能力,因此適于編寫系統(tǒng)軟件,三維,二維圖形和動畫。它是數(shù)值計算的高級語言。4.2

17、keilc51軟件介紹keil c51是德國keil software公司(arm公司之一)出品的51系列兼容單片機c語言軟件開發(fā)系統(tǒng)。keil提供了包括c編譯器、宏匯編、連接器、庫管理和一個功能強大的仿真調(diào)試器等在內(nèi)的完整開發(fā)方案,通過一個集成開發(fā)環(huán)境(uvision)將這些部分組合在一起。5 系統(tǒng)軟件設計5.1 概述5.2 系統(tǒng)程序設計模塊系統(tǒng)程序主要包括主程序,中斷處理程序和顯示數(shù)據(jù)刷新子程序等。5.2.1主程序主程序的主要功能是負責溫度的實時顯示,主程序流程圖如圖4.2.1所示。顯示數(shù)值顯示數(shù)值程序開始圖4.2.1 主程序流程圖5.2.2顯示子程序顯示子程序?qū)?shù)字轉(zhuǎn)換為兩個字符,分別在

18、十位和個位顯示。5.2.3中斷子程序進入中斷就說明接收到脈沖,溫度轉(zhuǎn)換命令子程序圖4.2.2所示。 n進入中斷計數(shù)加1計數(shù)大于99計數(shù)清零 返回 圖4.2.2 中斷子程序流程圖5.3 控制源程序5.3.1 c程序接收程序:#include typedef unsigned char uint8;typedef unsigned int uint16;sbit k2 = p35; /設置接收引腳/*延時函數(shù)*/void delay(uint16 x)uint16 i,j;for(i = x; i 0; i -)for(j = 114; j 0; j -);code uint8 led_code = 0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f;/數(shù)碼管位碼表uint8 buffer_counts=0,0;/顯示位uint16 count=0;void show_counts() buffer_counts1 = count % 100 /10;/提取個位buffer_counts0 = count % 10;/提取十位 p2 = 0xfe;p0 = led_codebuffer_counts0;delay(2); /顯示個位p2 = 0xfd;p0 = led_codebuffer_counts1;delay(2);/顯示十

溫馨提示

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

評論

0/150

提交評論