基于單片機電子式里程表設計論文_第1頁
基于單片機電子式里程表設計論文_第2頁
基于單片機電子式里程表設計論文_第3頁
基于單片機電子式里程表設計論文_第4頁
基于單片機電子式里程表設計論文_第5頁
已閱讀5頁,還剩43頁未讀 繼續免費閱讀

下載本文檔

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

文檔簡介

速里程表已廣泛采用電子式機芯結構,而國內汽車儀表一直是機械式車速里程表的天車成本的30%,然而我國汽車行業起步較晚,技術十分落后,電子產品僅占整車成本的過變速器上的速度傳感器獲取信號,通過脈沖頻率的變化使指針偏轉或者顯示數字。示值誤差小于1%,報警值非常準確。由于采用的芯片都是廣泛使用的通用芯片,成本光電傳感器單單片機顯示存儲器(3)顯示車速,用4位LED顯示;(1)光電傳感器的脈沖信號檢測與轉換;(2)超速報警功能;(3)里程信息存儲功能;片機PO口和P2口,編程恰當地選擇各個7段LED顯示器的點亮時間和間隔時間,實現使三極管飽和導通,故用于脈沖整形的施密特觸發器CD4093輸出高電平,當圓盤轉至機AT89S51是由ATMEL公司生產的51單片機。簡單介紹如下:內含有4kbytes的可反復擦寫的只讀程序存儲器(PEROM)和128bytes的隨機存取數本系統的鍵盤輸入部分,采用了2個功能鍵,用這2個鍵既可以選擇6位LED顯應速度較低(在10~200ms范圍),這就限制了它在快速系統中的應用。LED數碼管是目前最常用的數字顯示器,一個LED數碼管可用來顯示一位EEPROM是電可擦除可編程只讀存儲器。在平常情況下速度極快!通常EEPROM芯片又分為串行EEPROM和并行EEPROM兩種,串行EEPROM在讀寫時數據的輸入/輸出是通過2線、3線、4線或SPI總線等接口方式進行的,而并行EEPROM的數據輸入/輸出則是通過并行總線進行的。在汽車上串行EEPROM用得最存儲空間,具有工作電壓寬(2.5~5.5V)、擦寫次數多(大于10000次)、寫入速度快(小板上它們都接地,第8腳和第4腳分別為正、負電源。第5腳SDA為串行數據輸入/輸出,24C02中帶有片內地址寄存器。每寫入或讀出一個數據字節后,該地址寄存器自動加1,以實現對下一個存儲單元的讀寫。所有字節均以單一操作方式讀取。為降低總的2.3軟件模塊通過上面分析,設計中決定選用S51系列單片機作為控制器,那么它的軟件編寫就由于脈沖測量過程中,開始檢測時脈沖寬度已小于機器周期T,因而會導致脈沖的在控制時,首先由P1.6發一個清0負脈沖,其輸出封鎖與門G1和G2。接著由P1.5發一個啟動正脈沖,從而將門G2打開。之后,被測脈沖上升沿通過G2送T1計數;同時Q2輸出從P1.6發出一個負脈沖,將U2清零,從而封鎖G2,使T/C1停止計數,至此一次頻率采樣過程結束。計數器1采用計數值滿后自然清零再計數的方法。將T/C0設為高優先級,本單元采用了單片機的P1.1和P1.2口,通過外接兩個按鍵開關,從而控制一個6位A2(用于與系統中的同類器件編碼),4腳為電源地,5腳為I2C總線的數據線SDA,6腳為I2C總線的時鐘SCL,7腳為測試輸入端,在系統中接地,8腳為電源。當時鐘線SCL程序中多處調用了DELAY子程序(僅兩條NOP指令),這是為了滿足I2C總線上數據本單元采用一個蜂鳴器和一個紅色發光二極管與單片機的P1.0口相接的報警實現斷請求,以1秒鐘為周期,實現蜂鳴器的嘀嘀聲及發光二極管的閃爍顯示。當車速值回制,譯碼器74LS139對單片機的P2.6和P2.7口分時選通,這樣任何一個時刻,都只有一3硬件單元電路設計機管腳,單片機的定時計數器T1工作于計數器方式,累計脈沖個數,根據一段時間內3.1.1傳感器的選擇(1)傳感器采用無接觸測量,不增加被測物旋轉力矩,測量小里矩的旋轉物能獲得很(2)光電傳感器是利用光波作為媒介來實現轉速測量的,抗電磁干擾能力強,如果采(3)傳感器利用光電效應方便地將轉速換成電量信號。故此類傳感器測量范圍寬、非(4)光電傳感器易受環境霧塵,粉塵、油塵、水霧及雜光的影響。3.1.2光電傳感器的選擇光電傳感器的類型按照光電傳感器中光電元件輸出電信號的形式可以將光電傳感(1)透射式光電傳感器若在調制盤上開60個小孔,則可在1秒的記數值上直接讀出轉速大小。它可以測量1r/min的車速。如果開600個孔,則它的測量精度為0.1r/min。(2)反射式光電傳感器接觸地測量其轉速,但要求轉軸不能太細,便于貼反射鏡,它適于測量的轉速范圍為中我采用了透射式光電傳感器,并且采用了60條縫隙的測量盤。如圖3.1所示,為透縫隙h轉速3.1.3光電傳感器的脈沖整形電路抗干擾能力也很強。它可用于波形變換、脈沖整形以及脈沖幅度鑒別。下圖3.2為其應形元件。圖3.3是本系統所采用的透射式光電測速脈沖整形電路圖。每當旋轉圓盤上的的孔數,使可算出旋轉的轉速及轉角。圖中的CD4093用于脈沖整形。3.2單片機與光電傳感器的接口設計測量頻率最簡單的方法是將被測信號整形為脈沖,然后連接到單片機的定時器/記數器(T/C)的外部脈沖輸入端,本系統中將被測信號脈沖AT89S51的T1端。可將AT89S51的一個T/C0用作定時器,另一個T/C1用作計數器。在T/C0定時時間里,由T/C1對頻率脈沖進行計數。T/C1的計數值是單位定時時間里的(1)由于AT895S51對輸入T/C的外部脈沖計數,是通過在每個機器周期的第10個時鐘周期對輸入端T1采樣,故需要兩個機器周期(等于24個時鐘周期)識別一個脈沖的負跳變,每識別到一個脈沖的負跳變將計數器加1。因此被測脈沖的最高頻率必須小于Fnx=f.24。此外,還要求被測頻率脈沖的寬度應大于一個機器周期T。本系統所采用的時鐘頻率fosc為12MHz,則被測脈沖的最高頻率不應超過Fmax=12MHz/24=500kHz;其寬度必須大于T=12/fsc=1μs。(2)在定時記數時會出現如圖3.4所示的丟失脈沖的情況。第一個脈沖的丟失,是由于開始檢測時脈沖寬度已小于機器周期T;第二個脈沖丟失是由于脈沖的負跳變在定定時定時輸入脈沖丟失丟失為解決圖3.4中第一個脈沖的丟失,可用門電路實現記數開始與脈沖上升沿的同步控制。圖3.5是用AT80S51的T/CO作定時器,T/C1作計數器,對頻率測量的接口電控制時,首先由P1.6發一個清0負脈沖,使U1、U2兩個D觸發器復位,其輸出封鎖與門G1和G2。接著由P1.5發一個啟動正脈沖,其放,使被測脈沖得以通過門G1,使Q2置為1,從而將門G2打開。之后,被測脈沖上升沿通過G2送T1計數;同時Q2輸出的高電平使INTO=1,定時器0的門控GATE有效,啟動T/C0開始定時。直到定時結束時,從P1.6發出一個負脈沖,將U2清零,從而封鎖G2,使T/C1停止計數,至此一次頻率采樣過程結束。在本系統中f,為汽車轉軸上安裝的測量盤縫隙對應的頻率,測量T/C定時時間為1S,這樣長時間的定時,先由T/C0定時100ms,之后軟件循環10次來完成(10×100ms=1s)。T/C作頻率脈沖的計數器,若單片機工作在計數方式1,最大計數值為65536。若100ms計數65536次,則脈沖的頻率為655.36kHz,這已經超過了AT89S51的計數器的最高頻率500kHz,能夠發揮出T/C的最大計數能力。T/C0定時100ms的計數初值設為3CBOH,并設定時器/計數器方式字TMOD=59h。計數器1采用計數值滿后自然清零再計數的方法。將T/C03.3單片機與外部存儲器的接口設計A2(用于與系統中的同類器件編碼),4腳為電源地,5腳為I2C總線的數據線SDA,在系統中與單片機的P1.3口相接,6腳為I2C總線的時鐘SCL,在系統中與單片機的P1.4口相接,7腳為測試輸入端,在系統中接地,8腳為電源。當時在5腳SDA,6腳SCL上分別接兩個10K的上拉電阻,并外接了一個瓷介電容,當電源正常供電時給電容器充電,電源掉電時,利用電容器電流將單片機中的數據寫入3.4單片機與超速報警電路的接口設計本部分采用一個蜂鳴器和一個紅色發光二極管與單片機的P1.0口相接的報警實現不能使紅色發光二極管和NPN三極管導通,因而不能工作。正因為P1.0口高低電平的通圖3.6超速報警電路圖3.5單片機與鍵盤和7段顯示器的接口設計本系統的鍵盤輸入部分,采用2個功能鍵,用這2個鍵,既可以選擇顯示是單班里態轉變為邏輯電平,然后可直接接到單片機的位都用各自的8位輸出口控制,在顯示某一字符時,相應的段恒定發光或不發光,這種選端復接在一起,只用一個8位輸出控制段選,段選同時加到各個7段LED顯示器上,通顯示器的位選碼,則由單片機的P2.0至P2.5口控制。再通過軟件編程,從而控制各自的整電路原理圖)。NYNY圖4.1系統主程序流程圖AT89S51單片機硬件中斷人口地址為0013H,并且在這里按鍵輸入、顯示子程序和脈沖計數均用到了T/C(計時/計數器)中斷功能。系統的初始化,除了分配一些功能寄存器、定義一些常量、設置AT89S51單片機的輸人輸出口的工作模式外,還要將24C16設置為串行傳輸模式,清除PO、P2、P13個口的寄存器以及接收號碼計數器等一些功能寄存器及開中斷等。下面,就各單元功能模塊分別進行說明。4.1脈沖測量部分由于脈沖測量過程中,開始檢測時脈沖寬度已小于機器周期T,因而會導致脈沖的丟失。為了避免脈沖的丟失,可用門電路實現記數開始與脈沖上升沿的同步控制。所以在控制時,首先由P1.6發一個清0負脈沖,其輸出封鎖與門G1和G2。接著由P1.5發一個啟動正脈沖,從而將門G2打開。之后,被測脈沖上升沿通過G2送T1計數;同時Q2輸出的高電平使INT0=1,定時器0的門控GATE有效,啟動T/C0開始定時。直到定時結束時,從P1.6發出一個負脈沖,將U2清零,從而封鎖G2,使T/C1停止計數,至此一次頻率采樣過程結束。計數器1采用計數值滿后自然清零再計數的方法。將T/C0設為高優先級,允許計數過程中定時中斷。電路圖在圖3.5。4.2鍵盤輸入部分這個部分是比較簡單的一個部分,在硬件設計部分本人對簡易鍵盤做了比較詳細的介紹,這里就不再重復。鍵盤輸入部分采用2個功能鍵,用這2個鍵既可以選擇顯示是單班里程還是總里程。由于機械開關在狀態轉換時有信號的抖動,故在接入開關的同時,必須考慮防抖動的問題。防抖動的方法之一是軟件延時去抖動。既在開關狀態改變時,執行一個延時程序,待電平穩定后再讀入開關狀態信息。鍵的去抖動方法由軟件延時來解決。鍵盤分析程序應包括:是否有鍵按下以及識別哪個鍵按下。一旦找到某鍵,是否按下此鍵,即可將程序轉到該鍵的功能程序段。4.3數據處理部分平均轉速測量中,最普通的方法是當旋轉體每轉一圈,由脈沖轉換器發生60或600個脈沖,并將它在一秒鐘之內通過門,用計數器計數,從而用r/min直流值表示的方法。若設計數器的計數值為C,脈沖轉換器每轉的檢測脈沖數為P,計數時間為t秒,轉速為N(r/min),則有如下關系式成立:本系統中采用t=1S,P=60,則C=N;取P為60時,則在1S內可測量1r/min單位而要從轉速算出車速值和里程值,就要知道輪胎的規格,得出輪胎外直徑,從而獲得輪胎的周長。其含義為:A:斷面寬。B:高寬比(斷面高除以斷面寬乘以100%)。C:輪胎結構代號。示例:195/60R14=(195X0.6X2)+因而輪胎外直徑為145/70R12=(1假設系統的脈沖計數值設為K,車速為N,周長為C,則車速計算公式為:以下為雙字節二進制無符號數乘法程序MULD以及無符號除法程序D457,本程序可套用4.4存儲器部分結束信號都是單片機產生。在開始信號以后,總個字節必須為8位,而且每個傳送的字節后面必須跟一個認可位(第9位),也叫應答位 放SCL線返回高電平,準備接收下一個數據字節,單片機可繼續傳送。當單片機發送完一個字節的數據后,接著發出對應于SCL線上的一個時鐘(ACK)認可;寫串行E2PROM子程序EEPW;R3=10100000(命令1010+器件3位地址+讀/寫。器件地址一個芯片,是000);(R1)=欲寫數據存放地址指針;(R7)=連續寫字節數n脈沖)。另外,在讀最后一個數據字節時,置應答信號為“1”,表示讀操作即將完成。為0或由0寫為1的次數。而實際上寫入EEPROM的數據,對于某一位來說,寫入的數據并寫一次,只能寫150天左右,顯然,這是不能滿足要求的。為此,可采用一種利用存儲個固定的基地址加上EEPROM內的一個單元的內容(即偏移地址)作為真正的地址;若發現存儲單元已壞(寫入和讀出的內容不同),則偏移地址加一,重新寫入。如果采用1004.5超速報警部分器以1s周期發出嘀嘀聲,由P1.0輸出信號4.6顯示部分(1)建立顯示數據緩沖區——存放待顯示數字,字符在字型編碼表中的序號;(2)軟件譯碼——利用查表方法獲得字型編碼(段選碼);(4)延時子程序——控制點亮時間和時間間隔。以下圖4.2為顯示子程序的流程框圖:√業業在整個的軟件設計過程中,最麻煩的是R寄存器的選取,由于只有7個R寄存器能使用,而本系統完成的功能比較強大,簡單一個延時程序都會用到兩個或兩個以上的R寄存器,這使在很多調用的時候出現R寄存器不夠用的情況,特別是在中斷的時候,有些寄存器在用后的值會發生改變,可能會使得系統出現混亂情況。解決的辦法也就只好在不夠用的時候把寄存器先存起來,用完后再存回去。到此軟件程序設計完畢。(1)微機一臺;(2)示波器;(3)萬用表;(4)直流穩壓電源;(5)單片機開發系統一套。按照電路圖的要求以及元器件的選取,接好了電路圖,并接好+5V直流電源后,通過示波器的觀測,發現隨著電機轉速的變化,示波器里的脈沖試,這直接關系到此部分的成敗。1、判斷基極和管子類型(PNP或NPN):由于基極與發歐姆檔(R×100或R×1K)測量時,先將任一支表筆接到某一個認定的管腳上,另一表筆先后接到其余兩個管腳上。如果測量得到的阻值都很大(或都很小),然后對換表筆,重復上述測量時,阻值恰好與上述相反。都很小(或都很大)。則可斷定所認定的管腳觀察表針偏轉情況。然后將黑表筆所接管腳與已斷定的基極用手捏住(注意不能使其相碰),這時人體電阻相當于電阻Rb,比較測量出的阻值變化。然后更換黑、紅表筆,再定引腳是a,b,c等,位選也是拿萬用表的黑表筆去探試的。如程混亂了。而4位的LED顯示器的第一位總是顯示8,把驅動的三級管拆下來檢查發現并不是三極管的問題,這花了比較長的時間,經過仔細間,就能聽見硬件系統中的蜂鳴器傳來的報警聲,并且紅色發光二極管也So

溫馨提示

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

評論

0/150

提交評論