![基于單片機的超速報警器的設(shè)計講解_第1頁](http://file4.renrendoc.com/view/3881b9f2879c64f02ca1fb154f0cbc05/3881b9f2879c64f02ca1fb154f0cbc051.gif)
![基于單片機的超速報警器的設(shè)計講解_第2頁](http://file4.renrendoc.com/view/3881b9f2879c64f02ca1fb154f0cbc05/3881b9f2879c64f02ca1fb154f0cbc052.gif)
![基于單片機的超速報警器的設(shè)計講解_第3頁](http://file4.renrendoc.com/view/3881b9f2879c64f02ca1fb154f0cbc05/3881b9f2879c64f02ca1fb154f0cbc053.gif)
![基于單片機的超速報警器的設(shè)計講解_第4頁](http://file4.renrendoc.com/view/3881b9f2879c64f02ca1fb154f0cbc05/3881b9f2879c64f02ca1fb154f0cbc054.gif)
![基于單片機的超速報警器的設(shè)計講解_第5頁](http://file4.renrendoc.com/view/3881b9f2879c64f02ca1fb154f0cbc05/3881b9f2879c64f02ca1fb154f0cbc055.gif)
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
鄭州輕工業(yè)學院本科畢業(yè)設(shè)計(論文)基于單片機的超速報警器的設(shè)計基于單片機的超速報警器的設(shè)計(2)復位電路復位電路通常采用上電自動復位和按鈕復位兩種方式。本次設(shè)計的復位電路就綜合以上兩種方式的優(yōu)點,在開始上電后供電端給電容 C充電,RST引腳會接收到一個時間很短的高電平信號,因為電容本身的特性隔直通交,供電端對電容C的不斷充電,在此過程中短暫的高電平信號而逐漸回降。把按鈕并聯(lián)在電容兩端,當程序跑飛或使用者需要時按鈕按下, RST引腳變成高電平實現(xiàn)手動復位。電路圖如圖3-9。R110K復位按提C2阿10LFR110K復位按提C2阿10LF圖3-9復位電路完整的STC89C51單片機最小系統(tǒng)電路圖如圖3-10所示。,'ll,'ll圖3-10單片機最小系統(tǒng)霍爾電路的設(shè)計
在本設(shè)計中通過采用方案一的霍爾傳感器進行感應(yīng)磁輪轉(zhuǎn)動的信息, 由于霍爾傳感器輸出的信號接入單片機的外部中斷 INT0供單片機進行檢測,整個測速過程的信號轉(zhuǎn)變?nèi)鐖D3-11所示。霍爾元件的實際電路引腳連接如圖 3-12所示圖3-12霍爾元件引腳連接圖報警電路的設(shè)計報警的電路設(shè)計的簡單明了,采用磁式蜂鳴器和發(fā)光二極管進行報警,當前車速超過預(yù)設(shè)定值時,單片機的引腳P2.4輸出高電平使三極管導通,磁式蜂鳴器和二極管通電,磁式蜂鳴器振動膜片振動發(fā)聲同時二極管亮。如圖3-13所示。圖3-13報警電路引腳圖按鍵電路的設(shè)計本設(shè)計中設(shè)置有按鍵電路,通過幾個獨立按鍵進行報警速度上限值的設(shè)置。當按鍵按下時,單片機引腳P33或P34變成低電平,單片機執(zhí)行相應(yīng)的程序?qū)λ俣壬舷拗颠M行設(shè)計。如圖3-14所示。 Q O-0-——
圖3-14按鍵電路顯示電路的設(shè)計本設(shè)計采用LCD1602作為顯示器,LCD1602與單片機的之間的硬件連接電路簡單,且顯示對比度可通過滑動變阻器調(diào)節(jié)。 RS是數(shù)據(jù)和指令引腳,RS為高電平和低電平時分別對應(yīng)數(shù)據(jù)寄存和指令寄存。本設(shè)計因為只需向LCD液晶顯示器寫數(shù)據(jù)并不需要讀數(shù)據(jù),所以直接把R/W引腳接地實現(xiàn)寫信號功能即可,這樣就簡化了硬件電路的設(shè)計,節(jié)省成本。如圖3-15所示。圖3-15LCD電路連接圖
4系統(tǒng)軟件設(shè)計對于要開發(fā)一款實用性的產(chǎn)品,其程序設(shè)計的也是重要的一環(huán),程序設(shè)計的優(yōu)化性好才能充分發(fā)揮硬件的能力,程序設(shè)計一般可以從以下幾方面加以考慮:⑴根據(jù)軟件功能要求將系統(tǒng)分成若干相對獨立的部分,設(shè)計出合理的總體結(jié)構(gòu)。(2)各程序?qū)嵭心K化、子程序化。既便于調(diào)試、修改和移植。⑶應(yīng)在軟件程序編寫前繪制出程序流程圖。程序流程圖決定這源程序的編輯和調(diào)試時間的長短。(4)合理分配系統(tǒng)資源。此次設(shè)計軟件部分模塊化設(shè)計,由主程序模塊、功能實現(xiàn)模塊和運算控制模塊組成。主程序流程圖如圖4-1所示。初始化開始定時器開始工作中斷等待調(diào)用中斷子程序計算并顯示當前速度聲光報警結(jié)束初始化開始定時器開始工作中斷等待調(diào)用中斷子程序計算并顯示當前速度聲光報警結(jié)束圖4-1主程序流程圖4.1主程序的設(shè)計一個完整的單片機系統(tǒng)程序的編寫離不開各部分子程序的調(diào)用, 各個子程序相互協(xié)助來系統(tǒng)的功能。系統(tǒng)的主程序主要分為硬件電路的初始化和程序調(diào)用兩部分,合理的主程序的編寫是系統(tǒng)功能實現(xiàn)的一半, 當初始化完成后,定時器開始工作,按鍵掃描程序開始,INTO檢測外部中斷,當中斷響應(yīng)計數(shù)加 1,單片機進行數(shù)據(jù)處理并在LCD1602上顯示速度。按鍵按下時判斷鍵值,當設(shè)置鍵按下開始后續(xù)子程序的調(diào)用,循環(huán)掃描按鍵程序直到設(shè)置鍵按下,進入上限速度設(shè)置子程序設(shè)置速度上限值,單片機判斷是否超速,如果超速就調(diào)用報警子程序進行報警。/***************主函數(shù)***************/voidmain(){init(); //單片機的初始化lcd_init();//LCD1602液晶顯示屏的初始化while(1){display。; //顯示當前車速display_shangxian();//f1示駕駛者自己設(shè)定的速度上限值key(); //檢測上限速度設(shè)置鍵按鍵是否按下alarm(); //單片機執(zhí)行報警程序}}中斷服務(wù)程序設(shè)計此次設(shè)計使用的是單片機的INT0中斷口和單片機內(nèi)部的定時器同時工作。由霍爾傳感器檢測到的脈沖信號傳給單片機INT0口,下降沿觸發(fā)中斷響應(yīng)然后計數(shù)加一,定時器響應(yīng)中斷開始定時,定時器采用方式 1,方式1為16位的的工作方式,定時時間設(shè)定為1ms。當中斷響應(yīng)10此時,計算當前車速。/*************中斷服務(wù)和定時函數(shù)*************/voidEXINT0()interrupt0
count++; 〃脈沖計數(shù)加1flag=1; //標志位為1n=0;if(count>=10){RPM=600000/m;60*1{RPM=600000/m;60*1m=0;count=0;}}voidtime0()interrupt1{TH0=0xfc;TL0=0x18;if(flag==1){ n++;m++;if(n==6000){RPM=0;m=0;n=0;count=0;flag=0;}}}//00/m m單位為ms所以乘以1000//脈沖計數(shù)清零//定時器溢出中斷//單片機定時器開始,采用16位方式1定時//定時1ms,1m后定時溢出,執(zhí)行定時中斷程序//當無速度時,6ms后LCD1602液晶顯示屏//顯示速度為零//計數(shù)脈沖清零//標志位清零按鍵調(diào)速程序的設(shè)計按鍵輸入程序包括按鍵掃描、按鍵去抖動處理、判斷鍵值,調(diào)用相關(guān)程序,
然后把更改過的速度上限值顯示在1602LCD顯示屏上。為了避免單片機對一次按鍵執(zhí)行多次,就必須按鍵消抖動,常用的都是軟件延時程序去抖動,且實用性強。編寫簡單***/{uintpress_num;ucharp;if(add==0){delay(20);if(add==0){while(!add){press_num++;if(press_num>=20){press_num=0;while(!add)編寫簡單***/{uintpress_num;ucharp;if(add==0){delay(20);if(add==0){while(!add){press_num++;if(press_num>=20){press_num=0;while(!add)//當add?下時速度加1//當按下不松時,上限值一次加//一直想上加,知道按鍵松開10{shangxian=shangxian+10;if(shangxian>20000) //設(shè)置上限速度最高設(shè)定shangxian=0; 〃的最大值display_shangxian(); 〃顯示上限速度display。;delay(10);}if(press_num!=0){press_num=0; //按鍵按下一次上限速度值加1shangxian++;if(shangxian>20000)shangxian=0;}}if(dec==0){ //當de嗷下時速度減1delay(20);if(dec==0){while(!dec){press_num++;if(press_num>=20){press_num=0; 〃當按下不松時,上限值一次減 10while(!dec){shangxian=shangxian-10;if(shangxian<0) //設(shè)置上限速度低于0時重新從最高開始減shangxian=20000;display_shangxian();}}display。;delay(10);}if(press_num!=0) //按鍵按下一次上限速度值減1{press_num=0;shangxian--;if(shangxian<0)shangxian=20000;}}}}
顯示程序的設(shè)計LCD1602的指令輸入共有11條,包括清屏指令、顯示開光指令指令、光標字符移動指令、讀忙標志的判斷指令、數(shù)據(jù)的讀寫指令指令等。在開始任務(wù)前都要先執(zhí)行清屏指令,把之前的指令和數(shù)據(jù)全部擦除以便接下來的指令和數(shù)據(jù)的寫入,寫指令先控制寫入的字符或數(shù)字在LCD1602液晶顯示屏中顯示的位置,然后在由數(shù)據(jù)指令寫入數(shù)據(jù)。液晶顯示在顯示速度方面有時并不能及時跟上單片機的指令的輸入,導致某些指令再輸入時失效,所以在指令的執(zhí)行前都應(yīng)該先檢查液晶顯示器是否處于忙碌狀態(tài),如果處于忙碌狀態(tài)就等待直到不忙再執(zhí)行指令。/***********LCD1602顯示函數(shù)*/***********LCD1602顯示函數(shù)**********/ucharcodetablh口={"VH:ucharcodetablh口={"VH:ucharcodetab2h[]={"RV:r/min"}; //轉(zhuǎn)速顯示的固定字符voidwrite_1602comzl(ucharcom){rs=0; //數(shù)據(jù)/指令引腳的電平設(shè)為低電平P0=com;delay(5);en=1;delay(5);en=0; //下降沿產(chǎn)生時執(zhí)行命令}voidwrite_1602datsj(uchardat){rs=1; 〃數(shù)據(jù)/指令弓I腳的電平設(shè)為高電平P0=dat;delay(5);en=1;delay(5);en=0;}voidlcd_init(){uchara;whte_1602comzl(0x38);write_1602comzl(0x0c);write_1602comzl(0x06);write_1602comzl(0x01);write_1602comzl(0x80); 〃顯示內(nèi)容從設(shè)定的位置開始顯示for(a=0;a<16;a++){write_1602datsj(tab1[a]); //寫入固定符號部分}write_1602comzl(0x80+0x40);for(a=0;a<16;a++){write_1602datsj(tab2[a]);}}報警程序的設(shè)計當當前速度超過預(yù)先設(shè)定的報警速度時,進行報警。//************報警程序****************//voidalarm(){if(RPM>=shangxian) //判斷當前車速是否超過預(yù)設(shè)值BUZZ=0; //超速,引腳為低電平,三極管PNP導通elseBUZZ=1;}
5系統(tǒng)仿真調(diào)試測試所需的工具:Keil軟件[何17]、ProtueS18]、系統(tǒng)硬件、PL2303下載器等。當硬件電路搭配好后,接下來就要進入軟件編寫的部分了,關(guān)于單片機軟件的編寫,有專門的keil軟件負責編寫調(diào)試,首先我們要先創(chuàng)建一個項目如圖6-1所示,IQI111-pVi?ionJFileEditViewPrujedLIF也由DebugPeripheralsJoabSVC5WindowHelp(5>日七Target1二口SourceGroup1TtKt?Simulation圖5-1keil設(shè)置選項界面接下來再點擊目標選項按鍵彈出設(shè)置框。在設(shè)置框中我們可以根據(jù)自己的需要更改配置,例如:所選擇的芯片的晶振頻率,在輸出界面設(shè)置是否生成 1TtKt?Simulation圖5-1keil設(shè)置選項界面一般情況下我們都要勾選此生成HEX這個選項,因為在方案設(shè)計初期我們?yōu)榱诉_到理想效果要不斷調(diào)試改進功能,所以直接連接硬件電路進行調(diào)試會很麻煩且浪費時間,中途說不定還要檢查電路的連接問題,使用仿真的話就可以減少很多不必要的麻煩。在后期的仿真電路中因為要導入HEX文件,所以必須要生成HEX文件,才能使仿真運行。在軟件編寫時要依循系統(tǒng)框圖的設(shè)計, 從整體到部分進行軟件編寫,在軟件編寫的過程中我們難免不會遇到困難, 中途產(chǎn)生各種錯誤和警告,這時我們就要仔細檢查程序,在keil軟件下方有個buildoutput的窗口,
它會及時反映出程序的出錯點和警告點,我們可以雙擊錯誤的信息就會自動跳轉(zhuǎn)到出現(xiàn)錯誤的代碼行。有時編譯總是提示某個參數(shù)未定義,但我們給過定義了,這時就要考慮子程序的順序,也許調(diào)換一下子程序的順序就可以解決這個問題。當程序全部編寫完成后,將編寫好的程序生成.HEX文件如圖5-2所示。mrpm-pVi54on4fileEdit?ewErodedFl必h口23Peripherah憎JVCSwindowHelpPfr-oject日曰Target1B白日曰Target1B白SourceGroup1…國STARTUP,附&哥rpm.c…圖reg52,h001|#include<reg52.h>M2003unsignedcnar004■tdefineuiA'ClanBigTied005?defineRKEYPl00G007008009“定義i石醛相關(guān)管唧010suit19二口廠七011sbiten-P2^e?012013“技舞定義Q14售butadd=P3rt3;015abitdec-P3A4;016tn?018019uintcount,nPn;020nnsignedlongB.PH;02uc^ar022bitflag;iTbitflaa2=l;Prograir.Size3:dataw30.2xdata?0cade?1506 %crea^xnghex.filefrom4txpmL,一"rpm0-0Error(£)r0Earning(3).SiimulationiBuildtaraetfilesSiimulationi圖5-2keil程序圖然后再搭建Protues仿真電路圖如圖5-3所示,把HEX文件導入仿真。Protues是一款功能強大的基于單片機的仿真軟件,其自帶有強大的元件庫供使用者使用,Protues和keil聯(lián)調(diào)使用[19],實現(xiàn)程序的快速更改。當仿真成功后通過PL2303下載器下載到單片機中。通過觀察整個系統(tǒng)運行的狀態(tài),然后進行反復的修改調(diào)試程序,最終得到一個完善的程序。
E3R?-l£l£P(guān)TcJ—gnH1訪一■,J — □X宓琳>WB<V)編?舊工UH) i?代碼㈤調(diào)試⑻JRU1■畫MjK;維(V)U聊用口e3?值電舊?|]囪屈1*1+飛辦8*|]>9??f1>?f1>fIII■IO5He^anet:) 顯示當mUllEi的元件圖5-3仿真電路圖然后再搭建Protues仿真電路圖如圖6-3所示,把HEX文件導入仿真。Protues是一款功能強大的基于單片機的仿真軟件,其自帶有強大的元件庫供使用者使用,Protues和keil聯(lián)調(diào)使用[20],實現(xiàn)程序的快速更改。當仿真成功后通過PL2303下載器下載到單片機中。通過觀察整個系統(tǒng)運行的狀態(tài),然后進行反復的修改調(diào)試程序,最終得到一個完善的程序。最終的模擬實際情況的電路圖正面如圖 5-4(a)所示,反面圖如5-4(b)所示。I定斷刀期■ S-0評抬 啟LUEAT9SC51BUTTONfeUZZEALMOlgLNOTPHPRE5RE與網(wǎng)CKB古沙比30"切牙\33口0抬 啟LUEAT9SC51BUTTONfeUZZEALMOlgLNOTPHPRE5RE與網(wǎng)CKB古沙比30"切牙\33口0A5*BUZ1■UEZHT■rTETT-UH:10S00r-^Hin@L/ninbKTAil用工"口0聞i^j^aXTTM2mswxPQgdHASTHJJjhDl?ZIA9I2JUQ.DIKEM?工瓏11M.IIFPIJP3JYHXDA1.1lnMTHiPI2i32ifnrrA1J■eHTi-1>1.LRXUID*14P1J5p^wwif-冏r而廠JI■fT3.mrq1a券.而占m■盧燈如L#■由(a)(a)(b)圖5-4模擬電路圖(a)電路板正面 (b)電路板反面本次畢業(yè)設(shè)計選到這個題目一開始感覺很簡單,單真正上手才會感覺到并不容易,在硬件軟件方面都遇到不少問題,多虧在我的導師給我們解惑難題,合理安排我們的時間,每周的周二和周四都會定期去見老師,匯報工作進展,同時老師給我們定制學習任務(wù)和工作內(nèi)容,讓我們一步一步完成小的目標,沒有老師的精心規(guī)劃和指導幫助畢業(yè)設(shè)計難以順利進行,從選題到硬件電路的排版、焊接再到軟件編程等等各個方面,導師給予了我他的想法以及建議,在我遇到了自己無法獨立解決的問題時,導師也會抽出時間來給我解答以及指導。當自己一個人在學習遇到的不會的問題時同學給我?guī)椭?,我的同學也給與了我很大的支持,當我遇到硬件調(diào)試方面以及軟件編寫方面的問題時他們總是和我一起想辦法解決, 一起動手查資料,他們總能夠給我提供力所能及的幫助,感謝他們,很難想象在沒有導師和同學的幫助下,我的畢業(yè)設(shè)計能否如期的完成。結(jié)論本論文致力于設(shè)計一款性價比高的超速報警器。采用最具性價比的元器件設(shè)計出的一款成本低但在測量方面精度不低的良心產(chǎn)品。在當前的超速報警器的市場上,一般的都賣的比較貴,本論文設(shè)計的超速報警器的出現(xiàn)打開了低端的市場的銷量,因為成本低所以在功能方面可能不會有那么強,但在實用性方面還不錯。經(jīng)過制作設(shè)計這段時間的努力終于將本設(shè)計方案要求基本實現(xiàn)。由于時間、水平和經(jīng)驗有限,設(shè)計的作品還存在著一些的不足之處,本論文設(shè)計的超速報警器的功能上的不完善加之低頻段的精度不高,這兩方面的短板也是受到成本的限制。這次畢業(yè)設(shè)計在兩個多月的多的時間里通過不斷地學習, 上網(wǎng)查閱資料,圖書館翻閱文獻資料,一點一點的學習和積累并結(jié)合已學過的專業(yè)知識來規(guī)劃本次的畢業(yè)設(shè)計,不斷地進行方案設(shè)計和論證,在這個學習和實踐過程中我深刻意識到自己經(jīng)驗的不足,以前都是學習知識點沒有太多的實踐的機會,根本意識不到實際動手中可能遇到的問題,沒有老師不斷的給出珍貴的意見和規(guī)劃方向,自己一個人很難上手。直至逐步完善方案,最終實現(xiàn)要達到功能。通過這次的真槍實戰(zhàn)讓我學到了之前從沒接觸過的知識,讓我本身的能力也更加扎實。參考文獻[1]孫璐,郁炮顧文鈞.基于PCA和HMM的汽車保有量預(yù)測方法.[J].交通運輸工程學報,2013,04:93-94.[2]陳育中.霍爾傳感器測速系統(tǒng)的設(shè)計 [J].科學技術(shù)與工程,2010,30:7529-7532.[3]阮毅,陳伯時.電力拖動自動控制系統(tǒng)[M].機械工業(yè)出版社,2009,08:42-44.[4]JaeinLim,BrajalalSinha,ToratiSriRamulu,KunWooKim,Dong-YoungKim,CheolGiKim.NiCosensinglayerforenhancedsignalsinplanarhalleffectsensorsJ].MetalsanMaterialsInternational,2013,194.[5]李連生.電動車超速報警器設(shè)計[J].科技廣場,2013,12:50-53.[6]盧長根,周友佳.磁電式速度傳感器設(shè)計與應(yīng)用[J].機車電傳動,2008,05:48-50.[7]丁芝琴.基于霍爾傳感器的電機測速裝置設(shè)計 [J].農(nóng)機化研
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 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. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 物聯(lián)網(wǎng)技術(shù)在職教實訓室的應(yīng)用前景
- 現(xiàn)代物流配送體系的智能化升級路徑
- 2024年學年八年級語文上冊 第一單元 愛在人間 第3課《蘆花蕩》說課稿 滬教版五四制
- 2024年四年級英語下冊 Unit 5 What will you do this weekend Lesson 25說課稿 人教精通版(三起)
- Unit 1 Greetings(說課稿)-2024-2025學年滬教版(五四制)(2024)英語一年級上冊
- 2023二年級數(shù)學下冊 7 萬以內(nèi)數(shù)的認識第2課時 1000以內(nèi)數(shù)的認識(2)說課稿 新人教版
- Unit 3 Food Let's Spell(說課稿)-2024-2025學年人教新起點版英語三年級上冊
- 2024-2025學年高一地理《宇宙中的地球》說課稿
- 2023六年級數(shù)學上冊 八 探索樂園單元概述和課時安排說課稿 冀教版
- 2024-2025學年高中歷史 專題4 雅爾塔體制下的冷戰(zhàn)與和平 3 人類對和平的追求說課稿(含解析)人民版選修3
- 蘇東坡詞十首
- 山東省臨沂市2024年中考物理真題
- 2023年天津市文化和旅游局直屬事業(yè)單位招聘考試真題及答案
- 電力系統(tǒng)分析(郝亮亮)
- 改善護理服務(wù)行動計劃方案
- 建筑材料包銷協(xié)議書
- 常州市2023-2024學年八年級上學期期末地理試卷(含答案解析)
- 道路安全教育課件
- 《工程款糾紛》課件
- 2023年浙江省衢州市中考語文試題(含答案解析)
- 農(nóng)業(yè)與農(nóng)作物種植
評論
0/150
提交評論