多功能發(fā)動(dòng)機轉速模擬器設計
3 系統軟件設計
本系統的軟件流程如圖7所示。它包括頻率/轉速測量、串行A/D轉換值讀取、數值顯示及相關(guān)處理部分。
3.1 頻率/轉速測量軟件設計
當電路一上電,MAX813L產(chǎn)生復位信號,促使單片機復位,程序跳至起始地址0000h,首先對內部寄存器和MAX7219初始化,如TO、T1、TMOD,接著(zhù)對TO、T1、EXl開(kāi)中斷。喂狗語(yǔ)句放在循環(huán)查詢(xún)處,給MAX813L喂狗的時(shí)間間隔應小于1.6 s,否則它將再次產(chǎn)生復位信號,擾亂程序的正常運行。接著(zhù)檢測P1.3腳,若為低電平,則執行串行A/D轉換值的讀取程序;若為高電平,則單片機在信號下降沿被觸發(fā)中斷,開(kāi)通T1定時(shí)、TO計數。當T1定時(shí)1 s到,關(guān)閉TO、T1,讀取TO值后,再對TO、T1開(kāi)中斷,重新計時(shí)計脈沖數。接著(zhù)計算(T0值乘以2)、判斷(當不超過(guò)9999或等于O時(shí),定為合法,并置FLAG標志),然后送MAX7219,經(jīng)其譯碼后在LED上顯示,并有頻率指示燈亮,告知使用者顯示的是頻率值,以便根據所需調整旋扭W1(見(jiàn)圖2),使發(fā)生器發(fā)出想要的頻率值信號,這就是測量信號頻率的原理;若數值不合法,LED將不顯示或顯示O,此時(shí)應調整W1直到合法。外來(lái)信號的頻率測量和顯示程序同前(需將扭轉開(kāi)關(guān)旋到輸入檔)。若P2.7腳為低電平,則測量的是發(fā)動(dòng)機的轉速,需將前面的頻率值代入轉速公式(2):
n=(f?60)/k (2)
式中:n為柴油機轉速(r/min),f為所測到的頻率值(Hz),k為發(fā)動(dòng)機測速齒輪的齒數。
可見(jiàn)單片機需要讀取齒數值,然后計算并判斷(n不大于9999),并送LED顯示。需注意的是:上面所講的是先通過(guò)在1 s時(shí)間內對轉速脈沖信號的個(gè)數進(jìn)行累加計數,再代入公式(2)計算轉速。這種測量方法稱(chēng)為測頻法。當發(fā)動(dòng)機在低速下運轉時(shí),則要使用測周期法:先測出脈沖平均周期,然后使用除法算出頻率值,代入轉速公式計算,顯示后跳至循環(huán)查詢(xún)處,然后使用除法算出頻率值,代入轉速公式計算,顯示后跳至循環(huán)查詢(xún)處,并繼續查詢(xún)定時(shí)中斷。
3.2 串行A/D轉換值的讀取軟件設計
由于MAXl44與單片機的接口十分簡(jiǎn)單,只需3根I/O線(xiàn)即可,故本系統使用單片機的P1.O、P1.1、P1.2。該電路采用內部時(shí)鐘模式,單片機通過(guò)編程產(chǎn)生串行時(shí)鐘,并按時(shí)序讀出數據,其A/D轉換后的數據(16位)可以存于MAXl44內部的存儲單元R2、R3中,通過(guò)標志位CHID可以區分CHO和CHl通道,然后將高4位屏蔽即可得到實(shí)際的A/D轉換數據,利用ANL R3,OFH將高4位屏蔽。該程序結束后,R3內為A/D轉換的12位數據的高4位,R2中為低8位,然后利用單片機內設定的程序轉換(OFFFH對應為2.048V,即20.48 mA;0000H對應為OV,即O mA),即可顯示電流值的大小。
結 語(yǔ)
本多功能發(fā)動(dòng)機轉速模擬器使用器件少,成本低,調節方便,易于實(shí)現。通過(guò)調試發(fā)現,只要阻容元件的溫度系數低,則輸出頻率、電流是相當穩定的,因此性?xún)r(jià)比高。該多功能轉速模擬器的使用情況表明,其可靠性好、輸出穩定、攜帶方便。
評論