單片機測速儀課程設計_第1頁
單片機測速儀課程設計_第2頁
單片機測速儀課程設計_第3頁
單片機測速儀課程設計_第4頁
單片機測速儀課程設計_第5頁
已閱讀5頁,還剩22頁未讀, 繼續免費閱讀

下載本文檔

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

文檔簡介

1、CHANGZHOU INSTITUTE OF TECHNOLOGY 科研實踐題目:基于單片機的測速器設計二級學院(直屬學部): 延陵學院 專業: 電氣工程及其自動化 班級: 10電Y1 學生姓名: 葉翔 學號: 10120731 指導教師姓名: 范力旻 職稱: 副教授 2013年12月30日至2014年1月10日1.緒論31.1 課題研究背景及意義31.2 課題研究的內容32.測速器的系統概論52.1 系統的主要功能52.2 系統需求分析52.3 測速器的工作流程53總體設計方案83.1 單片機的選擇8單片機的引腳功能介紹83.2測速器方案論證93.2.1方案的提出9方案的比較及確定114.硬

2、件設計124.1總體設計結構圖124.2最小系統電路設計12時鐘頻率電路圖12復位電路圖設計134.3輸入電路設計16鍵盤電路的設計16功能鍵系統設計164.4輸出電路設計17數碼管顯示電路17報警電路的設計185.Proteus仿真195.1 proteus軟件的介紹及使用195.2測速器proteus軟件的仿真196.實物制作226.1電路板焊接226.2電路板調試227.總結和展望237.1科研實踐總結237.2對未來的展望23附錄241.參考文獻242.元器件清單243原理圖264實物圖275.程序代碼(C語言):281.緒論1.1 課題研究背景及意義隨著汽車工業和高速公路建設的發展,

3、每年由各種交通事故造成的人員傷亡數目驚人,造成了巨大的經濟損失。 據統計,造成各種交通事故的主要原因是車輛的超載和超速行駛,而后者隨機性很大,糾章困難,而且由于中國公路條件復雜,不同等級的公路允許的最高速度不同,現有的限速裝置難以適應這種情況。 針對這種狀況,開發具有智能決策模塊的汽車。近年來隨著科技的飛速本設計是發展,為了克服傳統模擬車速顯示儀表顯示數不準確及沒有超速提示的缺點,數字化儀表迅速的進入汽車儀表行業,成為一種趨勢,本文從駕駛員自身安全角度出發,設計了一種檢測車輛超速的報警系統。該報警系統允許駕駛員通過自帶鍵盤設置本車輛安全行駛的最高速度 當車輛處于行駛狀態中,該系統通過速度傳感器

4、時刻監測機動車輛。并通過LED顯示車輛的實際車速和用戶設置的安全參數當發現車輛速度超過駕駛員設置的最高值時,蜂鳴器開始報警,警告燈不斷閃爍,提醒駕駛員減速。達到防患于未然的目的。單片機的應用正在不斷地走向深入,同時帶動傳統控制檢測日新月益更新。在實時檢測和自動控制的單片機應用系統中,單片機往往是作為一個核心部件來使用。此設計就是一種利用8051單片機對機動車超速行駛情況進行蜂鳴報警和燈光報警的系統。該系統結構簡單,可靠性高,操作方便,可廣泛應用于摩托車、汽車等機動車輛。1.2 課題研究的內容本文要求設計一個具有數字顯示功能的單片機系統,實現車輛當前速度輸出,當達到所設定的速度上限時并報警,以保

5、證駕駛人員的人身安全。首先要進行系統的總體方案設計,在設計中一般應考慮以下幾點:(1) 遵循從整體到局部的設計原則。在過程中,應遵循從整體到局部的設計原則,把復雜難處理的問題分為若干個較為簡單的、容易處理的問題,分別加以解決。(2) 經濟性要求。為了獲得較高的性能價格比,設計時不應盲目追求復雜高級的方案。在滿足性能指針的前提下,應盡可能采用簡單的方案,因為方案簡單意味著所用的元器件少,可靠性高,而且比較經濟。(3) 可靠性要求。所謂可靠性是指產品在規定的條件下和規定的時間內完成規定功能的能力??煽啃灾羔槼丝捎猛瓿晒δ艿母怕时硎就?,還可以用平均無故障時間、故障率、失效率或平均壽命等來表示。2.

6、測速器的系統概論2.1 系統的主要功能軟件分為主程序、數據處理子程序、按鍵子程序、中斷服務子程序、LED數碼顯示子程序、聲光報警器報警程序等。主程序主要完成硬件初始化、子程序調用以及顯示、報警等功能。數據處理子程序主要完成監測車輛速度即主要是計算出車輛的時速,為報警子程序提供參考數據;按鍵中斷子程序主要實現合法參數的輸入;報警子程序主要實現在車輛超速行駛狀態下發出報警信號,包括SPEAKER輸出子程序和警報燈的閃爍子程序;顯示子程序設計采用數字化顯示用戶設定的最高時速和車輛實際時速,用MAX7219芯片驅動LED進行動態顯示2.2 系統需求分析1. 利用霍爾傳感器產生里程數的脈沖信號。2. 對

7、脈沖信號進行計數。實現:利用單片機自帶的計數器T1對霍爾傳感器脈沖信號進行計數。3. 對數據進行處理,要求用LED顯示里程總數和即時速度。實現:利用軟件編程,對數據進行處理得到需要的數值。最終實現目標:自行車的速度里程表具有里程、速度測試與顯示功能,采用單片機作控制,顯示電路可顯示里程及速度。2.3 測速器的工作流程對于本課題所研制的車速報警系統而言,其基本出發點就是利用現有工藝條件,采用現代計算機軟件處理技術,提高系統的精度等級和工作的穩定性,拓展其功能,并賦予其智能化特征,使報警器不僅能夠及時準確地顯示車輛的當前速度信息,同時盡可能地減少不必要的人工操作,使報警能隨時隨地不間斷進行并保證報

8、警的工作效率。有鑒于此,同時根據系統的要求,確定系統總設計方案如圖所示:搶答器工作流程圖如圖2-1所示開始初始化初始化T0關中斷按鍵輸入Vm聲光報警結束顯示計算車速開中斷接收傳感信號VVmYN圖2-1 速度儀工作流程圖工作過程描述:因條件有限改選為使用按鍵測速,計數器T1計算每按鍵一次所用的時間t,就可以計算出即時速度v。當里程鍵按下時,里程指示燈亮,LED切換顯示當前里程,與當速度鍵按下時,速度指示燈亮,LED切換顯示當前速度。當顯示當前速度超過設定上限速度,便產生報警提示。3總體設計方案3.1 單片機的選擇 ATMEL公司的89C52單片機,是增強型RISC內載Flash的單片機,芯片上的

9、Flash存儲器附在用戶的產品中,可隨時編程,再編程,使用戶的產品設計容易,更新換代方便。89C52單片機采用增強的RISC結構,使其具有高速處理能力,在一個時鐘周期內可執行復雜的指令,每MHz可實現1MIPS的處理能力。89C52單片機工作電壓為2.76.0V,可以實現耗電最優化。由于單片機的種類很多,在選擇單片機時要依據實際設計要求選擇合適的單片機。例如當設計僅僅需要一個單片機定時器那么選擇89C1051或89C2051即可,而不選擇89C52,因為后者的價格較高一些。當然若程序和數據區的要求較高那么選擇的單片機還要滿足程序空間的要求。表3-1 51和52的比較 數據存儲器程序存儲器定時器

10、中斷51系列128B4KB2552系列256B8KB38在本課題中,由于程序代碼生成的.HEX格式的文件大小可能大于4KB,所以選用52系列單片機,即選用ATMEL公司的AT89C52。單片機的引腳功能介紹 AT89C52是美國ATMEL公司生產的低電壓,高性能CMOS 8位單片機,片內含8K Bytes的可反復擦寫的只讀程序存儲器(EPROM)和256 字節的隨機存取數據存儲器(RAM),器件采用ATMEL公司的高密度、非易失性存儲技術生產,與標準MCS-51指令系統及8052產品引腳兼容,片內置通用8位中央處理器(CPU)和Flash存儲單元,功能強大,AT89C52單片機適合于許多較為復

11、雜控制場合應用。圖3-2 AT89C52引腳圖AT89C52提供以下標準功能:8K字節Flash閃速存儲器,256字節內部RAM,32個I/O口線,3個16位定時/計數器,5個中斷源,一個全雙工串行通信口,片內具有振蕩器及時鐘電路。AT89C52管腳圖如圖3-2所示。3.2測速器方案論證車速報警系統系統組成主要由單片機控制模塊、霍爾傳感器、LED數碼顯示器及聲光報警器組成。針對任務要求,我們發現此項設計在單片機接口芯片以及按鍵電路上有不同的選擇。因此,設計方案的比較主要對此展開。方案的提出方案一:采取通過帶有I/O接口和計時器的靜態RAM8155芯片與設定速度的鍵盤電路,速度顯示電路,8155

12、芯片具有256個字節的RAM,兩個8位、一個6位的可編程I/O口和一個14為計數器。系統的硬件電路簡圖如圖1-1所示。節氣門開度8155鍵盤輸入LED 數碼管機車車輪霍爾傳感器AT89S52單片機圖3-3 系統硬件電路簡圖霍爾傳感器用來產生脈沖方波,鍵盤輸入用來設定限制速度,當車速超過最大速度Vm時,聲光報警電路將發出報警信號。單片機外部中斷口接霍爾傳感器的輸出,車輪每轉一圈產生一次INT0中斷請求,單片機對INT0中斷請求的次數進行計數。并將在1秒內的計數值轉換成機動車的時速,送至顯示緩沖區以供顯示程序調用。具體算法如下:設單片機每秒計數值為n,即n r/s。設機車車輪的周長為d m,則機車

13、的時速V=dn36km/h。硬件電路方框圖霍爾傳感器的輸出信號經AT89C51的INT0口輸入并存儲在內部R0M 中,AT89C51外擴一片8155芯片,其PB口作為LED數碼管的段選線,PA4PA0作為LED的位選線和鍵盤的列線,PCO和PC1口作為鍵盤的行線,從而組成10個按鍵的鍵盤。AT89C51的P26口外接三極管放大器用來驅動聲光報警電路,P26不斷地輸出101010 的高低電平,驅動聲光報警電路報警。只要使聲光報警電路報警重復輸出256Hz及350Hz的叫聲各073s,便可以模擬警車的叫聲,產生警示作用。機車的上限速度Vm通過鍵盤設置并存儲起來。單片機檢測霍爾傳感器輸出的信息,計算

14、出機車當前的速度v,并送LED顯示。當VVm時,控制聲光報警電路報警發出警示音。方案二:利用高集成化的串行輸入/輸出的共陰極LED驅動顯示器MAX7219及按鍵電路實現。MAX7219芯片用來顯示當前及設定速度,當速度超過最大速度Vm時,聲光報警電路發出報警,按鍵設定用來設定報警速度(最大速度Vm)。方案的比較及確定方案一和方案二比較,方案一采用8155芯片使用單片機引腳較多,采用鍵盤電路較復雜,而且只能顯示當前速度,駕駛員對速度上限透明度不高,總體電路較復雜;方案二采用的MAX7219是一個高集成化的串行輸入/輸出的共陰極LED驅動顯示器,每片可驅動8位7段加小數點的共陰極數碼管,可以數片級

15、聯,而與微處理器的連接只需3根線,且速度設定只需通過幾個按鈕實現即可,并且可以實時實現速度上限的增減,因而硬件電路簡單,人眼視覺效果好,可以方便的為駕駛員提供信息,易于實現維護,且MAX7219內部設有掃描電路,除了更新顯示數據時從單片機接收數據外,平時獨立工作,極大地節省了MCU有限的運行時間和程序資源。 4.硬件設計4.1總體設計結構圖 數字搶答器的總體設計結構見圖4-1: 圖4-1測速器總體結構圖4.2最小系統電路設計時鐘頻率電路圖 單片機必須在時鐘的驅動下才能工作.由之前所學的單片機原理最小系統內容,在單片機內部有一個時鐘振蕩電路,只需要外接一個振蕩源就能產生一定的時鐘信號送到單片機內

16、部的各個單元,決定單片機的工作速度,晶振電路的選擇在軟件部分有描述。 時鐘頻率電路見圖4-2:圖4-2時鐘頻率電路圖復位電路圖設計AT89C52單片機的復位輸入引腳RET為AT89C52提供了初始化的手段。有了它可以使程序從指定處開始執行,即從程序存儲器中的0000H地址單元開始執行程序。在89C52的時鐘電路工作后,只要在RET引腳上出現兩個機器周期以上的高電平時,單片機內部則初始復位。只要RET保持高電平,則89C52循環復位。只有當RET由高電平變成低電平以后,89C52才從0000H地址開始執行程序。本系統的復位電路是采用按鍵復位的電路,如圖2.12所示,是常用復位電路之一。單片機復位

17、通過按動按鈕產生高電平復位稱手動復位。上電時,剛接通電源,電容C相當于瞬間短路,+5V立即加到RET/VPD端,該高電平使89C52全機自動復位,這就是上電復位;若運行過程中需要程序從頭執行,只需按動按鈕即可。按下按鈕,則直接把+5V加到了RET/VPD端從而復位稱為手動復位。復位后,P0到P3并行I/O口全為高電平,其它寄存器全部清零,只有SBUF寄存器狀態不確定。復位是單片機的初始化操作,只需要給8051的復位引腳RST加上大于兩個機器周期(即24個時鐘振蕩周期)的高電平就可得到8051復位,復位時,PC初始化為0000H,時8051從OUT單元開始執行程序。除了進入系統正常初始化之外由于

18、程序運行出錯或者操作錯誤而使系統處于死鎖狀態,為擺脫死鎖狀態,也需要按復位鍵使得RST腳為高電平,使8051重新啟動。在系統中,有時出現顯示不正常,也為了調試方便,我們需要設計一個復位電路,在系統中,復位電路主要完成系統的上電復位和系統在運行時用戶的按鍵復位功能。復位可以由簡單的RC電路構成,也可使用其他的相對復雜但功能更完善的電路。本系統采用的電路如圖3-3所示,工作原理是:上電瞬間,RC電路充電,RESET引腳端出現正脈沖,只要RESET保持10ms以上高電平,就能使單片機有效的復位。當時鐘頻率選用6MHZ時,其中C=22uF,R3=1K歐姆,R4=200歐姆單片機的第9腳RST為硬件復位

19、端,只要將該端持續4個機器周期即4us的高電平即可實現復位,復位后單片機的各狀態都恢復到初始化狀態,復位按鈕按下后即可輸入高電平。 復位時間計算:當取100us時為高電平,所以可以達到復位作用。復位電路見圖4-3所示:圖4-3復位電路圖電源電路的設計:直流穩壓電源又稱直流穩壓器。它的供電電壓大都是交流電壓,當交流供電電壓的電壓或輸出負載電阻變化時,穩壓器的直接輸出電壓都能保持穩定。穩壓器的參數有電壓穩定度、紋波系數和響應速度等。前者表示輸入電壓的變化對輸出電壓的影響。紋波系數表示在額定工作情況下,輸出電壓中交流分量的大小;后者表示輸入電壓或負載急劇變化時,電壓回到正常值所需時間。直流穩壓電源分

20、連續導電式與開關式兩類。前者由工頻變壓器把單相或三相交流電壓變到適當值,然后經整流、濾波,獲得不穩定的直流電源,再經穩壓電路得到穩定電壓(或電流)。這種電源線路簡單、紋波小、相互干擾小,但體積大、耗材多,效率低(常低于4060)。后者以改變調整元件(或開關)的通斷時間比來調節輸出電壓,從而達到穩壓。這類電源功耗小,效率可達85左右,但缺點是紋波大、相互干擾大。所以,80年代以來發展迅速。從工作方式上可分為:可控整流型。用改變晶閘管的導通時間來調整輸出電壓。斬波型。輸入是不穩定的直流電壓,以改變開關電路的通斷比得到單向脈動直流,再經濾波后得到穩定直流電壓。變換器型。不穩定直流電壓先經逆變器變換成

21、高頻交流電,再經變壓、整流、濾波后,從所得新的直流輸出電壓取樣,反饋控制逆變器工作頻率,達到穩定輸出直流電壓的目的。電源電路的功能和組成每個電子設備都有一個供給能量的電源電路。電源電路有整流電源、逆變電源和變頻器三種。常見的家用電器中多數要用到直流電源。直流電源的最簡單的供電方法是用電池。由于系統要求我們使用7805進行穩壓,所以我們選擇9V的直流電池,由于電池具有成本低、體積小、攜帶方便、不需要隨時跟換等優點,因此比較經濟實惠。7805三端穩壓集成電路,電子產品中,常見的三端穩壓集成電路有正電壓輸出的78 系列和負電壓輸出的79系列。顧名思義,三端IC是指這種穩壓用的集成電路,只有三條引腳輸

22、出,分別是輸入端、接地端和輸出端。 78系列三端穩壓IC來組成穩壓電源所需的外圍元件極少,電路內部還有過流、過熱及調整管的保護電路,使用起來可靠、方便,而且價格便宜。7805表示輸出電壓為+5V。電源電路見圖4-4所示:圖4-4 電源電路4.3輸入電路設計鍵盤電路的設計在單片機應用中鍵盤用得最多的形式是獨立鍵盤及矩陣鍵盤。本實驗用的是獨立式鍵盤,圖中SW1-SW4表示設置測速上限,SW5表示按鍵測速。鍵盤掃描電路圖見圖4-5:圖4-5搶答器獨立鍵盤圖功能鍵系統設計功能鍵是控制系統功能的按鍵,由于電壓和電流都比較小所以選擇普通的按鈕開關,如型號為:TD-03B,可以滿足條件。功能鍵及對應的功能見

23、表4-1:表4-1 功能鍵及對應功能序號字符功能1START開始2N左起3P加14E/C測速5PUSH暫停6USEING中斷7STOP停止功能鍵系統結構圖見圖4-5:圖4-6功能鍵系統結構圖4.4輸出電路設計數碼管顯示電路顯示電路由MAX7219芯片完成,MAX7219是一種高集成化的串行輸入/輸出的共陰極LED顯示驅動器。每片可驅動8位7段加小數點的共陰極數碼管。SEGASEGG(圖中為A到G)為LED七段顯示器段驅動端,SEGDP為小數點驅動端;(SEGASEGG,DP驅動顯示器7段及小數點的輸出電流,一般為40 mA左右,可軟件調整,關閉狀態時,接入GND。)DIG7DIG0:8位數值驅

24、動線。輸出位選信號,從每個LED公共陰極吸入電流,吸收顯示器共陰極電流的位驅動線。其最大值可達500 mA,關閉狀態時,輸出VCC。MAX7219與LED數碼管連接如下圖圖2-3 MAX7219與LED數碼管連接電路圖報警電路的設計報警模塊豐要負責聲音報警和燈光報警,報警電路均比較簡單,聲音報警由單片機引腳接上拉電阻,晶體管及揚聲器構成,燈光報警由兩個發光二極管構成,電路設計簡圖如下圖 圖2-2 聲光式報警電路 5.Proteus仿真5.1 proteus軟件的介紹及使用什么是Proteus軟件Proteus軟件是Labcenter Electronics公司的一款電路設計與仿真軟件,它包括I

25、SIS、ARES等軟件模塊,ARES模塊主要用來完成PCB的設計,而ISIS模塊用來完成電路原理圖的布圖與仿真。Proteus的軟件仿真基于VSM技術,它與其他軟件最大的不同也是最大的優勢就在于它能仿真大量的單片機芯片,比如MCS-51系列、PIC系列等等,以及單片機外圍電路,比如按鍵、LED、數碼管等等。通過Proteus仿真軟件的使用我們能夠輕易地獲得一個功能齊全、實用方便的單片機實驗室。5.1.2 怎樣操作Proteus仿真軟件我使用的Proteus軟件是7.10版本的,仿真時只需在AT89C52單片機中加載Keil軟件生成的.HEX格式文件,即可啟動仿真。5.2測速器proteus軟件

26、的仿真繪制搶答器的軟件仿真圖步驟分一下四步:(1)查找所需要的元器件;(2)根據電路圖進行連線;(3)是用來寫線所對應的坐標,即下圖所示的P11等坐標;(4)加載所寫完的C程序生成的.HEX文件即可以仿真。通過以上步驟,來實現搶答器設計的仿真實現,仿真如下圖所示:仿真開始時的仿真如圖6-1:圖5-1 開始時的proteus仿真圖測速器開始時用按鍵來調制速度上限的仿真如圖5-2: 5-2 設置速度上限的proteus仿真圖測速器開始按鍵測速仿真如圖5-3: 圖5-3 測速器按鍵測速的proteus仿真圖測速器速度超過速度上限的仿真如圖5-4: 圖5-4 測速器速度超過速度上限的proteus仿真

27、圖6.實物制作6.1電路板焊接一般來說,造成硬件問題的首要問題就是焊接了,也就是說焊接的好與壞直接響產品的正常運行。造成焊接質量不高的常見原因是:焊錫用量過多,形成焊點的錫堆積;焊錫過少,不足以包裹焊點。冷焊。焊接時烙鐵溫度過低或加熱時間不足,焊錫未完全熔化、浸潤、焊錫表面不光亮(不光滑),有細小裂紋(如同豆腐渣一樣!)。夾松香焊接,焊錫與元器件或印刷板之間夾雜著一層松香,造成電連接不良。若夾雜加熱不足的松香,則焊點下有一層黃褐色松香膜;若加熱溫度太高,則焊點下有一層碳化松香的黑色膜。對于有加熱不足的松香膜的情況,可以用烙鐵進行補焊。對形成的黑膜,要吃凈焊錫,清潔被焊元器件或印刷板表面,重新進

28、行焊接才行。焊錫連橋。指焊錫量過多,造成元器件的焊點之間短路。這在對超小元器件及細小印刷電路板進行焊接時要尤為注意。焊劑過量,焊點明圍松香殘渣很多。當少量松香殘留時,可以用電烙鐵再輕輕加熱一下,讓松香揮發掉,也可以用蘸有無水酒精的棉球,擦去多余的松香或焊劑。焊點表面的焊錫形成尖銳的突尖。這多是由于加熱溫度不足或焊劑過少,以及烙鐵離開焊點時角度不當浩成的內。6.2電路板調試 最小系統的電路不工作,首先應該確認電源電壓是否正常。用電壓表測量接地引腳跟電源引腳之間的電壓,看是否符合電源電壓,常用的是5V左右。接下來就是檢測復位引腳的電壓是否正常,EA引腳的電壓要正常為5V左右。 如果補焊電源后最小系

29、統還是不能工作,有可能是AT89C52單片機壞掉了,重新選擇一個AT89C52單片機焊接。如果是工作但是不能按需要的功能執行,也可用更換AT89C52單片機方法調試,但在此之前可以選擇檢查對應的模塊是否有焊接問題,若沒有再進行更換。 7.總結和展望7.1科研實踐總結 此系統充分利用了單片機小而靈活、成本低、可靠性高等特點,以其為心,成功的設計出了能測算出物體轉速的產品,即讓我回故了以前所學的知識,又有新的心德體驗,開發了我的智力。在大學畢業之前,能設計出一個電子產品,我深感欣慰,也感到無比的興奮和激動,大學幾年有所收獲。本次設計有個遺憾,就是這個設計實用價值不怎樣太高,產品功能較少,當然,這是

30、選題時的一些不足之處。希望下一次,能設計出可以大量生產的產品,一個更好更實用的產品,來服務于現代化建設。7.2對未來的展望 經過這次的基于單片機的測速儀的設計,讓我學到很多東西,但就我個人感覺而言,學到的東西,對我今后的學習有重要的指導作用,這次學習對我的確很重要,至少我認可了自己,在過去的三年里,還是學到了一些有用的課本知識。我學到了如何務實,如何去學一門技術,同時也知道了如何學習,什么才是學習。如果每天都能像這樣的學習,大學三年的課程,一年就夠了,或許還不要。這次的學習比我在讀高三時都還累。技術學到了,也許會忘記,學習的方法學到了,是一輩子的財富。同時這也是值得回憶的?,F在看看自己以前自學

31、的一點東西,學了都有將近一年了,還是一個新手。這次學習讓我知道了,只要想學,一個月就夠了,關鍵是有沒有毅力和壓力。自學的更是這樣的,沒有周圍人的壓力,就要自己去找壓力?,F在學到的東西,在書本上是學不來的,在以后的工作中一定也會用到的,一定要自己經歷了,在實踐中才學得到。這短暫的時間也許會對我的未來有大的影響。很感激學院提供這次學習機會給我,這次學習絕對是一次成長的機會。希望在以后的工作中,我今天學到的東西,能有用武之地。附錄1.參考文獻1 范力旻.單片機原理及應用技術.電子工業出版社2 李全利.單片機原理及應用技術M.北京: 高等教育出版社,2004.3 蔡朝陽.單片機控制實習與專題制作M.北

32、京:北航出版社,2006年. 4 .高偉.單片機原理及應用M.北京:國防工業出版社,2008年.5 胡文金 楊健.單片機應用技術實訓教程.重慶大學出版社. 6 楊加國.單片機原理與應用及C51程序設計.清華大學出版社,2006年.7 樓然苗,李光飛. 51系列單片機設計實例M. 北京航空航天大學出版社,2006.8 郭培源.電子電路及電子器件.高等教育出版社,2003年.9 張齊 朱寧西.單片機應用系統設計實驗(C51).電子工業出版社,2013年.2.元器件清單序號文字標號名稱數量規格型號備注1R1-R8電阻器81K2R9電阻器110k3R10電阻器14k4R11電阻器14k5C1 C2電容

33、230PF無極性6C3 電容110uF無極性7U1單片機1AT89C527LCD顯示器1LMO16L8D1-D8二極管8LED-RED9SW1-SW8按鈕8TD-03B10START等按鈕8TD-03B11X1晶振1CRYSTA12VCC電源15V13Key1開關1控制電源3原理圖4實物圖葉翔張凱強 10電Y15.程序代碼(C語言):/電機測速/宏定義#define uchar unsigned char#define uint unsigned int /頭函數聲明#include #include Lcd.h/光耦sbit GO=P33;/鍵盤定義sbit K=P12;/采集轉速完成標志u

34、char DOK=0;ucharDFOK=0;/時間/Suint time=0;/Fuint time_F=0;/電機轉速uint DZ1=0;uint DZ2=0;uint DZ3=0;uint DZ4=0;/uchar DZ_S=0;/每秒鐘圈數uchar QS=0;/每分鐘圈數uint QF1=0;uint QF2=0;void Init(void);/主函數void main()uchar i=0;/寄存器初始化Init();Init_LCD();while(1)if(DOK=1)DOK=0;time=0;display_S(QS);QS=0;if(DFOK=1)DFOK=0;time

35、_F=0;display_F(QF1,QF2);QF1=0;QF2=0;display_LC(DZ1,DZ2,DZ3,DZ4);if(K=0)delay(100);while(K=0);DZ1=0;DZ2=0;DZ3=0;DZ4=0;QS=0;QF1=0;QF2=0;/初始化void Init(void)/定時器0開TMOD = 0x01;/50msTH0 = 0x3C;TL0 = 0x0B0;ET0 = 1;TR0 = 1;/總中斷開EA = 1;/T0計數器優先級最高PT0=1;/低電平有效IT1=0;/外部中斷1開EX1=1; /外部中斷1void INT1_Init() interru

36、pt 2DZ4+;if(DZ4=10000)DZ4=0;DZ3+;if(DZ3=10000)DZ3=0;DZ2+;if(DZ2=10000)DZ2=0;DZ1+;/數據讀取完畢if(DOK=0)QS+;/數據讀取完畢if(DFOK=0)QF2+;if(QF2=1000)QF2=0;QF1+;if(QF1=1000)QF1=0;/等待中斷結束while(GO=0);/T0計數器中斷void T0_Init() interrupt 1 /0初始化50ms TH0 = 0x4C; TL0 = 0x00; time+; time_F+; if(time=20&DOK=0)/1s轉速采集完畢 time=0;DOK=1; if(time_F=1200&DFOK=0)/1Fen轉速采集完畢 time_F=0;DFOK=1; /此函數提供與屏幕顯示相關的函數及聲明/管腳定義sbit rs=P27;sbit lcden=P26;/屏幕初始化/待機開始尋找溫

溫馨提示

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

評論

0/150

提交評論