汽車發動機點火性能測試儀設計

電路中設計了鍵盤輸入人機接口S1和S2。S1為輸入功能鍵,S2為系統啟動鍵。S1有兩個功能:汽車汽缸數選擇功能和汽缸數復位功能。按鍵S1與 89C52的P1.2相連,每按一次,缸數加1。選定缸數后,按下與P1.3相連的測試按鍵S2即開始測試,為減少按鍵設計,任何狀態下,只要長按S1鍵就可立刻回到初始狀態,缸數選擇步驟重新選擇缸數。
顯示模塊設計
在實際測量中,由于角度值以度為單位,不會超過百位,且精確到十分位,因此用4個數碼管LED即可顯示一路汽缸的點火閉合角,級聯后可顯示多路多缸的點火閉合角。本系統采用串行工作方式,使用4路LED數碼管進行顯示。
89C52 的數據串行輸入到顯示模塊。移位時鐘脈沖CLOCK和清零信號CLEAR均由軟件控制。顯示模塊中采用了TTL單向8位移位寄存器,可實現串行輸入并行輸出,直接驅動共陰極八段LED數碼管。此外,使用89C52的3個I/O引腳連接發光二極管L4~L6進行工作時的狀態顯示。當L4點亮時,表示當前正在顯示的是閉合角角度,當L5點亮時,表示當前正在顯示的是分火角角度。當測試的汽缸數大于4缸時,L6將點亮作為提示,如圖4所示。
初始化時,按S1、LED數碼管顯示需要測試的氣缸數。按S2后進入工作狀態,以4缸發動機為例,在每一輪的顯示中,4路LED顯示模塊先同時顯示4缸閉合角的角度,同時L4點亮,持續3秒鐘后換成L5點亮,LED板顯示分火角的角度。為提高七段數碼管的利用率,本設計針對缸數較多的發動機,采用了角度值翻頁顯示的方法。例如8缸發動機仍可以只采用4路LED顯示模塊,第一輪顯示的只是前4缸的角度值,第二輪才顯示后4缸的角度值,當顯示的是后4缸角度時,L6會點亮作為提示。
軟件設計
點火信號經過一定的預處理后傳送給89C52單片機,完成測量、計算和相應顯示。主程序的軟件流程圖如圖5所示。軟件設計主要包括缸數選擇、計數器計數測量、中斷服務、角度計算和顯示等模塊。
缸數選擇模塊程序設計
測試儀的面板上設有缸數選擇按鍵S1,每按一次,缸數加1。選定缸數后,按下按鍵S2即開始測試。此外,程序中設有多處對按鍵S2的查詢,如果在測試儀工作過程中要重新選擇缸數,可以隨時按下S2不松開,時間稍長就一定會被查詢到,程序會重新進入缸數選擇階段。
計數器計數與中斷服務程序設計
當轉速超出測試儀標定的范圍時,將產生計數器0或1溢出中斷,此時LED顯示E,意為ERROR,只需實時調整轉速就可以重新進入計數程序,開始測量。
角度顯示程序設計
在計算出閉合角或分火角的角度值后,通過譯碼程序將二進制形式的角度值轉換成BCD碼暫存在累加器中,累加器將角度數據串行傳輸至74LS164,然后送到八段數碼管以顯示當前BCD編碼的十進制角度值。
結語
本文在SUPERIMAGE-3000開發環境下完成基于89C52的汽車點火性能測試儀的硬件和軟件開發,實驗數據和裝車測試結果均穩定可靠、精度達標,可有效地作為分析發動機分電器和點火器質量的指標,對于調整高效的點火正時和點火提前角具有重要意義。
評論