單片機(jī)課程設(shè)計(jì)基于單片機(jī)的電機(jī)測(cè)速系統(tǒng)_第1頁(yè)
單片機(jī)課程設(shè)計(jì)基于單片機(jī)的電機(jī)測(cè)速系統(tǒng)_第2頁(yè)
單片機(jī)課程設(shè)計(jì)基于單片機(jī)的電機(jī)測(cè)速系統(tǒng)_第3頁(yè)
單片機(jī)課程設(shè)計(jì)基于單片機(jī)的電機(jī)測(cè)速系統(tǒng)_第4頁(yè)
單片機(jī)課程設(shè)計(jì)基于單片機(jī)的電機(jī)測(cè)速系統(tǒng)_第5頁(yè)
已閱讀5頁(yè),還剩25頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、i單片機(jī)課程設(shè)計(jì)單片機(jī)課程設(shè)計(jì)基于單片機(jī)的電機(jī)測(cè)速系統(tǒng)基于單片機(jī)的電機(jī)測(cè)速系統(tǒng) 姓姓 名名: : 專(zhuān)業(yè)班級(jí)專(zhuān)業(yè)班級(jí): : 0808 級(jí)電信級(jí)電信 2 2 班班 學(xué)學(xué) 號(hào)號(hào): : 指導(dǎo)老師指導(dǎo)老師: : ii目錄目錄1 1 前言前言.1 12 2總體方案設(shè)計(jì)總體方案設(shè)計(jì).2 22.1 方案論證 .22.2 方案比較 .22.3 方案選擇 .33.3.硬件部分設(shè)計(jì)硬件部分設(shè)計(jì).4 43.1 速度檢測(cè)電路 .43.1.1 開(kāi)關(guān)型霍爾傳感器介紹.43.1.2 傳感檢測(cè)電路 .53.2 單片機(jī)最小系統(tǒng)電路 .63.2.1 主控器 stc89c52 的介紹 .73.2.2 時(shí)鐘電路 .83.2.3 復(fù)位電

2、路 .93.3 數(shù)碼顯示電路 .103.4 rs-232 串行通信接口電路.113.4.1 max232 介紹.113.4.2 串行通信接口電路.124.4. 軟件設(shè)計(jì)軟件設(shè)計(jì).14144.1 主程序設(shè)計(jì) .144.2 t0 定時(shí)中斷程序設(shè)計(jì).15心得體會(huì)心得體會(huì).1717附錄附錄.1818附錄 1:電機(jī)測(cè)速系統(tǒng)總電路圖 .18附錄 2:電機(jī)測(cè)速系統(tǒng)總程序代碼 .1911 前言前言隨著科技的飛速發(fā)展,計(jì)算機(jī)應(yīng)用技術(shù)日益滲透到社會(huì)生產(chǎn)生活的各個(gè)領(lǐng)域,而單片機(jī)的應(yīng)用則起到了舉足輕重的作用。單片機(jī)又稱(chēng)單片微控制器,就是把一個(gè)計(jì)算機(jī)系統(tǒng)集成到一個(gè)芯片上。它完整地包含了計(jì)算機(jī)內(nèi)部的cpu(運(yùn)算器、控制器

3、)、程序存儲(chǔ)器(相當(dāng)于計(jì)算機(jī)的硬盤(pán))、數(shù)據(jù)存儲(chǔ)器(相當(dāng)于計(jì)算機(jī)的內(nèi)存)、輸入輸出端口等。雖然它的運(yùn)算速度無(wú)法和計(jì)算機(jī)相比,但在一些實(shí)際的控制應(yīng)用場(chǎng)合已經(jīng)足夠使用了。對(duì)于高等院校電子類(lèi)和計(jì)算機(jī)類(lèi)的學(xué)生,學(xué)習(xí)單片機(jī)是很重要的,而進(jìn)行應(yīng)用單片機(jī)的課程設(shè)計(jì)更是重中之重,將所學(xué)理論知識(shí)應(yīng)用到實(shí)際,使更加全面的了解和掌握單片機(jī)的應(yīng)用。在工程實(shí)踐中,經(jīng)常會(huì)遇到各種需要測(cè)量轉(zhuǎn)速的場(chǎng)合,例如在發(fā)動(dòng)機(jī)、電動(dòng)機(jī)、機(jī)床主軸等旋轉(zhuǎn)設(shè)備的試驗(yàn)運(yùn)轉(zhuǎn)和控制中,常需要分時(shí)或連續(xù)測(cè)量、顯示其轉(zhuǎn)速及瞬時(shí)速度。為了能精確地測(cè)量轉(zhuǎn)速,還要保證測(cè)量的實(shí)時(shí)性,要求能測(cè)得瞬時(shí)轉(zhuǎn)速。本文提出一種基于stc89c52單片機(jī)實(shí)施電機(jī)轉(zhuǎn)速測(cè)量的方法

4、,利用霍爾傳感器采集脈沖信號(hào),通過(guò)定時(shí)計(jì)數(shù)算法程序,將轉(zhuǎn)速結(jié)果實(shí)時(shí)顯示出來(lái)。在本次設(shè)計(jì)中也用到了一些常用的數(shù)字電子單元元件,如霍爾傳感器,霍爾器件作為一種轉(zhuǎn)速測(cè)量系統(tǒng)的傳感器,具有結(jié)構(gòu)牢固、體積小、重量輕、壽命長(zhǎng)、安裝方便等優(yōu)點(diǎn),。在實(shí)際的使用中,一般需要一個(gè)鐵質(zhì)的測(cè)速齒輪,齒厚大于2 mm即可,將之固定在待測(cè)轉(zhuǎn)速的軸上。22總體方案設(shè)計(jì)總體方案設(shè)計(jì)2.12.1 方案論證方案論證 在工程實(shí)踐中,經(jīng)常會(huì)遇到各種需要測(cè)量轉(zhuǎn)速的場(chǎng)合,例如在發(fā)動(dòng)機(jī)、電動(dòng)機(jī)、機(jī)床主軸等旋轉(zhuǎn)設(shè)備的試驗(yàn)運(yùn)轉(zhuǎn)和控制中,常需要分時(shí)或連續(xù)測(cè)量、顯示其轉(zhuǎn)速及瞬時(shí)速度。為了能精確地測(cè)量轉(zhuǎn)速,還要保證測(cè)量的實(shí)時(shí)性,要求能測(cè)得瞬時(shí)轉(zhuǎn)速。

5、本次課程設(shè)計(jì)主要是利用 stc89c52 單片機(jī)和傳感器來(lái)設(shè)計(jì)電機(jī)電機(jī)測(cè)速系統(tǒng)。利用傳感器采集脈沖信號(hào),通過(guò)定時(shí)計(jì)數(shù)算法程序,將轉(zhuǎn)速結(jié)果實(shí)時(shí)顯示出來(lái)。在本次設(shè)計(jì)中是利用單片機(jī)進(jìn)行信號(hào)處理,信號(hào)的采集是使用傳感器。對(duì)于選擇何種傳感器來(lái)采集信號(hào)是對(duì)測(cè)量的精度是有很大影響的。所以在本次方案比較中主要討論傳感器的選擇。2.22.2 方案比較方案比較電機(jī)光敏三極管 信號(hào)轉(zhuǎn)換led顯示單片機(jī)處理光敏二極管圖 2.1方案一方框圖方案一包括傳感器、處理器和顯示 3 個(gè)部分。其方框圖如圖 2.1 所示。在該方案中傳感器是由紅外發(fā)光二極管,和紅外光敏三極管構(gòu)成。測(cè)速的過(guò)程為:在電機(jī)的轉(zhuǎn)軸上安裝一個(gè)圓盤(pán),并在圓盤(pán)的

6、邊緣處開(kāi)一個(gè)孔讓二極管發(fā)出的紅外光剛好可以通過(guò)。在圓盤(pán)的上下方分別安裝好發(fā)光二極管和光敏三極管,當(dāng)電機(jī)轉(zhuǎn)動(dòng)時(shí)就可以通過(guò)圓盤(pán)來(lái)改變光敏三極管接收的光線(xiàn),從而產(chǎn)生點(diǎn)位信號(hào)的變化,這樣就構(gòu)成了一個(gè)收發(fā)檢測(cè)系統(tǒng),可以檢測(cè)電機(jī)的轉(zhuǎn)速。運(yùn)用的原理和光電耦合器是相同的。3電機(jī)霍爾傳感器 信號(hào)轉(zhuǎn)換 led顯示單片機(jī)處理圖 2.2方案二方框圖方案二也由傳感器、處理器和顯示 3 個(gè)部分幾部分組成,但所選擇的傳感器類(lèi)型不同,其方框圖如圖 2.2 所示。此方案的測(cè)速系統(tǒng)主要是由開(kāi)關(guān)型霍爾傳感器 a3144e 以及磁鋼構(gòu)成,由它們來(lái)檢測(cè)電機(jī)的轉(zhuǎn)速。工作方式為:將磁鋼安裝在電機(jī)的轉(zhuǎn)軸上,而霍爾傳感器則放在轉(zhuǎn)軸的旁邊,霍爾

7、傳感器連接在電路中,當(dāng)磁鋼隨轉(zhuǎn)軸經(jīng)過(guò)霍爾傳感器時(shí),由開(kāi)關(guān)型霍爾傳感器的工作原理知,此時(shí)將輸出一個(gè)低電平信號(hào);而當(dāng)磁鋼離開(kāi)霍爾傳感器后,又將輸出一個(gè)高電平。這樣通過(guò)高低電平的轉(zhuǎn)換,將其送入單片機(jī)后就可以測(cè)量它的轉(zhuǎn)速。2.32.3 方案選擇方案選擇兩個(gè)方案的主體電路相同,只是傳感的的選擇不同。而選擇開(kāi)關(guān)型霍爾傳感器則具有多種優(yōu)點(diǎn):精度高:在工作溫度區(qū)內(nèi)精度優(yōu)于 1%。過(guò)載能力強(qiáng):當(dāng)原邊電流超負(fù)荷,模塊達(dá)到飽和,可自動(dòng)保護(hù),即使過(guò)載電流是額定值的 20倍時(shí),模塊也不會(huì)損壞。模塊的高靈敏度,使之能夠區(qū)分在“高分量”上的弱信號(hào),例如:在幾百安的直流分量上區(qū)分出幾毫安的交流分量。還可以通過(guò)使用多塊磁鋼來(lái)倍

8、頻,以增加測(cè)量的精度。鑒于以上考慮,最終選定方案二為本次課程設(shè)計(jì)方案。43.硬件部分設(shè)計(jì)硬件部分設(shè)計(jì)3.13.1 速度檢測(cè)速度檢測(cè)電路電路3.1.13.1.1 開(kāi)關(guān)型霍爾傳感器介紹開(kāi)關(guān)型霍爾傳感器介紹霍爾傳感器是利用霍爾效應(yīng)原理制成的一種磁敏傳感器。它是近年來(lái)為適應(yīng)信息采集的需要而迅速發(fā)展起來(lái)的一種新型傳感器,這類(lèi)傳感器具有工作頻帶寬,響應(yīng)快、面積小、靈敏度高、無(wú)缺點(diǎn)、便于集成化、多功能化等優(yōu)點(diǎn),且易與計(jì)算機(jī)和其它數(shù)字儀表接口,因此被廣泛用于自動(dòng)監(jiān)測(cè)、自動(dòng)測(cè)量、自動(dòng)報(bào)警、自動(dòng)控制、信息傳遞、生物醫(yī)學(xué)等各個(gè)領(lǐng)域。此處主要介紹開(kāi)關(guān)型霍爾傳感器。開(kāi)關(guān)型霍爾傳感器由穩(wěn)壓器a、硅霍爾片b、差分放大器c、

9、施密特觸發(fā)器d和oc門(mén)輸出e五部分組成,如圖3.11所示從輸入端1輸入電壓vcc,經(jīng)穩(wěn)壓器a穩(wěn)壓后加在硅霍爾片b的兩端,以提供恒定不變的工作電流在垂直于霍爾片的感應(yīng)面方向施加磁場(chǎng),產(chǎn)生霍爾電勢(shì)差vw,該n信號(hào)經(jīng)差分放大器c放大后送至施密特觸發(fā)器d整形當(dāng)磁場(chǎng)達(dá)到“工作點(diǎn)”(即b。)時(shí),觸發(fā)器d輸出高電壓(相對(duì)于地電位),使三極管e導(dǎo)通,輸出端v。輸出低電位,此狀態(tài)稱(chēng)為“開(kāi)”。當(dāng)施加的磁場(chǎng)達(dá)到“釋放點(diǎn)”(即b。)時(shí),觸發(fā)器d輸出低電壓,使三極管e截止,輸出端y。輸出高電位,此狀態(tài)稱(chēng)為“關(guān)”。這樣2次高低電位變換,使霍爾傳感器完成了1次開(kāi)關(guān)動(dòng)作。開(kāi)關(guān)型霍爾傳感器構(gòu)成圖如圖3.1所示:圖3.1 開(kāi)關(guān)型

10、霍爾傳感器構(gòu)成圖開(kāi)關(guān)型霍爾集成傳感器(以下簡(jiǎn)稱(chēng)開(kāi)關(guān)型霍爾傳感器)主要被應(yīng)用于周期和頻率的測(cè)量、轉(zhuǎn)速的測(cè)量、液位控制等方面。常用的開(kāi)關(guān)型霍爾傳感器有美國(guó)sprag1 公司的ugn3000系列如ugn3020、ugn3o3o等。它沒(méi)有輸入端,因磁場(chǎng)是由空間輸入的。規(guī)定用磁鐵的s極接近開(kāi)關(guān)型霍爾傳感器正面時(shí)形成的b為正值,從圖4.2曲線(xiàn)看:當(dāng)b =0時(shí), 0為高;b=bop時(shí), 0立即變低,這點(diǎn)稱(chēng)為“工作5點(diǎn)”。繼續(xù)升高b, 0不變。降低b到brp時(shí),vo又回升。這點(diǎn)稱(chēng)為“釋放點(diǎn)”。如圖3.2所示,b 一 b 稱(chēng)為磁滯。在此差值內(nèi),輸出電位 。保持高電位或低電位不變,因而輸出穩(wěn)定可靠。 圖 3.2

11、開(kāi)關(guān)型霍爾傳感器輸出電壓與外加磁感應(yīng)強(qiáng)度關(guān)系3.1.23.1.2 傳感檢測(cè)傳感檢測(cè)電路電路速度檢測(cè)電路是由開(kāi)關(guān)型霍爾傳感器和磁鋼組成。其電路圖如圖 3.3 所示。測(cè)量電機(jī)轉(zhuǎn)速的第一步就是要將電機(jī)地轉(zhuǎn)速表示為單片機(jī)可以識(shí)別的脈沖信號(hào),從而進(jìn)行脈沖計(jì)數(shù)。霍爾器件作為一種轉(zhuǎn)速測(cè)量系統(tǒng)的傳感器,具有結(jié)構(gòu)牢固、體積小、重量輕、壽命長(zhǎng)、安裝方便等優(yōu)點(diǎn),當(dāng)電機(jī)轉(zhuǎn)動(dòng)時(shí),帶動(dòng)傳感器,產(chǎn)生對(duì)應(yīng)頻率的脈沖信號(hào),經(jīng)過(guò)信號(hào)處理后輸出到計(jì)數(shù)器或其他的脈沖計(jì)數(shù)裝置,進(jìn)行轉(zhuǎn)速的測(cè)量。在實(shí)際的使用中,一般需要一個(gè)鐵質(zhì)的測(cè)速齒輪,齒厚大于 2 mm 即可,將之固定在待測(cè)轉(zhuǎn)速的軸上。所謂磁鋼,就是磁鋼就是一種有磁性的鋼鐵。在傳感檢

12、測(cè)電路中將磁鋼安裝在電機(jī)的轉(zhuǎn)軸上,而霍爾傳感器則放在轉(zhuǎn)軸的旁邊,霍爾傳感器連接在電路中,當(dāng)磁鋼隨轉(zhuǎn)軸經(jīng)過(guò)霍爾傳感器時(shí),由開(kāi)關(guān)型霍爾傳感器的工作原理知,此時(shí)將輸出一個(gè)低電平信號(hào);而當(dāng)磁鋼離開(kāi)霍爾傳感器后,又將輸出一個(gè)高電平。這樣通過(guò)高低電平的轉(zhuǎn)換,將其送入單片機(jī)后就可以測(cè)量它的轉(zhuǎn)速。其電路如圖 3.3 所示。6+5v1j2con21out2gnd3vccr17傳傳傳傳傳gnda-+mg1motor servo圖 3.3 傳感器部分3.3.2 2 單片機(jī)最小系統(tǒng)單片機(jī)最小系統(tǒng)電路電路單片機(jī)最小系統(tǒng)電路如圖 3.4 所示,由主控器 stc89c52、時(shí)鐘電路和復(fù)位電路三部分組成。單片機(jī) stc89c

13、52 作為核心控制器控制著整個(gè)系統(tǒng)的工作,而時(shí)鐘電路負(fù)責(zé)產(chǎn)生單片機(jī)工作所必需的時(shí)鐘信號(hào),復(fù)位電路使得單片機(jī)能夠正常、有序、穩(wěn)定地工作。圖 3.4 單片機(jī)最小系統(tǒng)73.2.13.2.1 主控器主控器 stc89c52stc89c52 的介紹的介紹本系統(tǒng)采用單片機(jī) stc8952 作為主控制器,使用霍爾傳感器測(cè)量電機(jī)的轉(zhuǎn)速,最終在 led 上顯示測(cè)試結(jié)果。此外,還可以根據(jù)需要調(diào)整制電機(jī)的轉(zhuǎn)速,硬件組成由圖 3.5 所示。單片機(jī)(micro controller unit),又稱(chēng)為微控制器,是指在一塊芯片上集成了中央處理器 cpu、隨機(jī)存儲(chǔ)器 ram、程序存儲(chǔ)器 rom、定時(shí)器/計(jì)數(shù)器、中斷控制器以

14、及串行和并行 i/0 接口等部件,構(gòu)成一個(gè)完整的微型計(jì)算機(jī)。目前,新型單片機(jī)內(nèi)還有 a/d(d/a)轉(zhuǎn)換器、高速輸入輸出部件、dma 通道、浮點(diǎn)運(yùn)算等特殊功能部件。由于它的結(jié)構(gòu)和指令功能都是按工業(yè)控制要求設(shè)計(jì)的,特別適用于工業(yè)控制及其數(shù)據(jù)處理場(chǎng)合。stc89c52 是擁有 256 字節(jié)的 ram,8k 的片內(nèi) rom,3 個(gè) 16 位定時(shí)器,6 個(gè)中斷源的微處理器,也就是俗稱(chēng)的單片機(jī)。89系列單片機(jī)的內(nèi)核是8031,所以其指令與intel 8051 系列單片機(jī)完全兼容,并且具有以下優(yōu)點(diǎn):(1)內(nèi)部含有flash 存儲(chǔ)器(stc89c52 有8k)。因此在系統(tǒng)的開(kāi)發(fā)過(guò)程中可以十分容易進(jìn)行程序的修

15、改,這就大大縮短了系統(tǒng)的開(kāi)發(fā)周期。同時(shí),在系統(tǒng)工作過(guò)程中,能有效地保存一些數(shù)據(jù)信息,即使外界電源損壞也不影響到信息的保存。(2)插座與80c51兼容。89系列單片機(jī)的引腳和80c51是一樣的,當(dāng)用89系列單片機(jī)取代80c51時(shí),可以直接進(jìn)行代換。(3)靜態(tài)時(shí)鐘方式。89系列單片機(jī)采用靜態(tài)時(shí)鐘方式,可以節(jié)省電能,這對(duì)于降低便攜式產(chǎn)品的功耗十分有用。(4)錯(cuò)誤編程亦無(wú)廢品產(chǎn)生。因?yàn)?9系列單片機(jī)內(nèi)部采用了flash 存儲(chǔ)器,所以,錯(cuò)誤編程之后仍可以重新編程,直到正確為止,故不存在廢品。(5)可反復(fù)進(jìn)行系統(tǒng)試驗(yàn)。用89系列單片機(jī)設(shè)計(jì)的系統(tǒng),可以反復(fù)進(jìn)行系統(tǒng)試驗(yàn),每次試驗(yàn)可以編入不同的程序,這樣可以保

16、證用戶(hù)的系統(tǒng)設(shè)計(jì)達(dá)到最優(yōu)。而且隨著用戶(hù)的需要和發(fā)展,還可以進(jìn)行修改,使系統(tǒng)不斷能追隨用戶(hù)的最新要求。8圖 3.5 stc89c52 單片機(jī)引腳圖stc8952 引腳圖如圖 3.5 所示,此芯片共 40 引腳,每個(gè)引腳的功能如下:18 腳: 通用 i/o 接口 p1.0p1.7 9 腳: rst 復(fù)位鍵 10 .11 腳:rxd 串口輸入 txd 串口輸出 1219:i/o p3 接口 (12,13 腳 int0 中斷 0;int1 中斷 1;14,15 : 計(jì)數(shù)脈沖 t0 t1;16,17: wr 寫(xiě)控制 rd 讀控制輸出端) 18,19: 晶振諧振器 20: 地線(xiàn) 2128:p2 接口 高

17、8 位地址總線(xiàn)29: psen 片外 rom 選通端 單片機(jī)對(duì)片外 rom 操作時(shí) 29 腳(psen)輸出低電平 30:ale/prog 地址鎖存器 31:ea rom 取指令控制器 高電平片內(nèi)取 低電平片外取 3239:p0.0p0.7(注意此接口的順序與其他 i/o 接口不同 與引腳號(hào)的排列順序相反) 40:電源+5v3.2.23.2.2 時(shí)鐘電路時(shí)鐘電路stc89c52 單片機(jī)芯片內(nèi)部設(shè)有一個(gè)由反向放大器所構(gòu)成的振蕩器。19 腳(xtal1)為振蕩器。反相放大器和內(nèi)部時(shí)鐘發(fā)生電路的輸入端,18 腳(xtal2)為振蕩器反相放大器的輸出端。在 xtal1 和 xtal2 引腳上外接定時(shí)元

18、器件,內(nèi)部振蕩電路就會(huì)產(chǎn)生自激振蕩。本系統(tǒng)采用的定時(shí)元器件為石英晶體(晶振)和電容組成的并9聯(lián)諧振回路。晶振頻率為 6mhz,電容大小為 1530pf,電容的大小可以起到頻率微調(diào)的作用,時(shí)鐘電路如圖 3.6 所示。 圖 3.6 時(shí)鐘電路(晶振)3.2.33.2.3 復(fù)位電路復(fù)位電路stc89c52 的復(fù)位是由外部的復(fù)位電路來(lái)實(shí)現(xiàn)的,復(fù)位電路通常采用上電復(fù)位和按鈕復(fù)位兩種方式,本設(shè)計(jì)采用的是最簡(jiǎn)單的上電自動(dòng)復(fù)位電路,其電路圖如圖 3.7 所示。上電自動(dòng)復(fù)位是通過(guò)外部復(fù)位電路的電容充電實(shí)現(xiàn)的,當(dāng)電源接通時(shí)只要 vcc 的上升時(shí)間不超過(guò) 1 毫秒,就可以實(shí)現(xiàn)自動(dòng)上電復(fù)位。本設(shè)計(jì)時(shí)鐘頻率選用 6mhz

19、,電容取 22 微法,電阻取 1 千歐。 圖 3.7 復(fù)位電路103.33.3 數(shù)碼顯示數(shù)碼顯示電路電路led 又稱(chēng)為數(shù)碼管,它主要由 8 段發(fā)光二極管組成的不同組合,可以顯示ag 為數(shù)字和字符顯示段,h 段為小數(shù)點(diǎn)顯示,通過(guò) ag 為 7 個(gè)發(fā)光段的不同組合,可以顯示 09 和 af 共 16 個(gè)數(shù)字和字母。led 可以分為共陰極和共陽(yáng)極兩種結(jié)構(gòu)。共陰極結(jié)構(gòu)即把 8 個(gè)發(fā)光二極管陰極連在一起。這種裝入數(shù)碼管中顯示字形的數(shù)據(jù)稱(chēng)字形碼,又稱(chēng)段選碼。點(diǎn)亮 led 顯示器有兩種方式:一是靜態(tài)顯示:二是動(dòng)態(tài)顯示。所謂靜態(tài)顯示,就是當(dāng)顯示器顯示某一個(gè)字符時(shí),相應(yīng)的發(fā)光二極管恒定的導(dǎo)通或截止。如圖 3.8

20、 所示為 4 位靜態(tài) led 顯示電路。該電路每一位可單獨(dú)顯示。只要在要顯示的那位段選線(xiàn)上保持段選電平,該位就能保持顯示相應(yīng)的顯示字符。這種電路的優(yōu)點(diǎn)是:在同一瞬間可以顯示不同的字符;但缺點(diǎn)就是占用端口資源較多。從下圖可以看出,每位 led 顯示器需要單獨(dú)占用 8 根端口線(xiàn),因而,在數(shù)據(jù)較多時(shí)不采用此中設(shè)計(jì),而是采用動(dòng)態(tài)顯示方式。本設(shè)計(jì)采用靜態(tài)顯示。圖 3.8靜態(tài)顯示電路所謂動(dòng)態(tài)顯示,就是將要顯示的多位 led 顯示器采用一個(gè) 8 位的段選端口,然后采用動(dòng)態(tài)掃描方式一位一位地輪流點(diǎn)亮各位顯示器。如下圖 3.9 所示為 4位 led 動(dòng)態(tài)顯示電路。 +5vp1.0p1.1p1.2p1.3p1.4

21、p1.5p1.6p1.7p2.0p2.1p2.2at89c51p2.3圖 3.94 位動(dòng)態(tài) led 顯示器電路11本設(shè)計(jì)用到的是 led 顯示器靜態(tài)顯示方式,其電路如圖 3.10 所示是發(fā)光二極管顯示器(led)的結(jié)構(gòu)、工作原理及接口電路。圖 3.10 led 顯示部分3.43.4 rs-232rs-232 串行通信接口電路串行通信接口電路單片機(jī)的串行口是非常有用的,通過(guò)它我們可以把單片機(jī)系統(tǒng)的數(shù)據(jù)傳回電腦處理或者接受電腦傳過(guò)來(lái)的數(shù)據(jù)而進(jìn)行相應(yīng)的動(dòng)作。微控制器有許多標(biāo)準(zhǔn)的通信方法,但在主/從嵌入式系統(tǒng)中,最常用的是rs23 2 串行接口、spi 和 i2c。52 單片機(jī)有一個(gè)全雙工的串行通信口

22、,非常適合與電腦進(jìn)行通信,本次課程設(shè)計(jì),采用的是 rs232 出行接口方式。3.4.13.4.1 max232max232 介紹介紹max232 是由德州儀器公司(ti)推出的一款兼容 rs232 標(biāo)準(zhǔn)的芯片。由于電腦串口 rs232 電平是-10v +10v,而一般的單片機(jī)應(yīng)用系統(tǒng)的信號(hào)電壓是 ttl電平 0 +5v,max232 就是用來(lái)進(jìn)行電平轉(zhuǎn)換的,該器件包含 2 驅(qū)動(dòng)器、2 接收器和一個(gè)電壓發(fā)生器電路提供 tia/eia-232-f 電平。max232 引腳圖如圖 3.11 所示。該器件符合 tia/eia-232-f 標(biāo)準(zhǔn),每一個(gè)接收器將 tia/eia-232-f 電平轉(zhuǎn)換成 5

23、-v ttl/cmos 電平。每一個(gè)發(fā)送器將 ttl/cmos 電平轉(zhuǎn)換成 tia/eia-232-f 電平。12其主要特點(diǎn)為: 1、單 5v 電源工作2、linbicmostm 工藝技術(shù)3、兩個(gè)驅(qū)動(dòng)器及兩個(gè)接收器4、30v 輸入電平5、低電源電流:典型值是 8ma6、符合甚至優(yōu)于 ansi 標(biāo)準(zhǔn) eia/tia-232-e 及 itu 推薦標(biāo)準(zhǔn) v.287、esd 保護(hù)大于 mil-std-883(方 法 3015)標(biāo)準(zhǔn)的 2000v圖 3.11 max232 引腳圖3.4.23.4.2 串行通信接口電路串行通信接口電路串行端口的本質(zhì)功能是作為 cpu 和串行設(shè)備間的編碼轉(zhuǎn)換器。當(dāng)數(shù)據(jù)從cp

24、u 經(jīng)過(guò)串行端口發(fā)送出去時(shí),字節(jié)數(shù)據(jù)轉(zhuǎn)換為串行的位。在接收數(shù)據(jù)時(shí),串行的位被轉(zhuǎn)換為字節(jié)數(shù)據(jù)。 在 windows 環(huán)境(windows nt、win98、windows2000)下,串口是系統(tǒng)資源的一部分。 應(yīng)用程序要使用串口進(jìn)行通信,必須在使用之前向操作系統(tǒng)提出資源申請(qǐng)要求(打開(kāi)串口),通信完成后必須釋放資源(關(guān)閉串口)。本次課程設(shè)計(jì)串行通信接口電路如圖 3.12 所示。13圖 3.12 串行通信接口電路 144. 軟件設(shè)計(jì)軟件設(shè)計(jì)對(duì)于電機(jī)轉(zhuǎn)速的測(cè)定,一般有兩種方法:一種是測(cè)頻率,就是在給定時(shí)間內(nèi)測(cè)電機(jī)轉(zhuǎn)了幾圈,這種方法適合于高速旋轉(zhuǎn)的電機(jī);另一種則是測(cè)周期,就是測(cè)電機(jī)轉(zhuǎn)一圈的時(shí)間,這種方法

25、適合于測(cè)低速的電機(jī)。而我們這次使用的電機(jī)是一個(gè)高速的直流電機(jī),所以就選用測(cè)頻法來(lái)編程。4.14.1 主程序設(shè)計(jì)主程序設(shè)計(jì)本系統(tǒng)采用 stc89c52 中的 t0 定時(shí)器和 t1 計(jì)數(shù)器配合使用對(duì)轉(zhuǎn)速脈沖定時(shí)計(jì)數(shù)。計(jì)數(shù)器 t1 工作于計(jì)數(shù)狀態(tài)對(duì)外部脈沖進(jìn)行計(jì)數(shù);t0 工作為定時(shí)器方式每次定時(shí) 10ms。本設(shè)計(jì)程序編程的思想就是在給定的 10ms 之內(nèi),用單片機(jī)自帶的計(jì)數(shù)器 t1 對(duì)外部脈沖進(jìn)行計(jì)數(shù)。主程序的流程圖如圖 4.1 所示。y平顯示數(shù)據(jù)關(guān)閉計(jì)數(shù)器 t1處理 th1,th0 數(shù)據(jù)buf_min=100等待 50ms 開(kāi)啟計(jì)數(shù)器 t1開(kāi)啟定時(shí) t0n平初始化 t0,t1開(kāi)始圖 4.1 主程序

26、流程圖主程序部分程序如下:#include15#define uint unsigned intsbit cnpn0=p00;sbit cnpn1=p01;sbit cnpn2=p02;sbit cnpn3=p03;uint buf_min=0 x1,flag;void delay(uint x)/x=1000 表示 4ms while(-x); void main() uint num10=0 xc0,0 xf9,0 xa4,0 xb0,0 x99,0 x92,0 x82,0 xf8,0 x80,0 x90; uint i,j,temp; uint sum=0 x0,disnum4=0; t

27、mod=0 x51; /to 工作為定時(shí)方式,t1 工作為計(jì)數(shù)方式 th0=-10236/256; tl0=-10236%256; th1=0; tl1=0; ea=1; /啟動(dòng)外部中斷 04.24.2 t0t0 定時(shí)中斷程序設(shè)計(jì)定時(shí)中斷程序設(shè)計(jì)t0 定時(shí)中斷程序主要是完成 10ms 的定時(shí)任務(wù),并且對(duì)變量 buf_min 進(jìn)行加一處理,其中在對(duì) t0 進(jìn)行賦初值時(shí),選擇為 10236 而不是 10000。主要是 c語(yǔ)言在經(jīng)過(guò)反匯編后,一條 c 語(yǔ)句將會(huì)編譯成幾條語(yǔ)句,這樣就增加了指令執(zhí)行的時(shí)間,使定時(shí)產(chǎn)生誤差,而在經(jīng)過(guò)多次調(diào)試后,選擇 10236 為 t0 初值是最接近 10ms 的。16y

28、進(jìn)入定時(shí)中斷關(guān)閉定時(shí)器t0開(kāi)啟定時(shí)器 t0buf_min 加 1th0,tl0 賦值退出中斷圖 4.2 t0 定時(shí)中斷流程圖t0 定時(shí)中斷部分程序:void time0() interrupt 1 /定時(shí) 10ms ea=0; et0=0; tr0=0; th0=-10236/256; tl0=-10236%256; buf_min+; ea=1; et0=1; tr0=1; 17心得體會(huì)心得體會(huì)在本次課程設(shè)計(jì)中,介紹了一種基于 stc89c52 單片機(jī)的電機(jī)測(cè)速系統(tǒng),該測(cè)速系統(tǒng)采用集成霍爾傳感器敏感速率信號(hào),具有頻率響應(yīng)快、抗干擾能力強(qiáng)等特點(diǎn)?;魻杺鞲衅鞯妮敵鲂盘?hào)經(jīng)信號(hào)調(diào)理后,通過(guò)單片機(jī)對(duì)連

29、續(xù)脈沖記數(shù)來(lái)實(shí)現(xiàn)轉(zhuǎn)速測(cè)控,并且充分利用了單片機(jī)的內(nèi)部資源,有很高的性?xún)r(jià)比。經(jīng)過(guò)測(cè)試并對(duì)誤差進(jìn)行分析發(fā)現(xiàn),該系統(tǒng)的測(cè)量誤差在 5以?xún)?nèi),并且在測(cè)量范圍內(nèi)轉(zhuǎn)速越高測(cè)量精度越高。所以該系統(tǒng)在一般的轉(zhuǎn)速檢測(cè)和控制中均可應(yīng)用。通過(guò)本次課程設(shè)計(jì),我對(duì)單片機(jī)的工作原理和應(yīng)用有了深入的理解,掌握了單片機(jī)系統(tǒng)軟硬件設(shè)計(jì)的基本方法,對(duì)一個(gè)課題如何畫(huà)流程圖,編寫(xiě)程序等有了一定的認(rèn)識(shí)。使我深刻體會(huì)到單片機(jī)技術(shù)應(yīng)用領(lǐng)域的廣泛,也讓我了解到單片機(jī)技術(shù)對(duì)當(dāng)今人們生活的重要性。雖然本次課程設(shè)計(jì)不要求做出實(shí)物,而且只是針對(duì)微機(jī)控制的一個(gè)領(lǐng)域進(jìn)行研究和查找有關(guān)的單片機(jī)控制的資料。但是已經(jīng)讓我了解到了做一個(gè)課程設(shè)計(jì)不僅要全面的分析和

30、解決在設(shè)計(jì)時(shí)出現(xiàn)的問(wèn)題。也通過(guò)查閱資料了解到微機(jī)控制的重要性和其應(yīng)用的廣泛性。在這不斷發(fā)展的社會(huì),微機(jī)控制的自動(dòng)化已經(jīng)占據(jù)了很大的地位,而且其發(fā)展的速度是很快的,所以對(duì)于我們學(xué)習(xí)這個(gè)專(zhuān)業(yè)的學(xué)生來(lái)說(shuō),就要求我們應(yīng)該不斷的去了解最新的設(shè)計(jì)和理論知識(shí),那樣才能讓我們?cè)诒绢I(lǐng)域有一立足之地。18附錄附錄附錄附錄 1 1:電機(jī)測(cè)速系統(tǒng)總電路圖:電機(jī)測(cè)速系統(tǒng)總電路圖ea/vp31x119x218reset9rd/p3.717wr/p3.616int0/p3.212int1/p3.313t0/p3.414t1/p3.515p1.01p1.12p1.23p1.34p1.45p1.56p1.67p1.78p0.0

31、39p0.138p0.237p0.336p0.435p0.534p0.633p0.732p2.021p2.122p2.223p2.324p2.425p2.526p2.627p2.728psen29ale/p30txd/p3.111rxd/p3.010vcc20gnd40ic189c51a7b6c4d1e3f8g9dp2g110g25led22led-cca7b6c4d1e3f8g9dp2g110g25led12led-ccdpabcdefggabcdefdpc122ufc222ufy112mt1pnpt2pnpt3pnpt4pnp+5v+5vr21kr1200c322u+5vs1r3200r4

32、200r5200r6200r7200r8200r9200r10200r1 in13r2 in8t1 in11t2 in10v+2v-6r1 out12r2 out9t1 out14t2 out7c1+1c1 -3c2+4c2 -5u1max232aepe(16)162738495j3db9c40.1uc80.1uc50.1uc70.1uc60.1u+5v1j2con2r111kr121kr131kr141k1j1con11out2gnd3vccr17傳傳傳傳傳gnda-+mg1motor servo19附錄附錄 2 2:電機(jī)測(cè)速系統(tǒng)總程序代碼:電機(jī)測(cè)速系統(tǒng)總程序代碼include #defin

33、e uchar unsigned char#define uint unsigned intsbit g=p16;sbit enb=p11;sbit in3=p12;sbit in4=p10;sbit wela=p27;sbit dula=p26;int rate;unsigned char dat_buf10=0 x3f,0 x06,0 x5b,0 x4f,0 x66,0 x6d,0 x7c,0 x07,0 x7f,0 x67;uint ttt=0;void delay(uint z)uint x,y;for(x=z;x0;x-)for(y=110;y0;y-);void display(u

34、char shi,uchar ge)dula=1;p0=dat_bufshi;dula=0;p0=0 xff;wela=1;p0=0 xfe;wela=0;delay(1);dula=1;p0=dat_bufge;dula=0;p0=0 xff;wela=1;p0=0 xfd;wela=0;delay(1);20dula=1;p0=dat_bufshi;dula=0;p0=0 xff;wela=1;p0=0 xfb;wela=0;delay(1);dula=1;p0=dat_bufge;dula=0;p0=0 xff;wela=1;p0=0 xf7;wela=0;delay(1);void i

35、sr0(void) interrupt 0/外部中斷 0 服務(wù)例程rate+; void t0isr(void) interrupt 1/定時(shí)器 t0 中斷響應(yīng)unsigned char ge,shi;tl0=0 x0c;th0=0 xf0;ttt+;if(ttt500) ttt=0; shi=rate/10; ge=rate%10; rate=0; main() tmod=0 x00; tl0=0 x0c;th0=0 xf0;pt0=0;21tr0=1;et0=1; it0=1;/外部中斷 0 為下降沿觸發(fā)ex0=1;/開(kāi) ex0 中斷ea=1; while(1) uchar shi,ge;

36、g=0;enb=0;in3=1;in4=0;display(shi,ge);#include #define uchar unsigned char#define uint unsigned intsbit g=p16;sbit enb=p11;sbit in3=p12;sbit in4=p10;sbit wela=p27;sbit dula=p26;int rate;unsigned char dat_buf10=0 x3f,0 x06,0 x5b,0 x4f,0 x66,0 x6d,0 x7c,0 x07,0 x7f,0 x67;uint ttt=0;void delay(uint z)u

37、int x,y;for(x=z;x0;x-)for(y=110;y0;y-);void display(uchar shi,uchar ge)dula=1;p0=dat_bufshi;dula=0;p0=0 xff;wela=1;p0=0 xfe;22wela=0;delay(1);dula=1;p0=dat_bufge;dula=0;p0=0 xff;wela=1;p0=0 xfd;wela=0;delay(1);dula=1;p0=dat_bufshi;dula=0;p0=0 xff;wela=1;p0=0 xfb;wela=0;delay(1);dula=1;p0=dat_bufge;d

38、ula=0;p0=0 xff;wela=1;p0=0 xf7;wela=0;delay(1);void isr0(void) interrupt 0/外部中斷 0 服務(wù)例程rate+; void t0isr(void) interrupt 1/定時(shí)器 t0 中斷響應(yīng)unsigned char ge,shi;tl0=0 x0c;th0=0 xf0;ttt+;if(ttt500) 23 ttt=0; shi=rate/10; ge=rate%10; rate=0; main() tmod=0 x00; tl0=0 x0c;th0=0 xf0;pt0=0;tr0=1;et0=1; it0=1;/外部

39、中斷 0 為下降沿觸發(fā)ex0=1;/開(kāi) ex0 中斷ea=1; while(1) uchar shi,ge;g=0;enb=0;in3=1;in4=0;display(shi,ge);#include #define uchar unsigned char#define uint unsigned intsbit g=p16;sbit enb=p11;sbit in3=p12;sbit in4=p10;sbit wela=p27;sbit dula=p26;int rate;unsigned char dat_buf10=0 x3f,0 x06,0 x5b,0 x4f,0 x66,0 x6d,

40、0 x7c,0 x07,0 x7f,0 x67;uint ttt=0;void delay(uint z)24uint x,y;for(x=z;x0;x-)for(y=110;y0;y-);void display(uchar shi,uchar ge)dula=1;p0=dat_bufshi;dula=0;p0=0 xff;wela=1;p0=0 xfe;wela=0;delay(1);dula=1;p0=dat_bufge;dula=0;p0=0 xff;wela=1;p0=0 xfd;wela=0;delay(1);dula=1;p0=dat_bufshi;dula=0;p0=0 xff;wela=1;p0=0 xfb;wela=0;delay(1);dula=1;p0=dat_bufge;dula=0;

溫馨提示

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

評(píng)論

0/150

提交評(píng)論