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