本發(fā)明涉及汽車技術(shù)領(lǐng)域,尤其涉及一種汽車變速器檔位檢測方法及裝置。
背景技術(shù):
隨著科技的發(fā)展,人們對整車經(jīng)濟(jì)性和智能性要求越來越高,于是具有啟停功能整車應(yīng)運而生。為了配合整車啟停功能的時間,需要實時對變速器的檔位進(jìn)行檢測與監(jiān)控。目前市場應(yīng)用的檔位傳感器測試主要為獨立的信號測試,主要采用51單片機(jī)(對所有兼容intel8031指令系統(tǒng)的單片機(jī)的統(tǒng)稱)以中斷計數(shù)方式檢測單路脈沖寬度調(diào)制pwm信號。如圖1所示,在信號下降沿觸發(fā)中斷,并觸發(fā)第一計數(shù)器計數(shù),當(dāng)信號變?yōu)楦唠娖綍r,記錄下第一計數(shù)器數(shù)值a,并繼續(xù)計數(shù),當(dāng)信號再處于下降沿時,再記錄第二計數(shù)器數(shù)值b,得到占空比即為a/b×100%,然后將計數(shù)器歸零再進(jìn)入新一輪計算占空比過程。
上述檢測方法的缺陷在于,只可檢測單路占空比信號,不能檢測倒檔開關(guān)量信號,并且使用的單片機(jī)的中斷口和計數(shù)器有限,導(dǎo)致擴(kuò)展性差。
技術(shù)實現(xiàn)要素:
本發(fā)明所要解決的技術(shù)問題在于,提供一種可以有效提高汽車變速器檔位傳感器軟件檢測方法及裝置,避免檢測受計數(shù)器數(shù)量限制。
為了解決上述技術(shù)問題,本發(fā)明提供一種汽車變速器檔位檢測方法,包括:
接收用于檢測檔位的至少兩路脈沖寬度調(diào)制pwm信號和一路開關(guān)量信號;
通過分時復(fù)用第一計數(shù)器和第二計數(shù)器,檢測接收的至少兩路pwm信號,分別獲得各路pwm信號的占空比;
將獲得的各路pwm信號的占空比以及經(jīng)處理后的開關(guān)量信號輸出并顯示。
其中,所述用于檢測檔位的至少兩路脈沖寬度調(diào)制pwm信號為空檔傳感器的兩路pwm信號,一路開關(guān)量信號為倒檔開關(guān)高低電平信號。
其中,所述通過分時復(fù)用第一計數(shù)器和第二計數(shù)器,檢測接收的至少兩路pwm信號,分別獲得各路pwm信號的占空比,具體包括:
消除所述第一路pwm信號高低電平的半波,在所述第一路pwm信號進(jìn)入高電平時,將第一計數(shù)器和第二計數(shù)器清零,并開始計數(shù),當(dāng)所述第一路pwm信號進(jìn)入低電平時,記錄第一計數(shù)器的數(shù)值,當(dāng)所述第一路pwm信號再次進(jìn)入高電平時,記錄第二計數(shù)器數(shù)值,將記錄的第一計數(shù)器數(shù)值與第二計數(shù)器數(shù)值相比,獲得所述第一路pwm信號的占空比;
之后,消除所述第二路pwm信號高低電平的半波,在所述第二路pwm信號進(jìn)入高電平時,第一計數(shù)器和第二計數(shù)器清零,并開始計數(shù),當(dāng)所述第二路pwm信號進(jìn)入低電平時,記錄第一計數(shù)器的數(shù)值,當(dāng)所述第二路pwm信號再次進(jìn)入高電平時,記錄第二計數(shù)器數(shù)值,將記錄的第一計數(shù)器數(shù)值與第二計數(shù)器數(shù)值相比,獲得所述第二路pwm信號的占空比。
其中,所述檢測方法還包括初始化步驟,具體為將第一計數(shù)器和第二計數(shù)器設(shè)置為兩個16位的計數(shù)器。
其中,在檢測某路pwm信號時,當(dāng)?shù)谝挥嫈?shù)器的計數(shù)值超過第一計數(shù)閾值,或者第二計數(shù)器的計數(shù)值超過第二計數(shù)閾值時,跳出該路pwm信號檢測并反饋故障信號,進(jìn)行下一路信號的檢測。
本發(fā)明還提供一種汽車變速器檔位檢測裝置,包括:
接收單元,用于檢測檔位的至少兩路脈沖寬度調(diào)制pwm信號和一路開關(guān)量信號;
檢測單元,用于通過分時復(fù)用第一計數(shù)器和第二計數(shù)器,檢測接收的至少兩路pwm信號,分別獲得各路pwm信號的占空比;
輸出單元,用于將獲得的各路pwm信號的占空比以及經(jīng)處理后的開關(guān)量信號輸出并顯示。
其中,所述用于檢測檔位的至少兩路脈沖寬度調(diào)制pwm信號為空檔傳感器的兩路pwm信號,一路開關(guān)量信號為倒檔開關(guān)高低電平信號。
其中,所述檢測單元具體用于:
消除所述第一路pwm信號高低電平的半波,在所述第一路pwm信號進(jìn)入高電平時,將第一計數(shù)器和第二計數(shù)器清零,并開始計數(shù),當(dāng)所述第一路pwm信號進(jìn)入低電平時,記錄第一計數(shù)器的數(shù)值,當(dāng)所述第一路pwm信號再次進(jìn)入高電平時,記錄第二計數(shù)器數(shù)值,將記錄的第一計數(shù)器數(shù)值與第二計數(shù)器數(shù)值相比,獲得所述第一路pwm信號的占空比;
之后,消除所述第二路pwm信號高低電平的半波,在所述第二路pwm信號進(jìn)入高電平時,第一計數(shù)器和第二計數(shù)器清零,并開始計數(shù),當(dāng)所述第二路pwm信號進(jìn)入低電平時,記錄第一計數(shù)器的數(shù)值,當(dāng)所述第二路pwm信號再次進(jìn)入高電平時,記錄第二計數(shù)器數(shù)值,將記錄的第一計數(shù)器數(shù)值與第二計數(shù)器數(shù)值相比,獲得所述第二路pwm信號的占空比。
其中,本實施例的檢測裝置還包括設(shè)置單元,用于將第一計數(shù)器和第二計數(shù)器設(shè)置為兩個16位的計數(shù)器。
其中,本實施例的檢測裝置還包括故障處理單元,用于檢測某路pwm信號時,當(dāng)?shù)谝挥嫈?shù)器的計數(shù)值超過第一計數(shù)閾值,或者第二計數(shù)器的計數(shù)值超過第二計數(shù)閾值時,跳出該路pwm信號檢測并反饋故障信號,進(jìn)行下一路信號的檢測。
本發(fā)明實施例的有益效果在于:
采用分時復(fù)用計數(shù)器方式檢測多路pwm信號和開關(guān)量信號,以高低電平占空比所對應(yīng)的計時器數(shù)值計算占空比,實現(xiàn)各路信號的近似同時檢測,使得檢測不再受計數(shù)器的中斷i/o口數(shù)量限制,并設(shè)置計數(shù)器計數(shù)閾值,一旦超過計數(shù)閾值則跳出該路pwm檢測并輸出故障信號,檢測下一路信號,避免因為某路信號問題出現(xiàn)流程卡死,無法對其余信號進(jìn)行檢測的問題,提高各路檢測的獨立性,擴(kuò)展設(shè)備的應(yīng)用范圍。
附圖說明
為了更清楚地說明本發(fā)明實施例或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對實施例或現(xiàn)有技術(shù)描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本發(fā)明的一些實施例,對于本領(lǐng)域普通技術(shù)人員來講,在不付出創(chuàng)造性勞動的前提下,還可以根據(jù)這些附圖獲得其他的附圖。
圖1是現(xiàn)有的汽車變速器檔位檢測方法的流程示意圖。
圖2是本發(fā)明實施例一一種汽車變速器檔位檢測方法的流程示意圖。
圖3是本發(fā)明實施例一一種汽車變速器檔位檢測方法的具體流程示意圖。
圖4是本發(fā)明實施例一中檢測pwm信號的具體流程示意圖。
具體實施方式
以下各實施例的說明是參考附圖,用以示例本發(fā)明可以用以實施的特定實施例。
請參照圖2所示,本發(fā)明實施例一提供一種汽車變速器檔位檢測方法,包括:
接收用于檢測檔位的至少兩路脈沖寬度調(diào)制pwm信號和一路開關(guān)量信號;
通過分時復(fù)用第一計數(shù)器和第二計數(shù)器,檢測接收的至少兩路pwm信號,分別獲得各路pwm信號的占空比;
將獲得的各路pwm信號的占空比以及經(jīng)處理后的開關(guān)量信號輸出并顯示。
以下結(jié)合圖3、圖4進(jìn)行詳細(xì)說明。
本實施例以空檔和倒檔的檢測為例,由此,用于檢測檔位的至少兩路脈沖寬度調(diào)制pwm信號為空檔傳感器的兩路pwm信號,一路開關(guān)量信號為倒檔開關(guān)高低電平信號,則通過分時復(fù)用第一計數(shù)器和第二計數(shù)器,檢測接收的至少兩路pwm信號,分別獲得各路pwm信號的占空比的過程,即先通過第一計數(shù)器和第二計數(shù)器對第一路pwm信號進(jìn)行檢測,之后同樣再通過第一計數(shù)器和第二計數(shù)器對第二路pwm信號進(jìn)行檢測,最后對倒檔開關(guān)量信號進(jìn)行檢測。
具體地,首先消除第一路pwm信號高低電平的半波,在第一路pwm進(jìn)入高電平時,第一計數(shù)器和第二計數(shù)器清零,并開始計數(shù)。第一路pwm信號進(jìn)入低電平時,記錄第一計數(shù)器的數(shù)值,第一路pwm信號再次進(jìn)入高電平時,記錄第二計數(shù)器數(shù)值,將記錄的第一計數(shù)器數(shù)值與第二定時器數(shù)值相比,獲得第一路pwm信號的占空比。之后,消除第二路pwm信號高低電平的半波,檢測第二路pwm信號也是同樣方法:在第二路pwm進(jìn)入高電平時,第一計數(shù)器和第二計數(shù)器清零,并開始計數(shù),第二路pwm信號進(jìn)入低電平時,記錄第一計數(shù)器的數(shù)值,第二路pwm信號再次進(jìn)入高電平時,記錄第二計數(shù)器數(shù)值,將記錄的第一計數(shù)器數(shù)值與第二定時器數(shù)值相比,獲得第二路pwm信號的占空比。由于本實施例通過分時復(fù)用第一計數(shù)器和第二計數(shù)器,在利用第一計數(shù)器和第二計數(shù)器檢測完一路pwm信號,之后再利用同樣的第一計數(shù)器和第二計數(shù)器開始檢測另一路pwm信號,這樣,使用兩個計數(shù)器即可完成這兩路pwm信號檢測(根據(jù)需要還可以完成更多路pwm信號的檢測),相對于現(xiàn)有技術(shù)使用兩個計數(shù)器只能完成單路pwm信號,本實施例提高了定時器使用效率,一定程度上克服了計數(shù)器數(shù)量的有限性。
需要說明的是,在檢測pwm信號之前,本實施例還包括初始化步驟,具體為將兩個計數(shù)器設(shè)置為兩個16位的計數(shù)器。當(dāng)然,計數(shù)器的設(shè)置方式與單片機(jī)計數(shù)器類型和具體傳感器pwm頻率有關(guān),因此,也可以因不同的單片機(jī)或pwm頻率而將計數(shù)器設(shè)置成其他類型。本實施例中使用51單片機(jī),因此將第一計數(shù)器和第二計數(shù)器設(shè)置為兩個16位的計數(shù)器。
此外,在檢測pwm信號時消除pwm信號高低電平的半波的原因在于,本實施例沒有使用中斷i/o口,因而不能采用以上升沿或下降沿觸發(fā)方式來啟動計數(shù)器,而是以訪問等待的方式,先消除pwm信號高低電平的半波影響,再開始計數(shù)過程。
如圖4所示,消除第一路pwm信號高低電平的半波后,在第一路pwm信號進(jìn)入高電平時,將第一計數(shù)器t0和第二計數(shù)器t1的計數(shù)清零并開始計數(shù)。當(dāng)?shù)谝宦穚wm信號進(jìn)入低電平時,記錄第一計數(shù)器t0的數(shù)值a;第一路pwm信號再次進(jìn)入高電平時,記錄第二計數(shù)器t1的數(shù)值b,從而獲得第一路pwm信號的占空比為a/b×100%,然后輸出至顯示屏顯示。檢測第二路pwm信號也是類似的流程,消除第二路pwm信號高低電平的半波后,在第二路pwm信號進(jìn)入高電平時,將第一計數(shù)器t0和第二計數(shù)器t1的計數(shù)清零并開始計數(shù)。當(dāng)?shù)诙穚wm信號進(jìn)入低電平時,記錄第一計數(shù)器t0的數(shù)值a;第二路pwm信號再次進(jìn)入高電平時,記錄第二計數(shù)器t1的數(shù)值b,從而獲得第二路pwm信號的占空比為a/b×100%,然后輸出至顯示屏顯示。在此過程中,需考慮故障情況,為第一計數(shù)器設(shè)置第一計數(shù)閾值,為第二計數(shù)器設(shè)置第二計數(shù)閾值,如果第一計數(shù)器的計數(shù)值超過第一計數(shù)閾值,或者第二計數(shù)器的計數(shù)值超過第二計數(shù)閾值,則跳出該路pwm信號并輸出故障信號,進(jìn)行下一路信號的檢測,避免因為某路信號問題出現(xiàn)流程卡死,無法對其余信號進(jìn)行檢測的問題,從而實現(xiàn)檢測各路信號的相對獨立。
順序完成兩路pwm信號的檢測之后即進(jìn)行倒檔開關(guān)量信號檢測,倒檔開關(guān)量信號檢測則相對簡單,將其轉(zhuǎn)換為高低電平信號,傳入單片機(jī)后給顯示屏輸出相應(yīng)的信息即可。
通過上述說明可知,本發(fā)明實施例的有益效果在于:
采用分時復(fù)用計數(shù)器方式檢測多路pwm信號和開關(guān)量信號,以高低電平占空比所對應(yīng)的計時器數(shù)值計算占空比,實現(xiàn)各路信號的近似同時檢測,使得檢測不再受限計數(shù)器的中斷i/o口數(shù)量限制,并設(shè)置計數(shù)器計數(shù)閾值,一旦超過計數(shù)閾值則跳出該路pwm檢測并輸出故障信號,避免因為某路信號問題出現(xiàn)流程卡死,無法對其余信號進(jìn)行檢測的問題,提高各路檢測的獨立性,擴(kuò)展設(shè)備的應(yīng)用范圍。
相應(yīng)于本發(fā)明實施例一,本發(fā)明實施例二提供一種汽車變速器檔位檢測裝置,包括:
接收單元,用于檢測檔位的至少兩路脈沖寬度調(diào)制pwm信號和一路開關(guān)量信號;
檢測單元,用于通過分時復(fù)用第一計數(shù)器和第二計數(shù)器,檢測接收的至少兩路pwm信號,分別獲得各路pwm信號的占空比;
輸出單元,用于將獲得的各路pwm信號的占空比以及經(jīng)處理后的開關(guān)量信號輸出并顯示。
其中,所述用于檢測檔位的至少兩路脈沖寬度調(diào)制pwm信號為空檔傳感器的兩路pwm信號,一路開關(guān)量信號為倒檔開關(guān)高低電平信號。
其中,所述檢測單元具體用于:
在所述第一路pwm信號進(jìn)入高電平時,將第一計數(shù)器和第二計數(shù)器清零,并開始計數(shù),當(dāng)所述第一路pwm信號進(jìn)入低電平時,記錄第一計數(shù)器的數(shù)值,當(dāng)所述第一路pwm信號再次進(jìn)入高電平時,記錄第二計數(shù)器數(shù)值,將記錄的第一計數(shù)器數(shù)值與第二計數(shù)器數(shù)值相比,獲得所述第一路pwm信號的占空比;
之后,在所述第二路pwm信號進(jìn)入高電平時,第一計數(shù)器和第二計數(shù)器清零,并開始計數(shù),當(dāng)所述第二路pwm信號進(jìn)入低電平時,記錄第一計數(shù)器的數(shù)值,當(dāng)所述第二路pwm信號再次進(jìn)入高電平時,記錄第二計數(shù)器數(shù)值,將記錄的第一計數(shù)器數(shù)值與第二計數(shù)器數(shù)值相比,獲得所述第二路pwm信號的占空比。
其中,本實施例的檢測裝置還包括設(shè)置單元,用于將第一計數(shù)器和第二計數(shù)器設(shè)置為兩個16位的計數(shù)器。
其中,本實施例的檢測裝置還包括預(yù)處理單元,用于在所述檢測單元檢測pwm信號時,先消除pwm信號高低電平的半波。
其中,本實施例的檢測裝置還包括故障處理單元,用于檢測某路pwm信號時,當(dāng)?shù)谝挥嫈?shù)器的計數(shù)值超過第一計數(shù)閾值,或者第二計數(shù)器的計數(shù)值超過第二計數(shù)閾值時,跳出該路pwm信號檢測并反饋故障信號,進(jìn)行下一路信號的檢測。
有關(guān)本實施例的工作原理及效果,參見本發(fā)明實施例一的描述,此處不再贅述。
以上所揭露的僅為本發(fā)明較佳實施例而已,當(dāng)然不能以此來限定本發(fā)明之權(quán)利范圍,因此依本發(fā)明權(quán)利要求所作的等同變化,仍屬本發(fā)明所涵蓋的范圍。