精品】自行車里程表電路設計_畢業(yè)論文設計_第1頁
精品】自行車里程表電路設計_畢業(yè)論文設計_第2頁
精品】自行車里程表電路設計_畢業(yè)論文設計_第3頁
精品】自行車里程表電路設計_畢業(yè)論文設計_第4頁
精品】自行車里程表電路設計_畢業(yè)論文設計_第5頁
已閱讀5頁,還剩14頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、(此文檔為word格式,下載后您可任意編輯修改!)安陽師范學院本科學生畢業(yè)設計報告自行車里程表電路設計作 者陳樂樂系(院)物理與電氣工程學院專 業(yè)一電氣工程及其自動化年級2009 級學號091103057指導老師劉永順日期2013.5.7誠信承諾書鄭重承諾:所呈交的論文是作者個人在導師指導下進行的研究工作及取得的研究成 果。除了文中特別加以標注和致謝的地方外,論文中不包含其他人已經(jīng)發(fā)表或撰寫的研究 成果,也不包含為獲得安陽師范學院或其他教育機構的學位或證書所使用過的材料。與作 者一同工作的同志對本研究所做的任何貢獻均已在論文中作了明確的說明并表示了謝意。作者簽名:日期:導師簽名:日期:院長簽名

2、:日期:論文使用授權說明本人完全了解安陽師范學院有關保留、使用學位論文的規(guī)定,即:學校有權保留送交 論文的復印件,允許論文被查閱和借閱;學??梢怨颊撐牡娜炕虿糠謨热?,可以采用 影印、縮印或其他復制手段保存論文。保密論文在解密后遵守此規(guī)定。作者簽名:導師簽名:日期:2自行車里程表電路設計陳樂樂(安陽師范學院 物理與電氣工程學院 河南 安陽455000 )摘要:介紹了自行車里程表研究的意義,提出了自行車里程表的設計方案,詳細闡述了采 用STC89C52、霍爾傳感器、LED數(shù)碼管等設計制作自行車里程表的過程。關鍵詞:里程表;單片機;霍爾傳感器;LED數(shù)碼管1引言自行車由于本身低碳環(huán)保及方便等優(yōu)點

3、,成為居民喜愛的交通、健身工具。在這個背 景下,自行車里程表作為自行車的一大輔助工具迅速發(fā)展起來??茖W、美觀、合理設計自 行車里程表有一定的實用價值,它能計算出里程數(shù) ,使運動者運動適量,達到健康運動與代 步的最佳效果?,F(xiàn)在汽車上都裝載有里程表,但是由于成本昂貴,不太適合應用在自行車 上。本里程表的設計具有結構簡單,成本低廉,顯示清晰,穩(wěn)定可靠等優(yōu)點,并且可進行 擴充。2設計要求(1)以單片機為控制核心,采用霍爾傳感器檢測自行車輪胎的運轉情況,通過抗干 擾處理和計算后,由數(shù)碼管顯示自行車的里程;(2)總里程 999.9Km(3)可擴展顯示自行車速度。3方案論證3.1方案1(1)利用霍爾傳感器產(chǎn)

4、生里程數(shù)的脈沖信號;(2)利用單片機自帶的計數(shù)器T1對霍爾傳感器脈沖信號進行計數(shù);(3)對數(shù)據(jù)進行處理,用LED顯示里程數(shù)。實現(xiàn):利用軟件編程,對數(shù)據(jù)進行處理得到需要的數(shù)值。最終實現(xiàn)目標:自行車里程顯示功能。整個設計過程包括硬件電路的搭建,軟件的編 程,系統(tǒng)的調試,調試通過后,固化程序,脫離開發(fā)系統(tǒng)運行。3.2方案2總體思路與方案1 一致,依然利用單片機自帶的計數(shù)器對霍爾傳感器產(chǎn)生里程數(shù)的脈 沖信號進行計數(shù),但是數(shù)據(jù)顯示模塊采用 LCD顯示,更能清晰的顯示里程數(shù)。3.3方案比較本設計采用方案1,數(shù)碼管低功耗,容易控制,占用 CPU資源少,價格比較便宜,比 較實用。4硬件設計4.1框圖本系統(tǒng)是由

5、數(shù)據(jù)采集,單片機控制系統(tǒng),數(shù)據(jù)存儲 3部分構成。其中數(shù)據(jù)的采集是由 霍爾傳感器來完成的,它的輸出是矩形脈沖,經(jīng)過RC濾波后就向單片機系統(tǒng)提供轉速信號。其中關鍵的處理由單片機系統(tǒng)來完成,單片機將對INTO腳的接收的信號進行計數(shù),信號由顯示部分送 LED進行顯示,顯示當前的行駛里程情況。在本次行駛過后數(shù)據(jù)存入 EEPRO中,以便下次行駛時在其基礎上繼續(xù)計數(shù)送出顯示總共的里程數(shù),到記憶的目的。 以上所述就是整個系統(tǒng)的總體設計思想。利用霍爾元件對里程進行測量,將霍爾元件安裝在車前叉的一側,在車圈側面貼一個 磁片,當磁片經(jīng)過霍爾兀件時,霍爾兀件輸出端的電壓發(fā)生變化產(chǎn)生脈沖,單片機根據(jù)脈 沖數(shù)來計算里程。

6、該設計能實時地將所測的累計里程數(shù)顯示出來,信號送入單片機前應對 其進行放大整形,然后通過單片機計算出里程,再將所得的數(shù)據(jù)存儲到數(shù)據(jù)存儲器,并由 LED顯示模塊交替顯示所測里程。本設計的里程數(shù)的算法是一種大概的算法(假設在一定 時間內自行車是勻速行進)。原理框圖如圖1所示。4.2電路原理圖和電路原理本設計所用的霍爾傳感器是一塊集成芯片,它結合了采樣和放大功能于一體。首先我 們把磁鋼放在自行車的轉軸上,而霍爾元件就放在與其水平的轉軸上,當我們完成安裝后, 轉動自行車的轉軸,磁鋼也就跟著一起轉動,從而使霍爾傳感器周圍的磁場發(fā)生變化,這 種變化將會導致霍爾電壓變化從而產(chǎn)生一個方波,再通過其內部的整形和

7、放大,產(chǎn)生出一 個適合外部電路的脈沖電壓。假定輪圈的周長為L,在輪圈上安裝1個磁鐵,則測得的里程值最大誤差為L。當輪子每轉一圈,通過開關型霍爾元件傳感器采集到一個脈沖信號, 并從引腳P3.2 口中斷0端輸入,傳感器每獲取一個脈沖信號即對系統(tǒng)提供一次計數(shù)中斷, 每次中斷代表車輪轉動一圈,中斷數(shù) n輪圈的周長L的乘積即為里程值。電路原理如圖 2 所示。888卞ttH: _.r.fzafrEnlssHH| 1 1 1 l lH 1H 1H 1TNIgw門:11111圖2電路原理圖5軟件設計5.1軟件編程實現(xiàn)5.1.1系統(tǒng)軟件框圖本系統(tǒng)軟件采用模塊化設計方法,整個系統(tǒng)由初始化模塊、里程計算模塊、數(shù)據(jù)轉

8、BCD 碼模塊、里程顯示模塊、數(shù)據(jù)存儲、讀取模塊、定時器中斷服務模塊以及其他功能模塊組 成,如圖3所示。5.1.2總體程序設計自行車里程表的軟件設計包括上電初始化程序、中斷子程序、里程調用子程序、LED顯示子程序、延時子程序等部分,下面將分析其主要部分。在主程序模塊中,需要完成對各接口芯片的初始化、自行車里程的初始化、中斷向量 的設計以及開中斷、循環(huán)等待等工作。另外,在主程序模塊中還需要設置啟動清除標志寄 存器、里程寄存器,并對它們進行初始化。然后主程序將根據(jù)各標志寄存器的內容,分別 完成啟動、清除、計程等不同的操作。P1.1 口用于顯示里程狀態(tài),P1.7 口用于設置輪圈的大小,低電平有效。中

9、斷0用于對輪子圈數(shù)的計數(shù)輸入,輪子每轉一圈,霍爾傳感器輸出一個低電平脈沖,將根據(jù)里程寄存 器中的內容計算出行駛里程數(shù)。中斷1用于控制定時器T1的啟停,當輸入為0時關閉定時器。 此控制信號是將輪子圈數(shù)的計數(shù)經(jīng)二分頻后形成,其程序流程如圖4所示。圖4主程序流程圖5.2中斷子程序的設計定時中斷是為滿足定時或計數(shù)的需要而設置的。為此在單片機內部有兩個定時計數(shù) 器,以對其中的計數(shù)結構進行計數(shù)的方法,來實現(xiàn)定時或計數(shù)功能。當結構發(fā)生計數(shù)溢出 時,即表明計數(shù)值已滿,這時就以計數(shù)溢出信號作為中斷請求,去置位一個溢出標志,作 為單片機接受中斷請求的標志。這種中斷請求是在單片機芯片內部發(fā)生的,因此無須在芯 片上設

10、置引入端。定時計數(shù)器控制寄存器TCO是8位寄存器,地址為88H,可以位尋址。其高4位用于定 時計數(shù)器中斷控制,低4位借給外部中斷,用做中斷標志和觸發(fā)方式選擇位。本設計采用 定時中斷,對自行車的里程進行計數(shù)。5.3里程計算子程序的設計外中斷0服務程序用于對單片機P3.2 口輸入的圈脈沖進行計數(shù),為十六進制計數(shù)器。 60H為低位,62H為高位。每次計數(shù)一次后,對里程數(shù)據(jù)進行一次存儲操作。當車輪每轉 一圈,通過霍爾元件將脈沖數(shù)輸入單片機內,通過計數(shù)器計出脈沖數(shù),再用乘法子程序算 出里程數(shù)。5.4顯示子程序的設計本次設計采用動態(tài)掃描顯示接口電路,動態(tài)顯示接口電路是把所有顯示器的8個筆劃段a-Che n

11、 Lele(School of Physics and Electical Engin eeri ng,A nyang Normal Uni versity,A nyan g,He nan455000)Abstract: The significanee of bicycle odometer is introduced, put forward the design of bicycle odometer, detailed elaborated the STC89C52, and product ion process of bicycle odometer.Key words: spee

12、dometer; single chip microcomputer; ;hall sensor; LED digital tube序號名稱型號數(shù)量1單片機STC89C521個2驅動器74LS2441個3D觸發(fā)器74LS741個4排阻1 K-J1個5霍爾元件A44E1個6發(fā)光二極管LED1個7晶振12MHz1個8共陰極四位數(shù)碼管SMA4205641個33PF2個9電容10F1個10K11個10電阻100門1個2 K-11個11微動開關1個12電路板1塊13導線若干附錄2 PCB圖附錄3程序;中斷初始化J J J J J J J J J J JORG0000H;程序執(zhí)行開始地址LJMPSTART

13、;跳至STARTORG0003H;外中斷0中斷程序入口LJMPINTEX0;跳至INTEX0中斷服務程序RETI;中斷返回ORG0013H;外中斷1中斷入口LJMPINTEX1;跳至INTEX1中斷服務程序ORG001BH;定時器T1中斷程序入口LJMPINTT1;跳至INTT1中斷服務程序ORG0023H;串口中斷入口地址RETI;中斷返回KEY:CLEAR2:MOV 21H,#19HSETB TR1;28寸自行車周長值;開定時器T1J J J J J J J J J J J J J J J J J J J J;上電初始化程序CLEARMEN:MOVSETBTMOD,#90HPX0;T1為1

14、6位外部控制定時器;外中斷0優(yōu)先級為1SETBIT0;外中斷0用邊沿觸發(fā)SETBIT1;外中斷1用邊沿觸發(fā)CLRA;清AMOV20H,A;清內存中特定單元MOV6CH,AJMOV6DH,AJMOV70H,AJMOV71H,AJMOV72H,AJMOV73H,AJMOV60H,AJMOV61H,AJMOV62H,AJMOV63H,A;清內存中特定單元DECA;A 為#0FFHMOV68H,A;內存置數(shù)據(jù)#0FFHMOV69H,A;內存置數(shù)據(jù)#0FFHMOV6AH,A;內存置數(shù)據(jù)#0FFHMOV6BH,A;內存置數(shù)據(jù)#0FFHMOVP1, A;P1 口置 1CLEAR1:JBP1.2,KEY1;根

15、據(jù) P1.2,P1.3,P1.6,P1.7設置狀態(tài);在21H地址單元賦自行車周長值SETB SETB SETB SETB LCALL RETEAEXOET1P3.1VIICREAD;開中斷允許;開外中斷0;開定時中斷T1;關報警器;將EEPROM中原里程數(shù)據(jù)調入內存;子程序返回J J J J J J;STARTJ J J J J JSTART:MOVSP,#75H;堆棧在75H開始LCALL CLEARMEN;上電初始化START1:JBP3.0QISPLAYS;P3.0=1,顯示里程LCALLDISPLAYV;顯示速度START2:SJMPSTART1;轉START1循環(huán)J J J J J

16、J J J J J J J J J J J J J J J J J J J J J J1 ;里程計數(shù)程序,1J J J J J J J J J J J J J J J J J 用外中斷0實現(xiàn),計數(shù)用160H-62H內存單元。J J J J J J J J J J J J J J J J J J J J J J J J J J J1INTEXO:1J J J J J J J J J J J J J J J J JPUSHJ J J J J J J JACC;累加器堆棧保護PUSHPSW;狀態(tài)字堆棧保護INC60H;圈加1CLRA;清ACJNEA,60H,INTEX0OUT;計數(shù)沒溢出轉 INTE

17、X0OUTINC61H;溢出進位(61H加1)CJNEA,61H,INTEX0OUT;計數(shù)沒溢出轉 INTEX0OUTINC62H;溢出進位(62H加1)INTEXOOUT:LCALLVIICWRITE;里程數(shù)據(jù)存入EEPROMSETBEX1;開外中斷1POPPSW;狀態(tài)字恢復POPACC;累加器恢復RETI;中斷返回J J J J J J J J J J J J J J J J J J J J J J J;T1計數(shù)器中斷服務程序INTT1:PUSHACC;累加器堆棧保護PUSHPSW;狀態(tài)字堆棧保護INC6CH;6CH計時單元加1MOVA,6CH;移入AJNZINTT11;不等于0轉INTT

18、11INC6DH;進位,6DH單元加1MOVA,6DH;移入AJNZINTT11;不等于0轉INTT11SETB00H;計時器溢出,置溢出標志INTT11:POPPSW;恢復堆棧POPACCJRETI;中斷返回VIICWRITE:ACALLWMOV9MOVSLA,#SLAWMOVNUMBYT,#09HLCALLWRNBYTRETWMOV9:MOV5FH,#50HMOVR0,#MTDMOVR1,#5FHMOVR2,#09HWMOV:MOVA,R1MOVR0,AINCR0INCR1DJNZR2,WMOVRET;里程顯示控制程序DISPLAYS:SETBP1.0CLRP1.1SETBP3.7LCAL

19、LSSSLCALLDISPLAYLJMPSTART1;歸一化EEPROM存入程序(12M時鐘);點亮LED1 (顯示里程狀態(tài));關閉速度指示燈;顯示小數(shù)點(最小顯示為0.1公里);將圈數(shù)轉為公里數(shù);顯示公里數(shù)據(jù);跳回 START1存入數(shù)在50H起單元J J J J J J J J J J J J J J J J J J J J J J J J J J J J J J J J J J J J J J J J J J J J J J J J J J J J J J J J J;歸一化EEPROM讀出程序(12M時鐘),讀出數(shù)放入 60H-67H單元VIICREAD:MOVMTD,#50HMOVSL

20、A,#SLAWMOVNUMBYT,#01HLCALLWRNBYTMOVSLA,#SLARMOVNUMBYT,#08HLCALLRDNBYTACALLRMOV8RETRMOV8:MOVR0,#MRDMOVR1,#60HMOVR2,#08HRMOV:MOVA,R0MOVR1,AINCR0INCR1DJNZR2,RMOVRETSSS:MOVR2,61HMOVR3,60HMOVR6,#00HMOVR7,21HMOVA,R3MOVB,R7MULABXCHA,R7MOVR5,BMOVB,R2MULAB;顯示程序,顯示BCD碼在70H-73H單元內,采用共陰LED數(shù)碼管J J J J J J J J J J

21、 J J J J J J J J J J J J JDISPLAY:J J J J J J J J J J J J J J J J J J J J J JMOVMOVJ J J J J J J J J J J JR1,#70HR2,#0FEH;顯示單元首址;掃描字PLAY:MOVA,R2;掃描字入AMOVP2,A;放到端口MOVA,R1;取顯示數(shù)據(jù)ANLA,#0FH;去掉高四位(為0)MOVDPTR,#TAB;取段碼表首址MOVCA,A+DPTR;查顯示數(shù)據(jù)對應段碼MOVP0,A;段碼輸出LCALLDL1MS;點亮1毫秒INCR1;指向下一顯示數(shù)據(jù)地址MOVA,R2;取掃描字JNBACC.3,

22、ENDOUT;已掃描到第四位,轉ENDOUT退出RLA;循環(huán)左移MOVR2,A;放回R2AJMPPLAY;轉PLAY循環(huán)ENDOUT:SETBP2.0;關掃描SETBP2.1;關掃描SETBP2.2;關掃描SETBP2.3;關掃描RET;掃描結束;共陰段碼表(可顯示0-F)TAB:DB3FH,06H,5BH,4FH,66H,6DH,7DH,07HDB7FH,6FH,77H,7CH,39H,5EH,79H,71HDB00H;里程處理程序,將自行車圈數(shù)據(jù)換算成公里數(shù)ADDA,R5MOVR4,ACLRAADDCA,BMOVR5,AMOVA,R6MOVB,R3MULABADDA,R4XCHA,R6XC

23、HA,BADDCA,R5MOVR5,AMOVFO,CMOVA,R2MULABADDA,R5MOVR5,ACLRAMOVACC.0,CMOVC,F0ADDCA,BMOVR4,AMOV19H,#64H;除數(shù)最高位賦值MOV18H,#00H;除數(shù)賦值MOV17H,#00H;除數(shù)賦值MOV16H,#00H;除數(shù)賦值MOV11H,#00H;被除數(shù)賦值MOV12H,R4;被除數(shù)賦值MOV13H,R5;被除數(shù)賦值MOV14H,R6;被除數(shù)賦值MOV15H,R7;被除數(shù)賦值LCALLDIVST;調除法程序LCALLBCDST;調二進制轉BCD碼程序MOVA,25H;結果處理,將25H數(shù)移入AANLA,#0FH;將高四位置為0MOV70H,A;放入70H單元MOVA,25H;25H數(shù)移入ASWAPA;高低四位交換ANLA,#0FH;將高四位置為0MOV71H,A;放入71H單元MOVA,24H;24H數(shù)移入AANLA,#0FH;將高四位置為0MOV72H,A;放入72H單元MOVA,24H;24H數(shù)移入ASWAPA;高低四位交換ANLA,#0FH;將高四位置為0MOV73H,A;放入73H單元RET;子程

溫馨提示

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

評論

0/150

提交評論