一種鍵盤輸入的方法及裝置制造方法
【專利摘要】本發(fā)明公開了一種鍵盤輸入的方法及裝置,所述方法包括以下步驟:步驟S1:當(dāng)鍵盤陣列中不同的按鍵被按下,通過單一復(fù)用的I/O總線產(chǎn)生與所述按鍵對應(yīng)的模擬電流;步驟S2:對所述模擬電流按一定的采樣間隔進(jìn)行采樣并量化;步驟S3:處理器對所述量化結(jié)果進(jìn)行消除抖動處理,消除抖動處理后的量化樣本均值存儲于處理器的內(nèi)存中;步驟S4:所述處理器通過判斷所述量化樣本均值落入的量化區(qū)間,從而識別被按下的按鍵。本發(fā)明一種鍵盤輸入的方法及裝置需要復(fù)用一根I/O口實(shí)現(xiàn)鍵盤控制,設(shè)計簡潔、算法簡單且成本較低。
【專利說明】—種鍵盤輸入的方法及裝置
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及電子設(shè)備【技術(shù)領(lǐng)域】,尤其是涉及一種鍵盤輸入的方法及裝置。
【背景技術(shù)】
[0002]現(xiàn)有的鍵盤控制裝置大都沿用比較傳統(tǒng)的方法:
[0003]I)基于電平檢測的方法,為每個按鍵分配一個I/O 口,實(shí)時檢測每個I/O電平狀態(tài)是否發(fā)生跳變,識別哪個鍵被按下;為一組按鍵分配一組1/0,使用I/O 口的行列交錯掃描方式,通過行掃描和列掃描來識別鍵盤控制。
[0004]該方法雖然通過行列掃描實(shí)現(xiàn)鍵控,但也要浪費(fèi)處理器不少的I/O資源,如16個鍵盤要耗費(fèi)8個I/O 口,無法解決處理器I/O 口使用緊張的現(xiàn)狀。
[0005]2)基于脈沖長度的方法,只要復(fù)用一根I/O 口實(shí)現(xiàn)鍵盤控制。
[0006]該方法雖然無論多少個按鍵,只使用處理器的一個I/O 口,但為每個按鍵分配一個脈沖長度,需要精準(zhǔn)的外部定時器,或者通過外部MCU的處理,這樣加大了應(yīng)用成本,設(shè)計也變得更加復(fù)雜。
[0007]3)基于觸摸屏輸入的方法,實(shí)現(xiàn)人機(jī)互動。
[0008]該方法對鍵盤控制提出了更高的要求,不但觸摸感要符合人性化,而且要配備可觸摸液晶屏,造價昂貴,只能適用于高端的嵌入式產(chǎn)品,無法滿足大量消費(fèi)性電子產(chǎn)品的應(yīng)用需求。
【發(fā)明內(nèi)容】
[0009]本發(fā)明所要解決的技術(shù)問題是:處理器I/O 口使用緊張且成本較高。
[0010]為解決上述技術(shù)問題,本發(fā)明采用如下技術(shù)方案:
[0011]一種鍵盤輸入的方法,所述方法包括以下步驟:
[0012]步驟S1:當(dāng)鍵盤陣列中不同的按鍵被按下,通過單一復(fù)用的I/O總線產(chǎn)生與所述按鍵對應(yīng)的模擬電流;
[0013]步驟S2:對所述模擬電流按一定的采樣間隔進(jìn)行采樣并量化;
[0014]步驟S3:處理器對所述量化結(jié)果進(jìn)行消除抖動處理,消除抖動處理后的量化樣本均值存儲于處理器的內(nèi)存中;
[0015]步驟S4:所述處理器通過判斷所述量化樣本均值落入的量化區(qū)間,從而識別被按下的按鍵。
[0016]進(jìn)一步,在上述鍵盤輸入的方法中,所述步驟SI中的鍵盤陣列中不同的按鍵連接有對應(yīng)的電阻。
[0017]進(jìn)一步,在上述鍵盤輸入的方法中,所述步驟S2具體包括:所述模擬電流通過外置的A/D轉(zhuǎn)換器轉(zhuǎn)換成相應(yīng)的數(shù)字信號,或所述模擬電流通過內(nèi)置于處理器的A/D模塊處理轉(zhuǎn)換成相應(yīng)的數(shù)字信號。
[0018]進(jìn)一步,在上述鍵盤輸入的方法中,所述步驟S3具體包括:對所述量化結(jié)果去除偏離方差較大的不平穩(wěn)的數(shù)據(jù)即消除抖動,由消除抖動處理后的量化樣本得到量化樣本均值并將其存儲于處理器的內(nèi)存中。
[0019]進(jìn)一步,在上述鍵盤輸入的方法中,所述步驟S4具體包括:
[0020]S401:所述處理器中預(yù)設(shè)有多個量化區(qū)間,所述多個量化區(qū)間對應(yīng)于不同的按鍵;
[0021]S402:所述處理器通過判斷所述量化樣本均值落入的量化區(qū)間,從而識別被按下的按鍵。
[0022]本發(fā)明還提供一種鍵盤輸入的裝置,包括工作電源、鍵盤及設(shè)于所述鍵盤上的多個按鍵,所述鍵盤輸入的裝置還包括與鍵盤上的多個按鍵通過單一復(fù)用的I/O總線相連的處理器,當(dāng)所述鍵盤中不同的按鍵被按下,通過單一復(fù)用的I/o總線產(chǎn)生與所述按鍵對應(yīng)的模擬電流,所述模擬電流通過采樣量化并由所述處理器進(jìn)行消除抖動處理,得到量化樣本均值并存儲于處理器的內(nèi)存中;所述處理器通過判斷所述消除抖動后的量化樣本均值落A的量化區(qū)間,從而識別被按下的按鍵。
[0023]進(jìn)一步,在上述鍵盤輸入的裝置中,所述鍵盤中不同的按鍵連接有對應(yīng)的電阻,當(dāng)所述鍵盤中不同的按鍵被按下,使得所述不同的按鍵對應(yīng)的電阻連通工作電源,以產(chǎn)生與所述按鍵對應(yīng)的模擬電流。
[0024]進(jìn)一步,在上述鍵盤輸入的裝置中,所述鍵盤輸入的裝置還包括一連接于處理器與鍵盤之間的外置A/D轉(zhuǎn)換器,用于將所述模擬電流通過模數(shù)轉(zhuǎn)換成相應(yīng)的數(shù)字信號。
[0025]進(jìn)一步,在上述鍵盤輸入的裝置中,所述處理器內(nèi)置有A/D轉(zhuǎn)換模塊,所述多個按鍵通過單一復(fù)用的I/O總線連接處理器的A/D轉(zhuǎn)換模塊,用于將所述模擬電流通過模數(shù)轉(zhuǎn)換成相應(yīng)的數(shù)字信號。
[0026]進(jìn)一步,在上述鍵盤輸入的裝置中,所述處理器還包括:數(shù)字信號處理模塊及按鍵判斷識別模塊,所述數(shù)字信號處理模塊用于對所述摸擬電流進(jìn)行采樣量化,再對所述量化結(jié)果進(jìn)行消除抖動處理,由消除抖動處理后的量化樣本得到量化樣本均值;所述按鍵判斷識別模塊用于判斷所述消除抖動后的量化樣本均值落入的量化區(qū)間,從而識別被按下的按鍵。
[0027]本發(fā)明一種鍵盤輸入方法及裝置需要復(fù)用一根I/O 口實(shí)現(xiàn)鍵盤控制,設(shè)計簡潔、算法簡單且成本較低。
【專利附圖】
【附圖說明】
[0028]圖1為本發(fā)明鍵盤輸入的方法一實(shí)施例的流程示意圖;
[0029]圖2為圖1中步驟S4的流程示意圖;
[0030]圖3為圖1中采樣量化的示意圖;
[0031]圖4為本發(fā)明鍵盤輸入的裝置一實(shí)施例的結(jié)構(gòu)示意圖;
[0032]圖5為本發(fā)明鍵盤輸入的裝置另一實(shí)施例的結(jié)構(gòu)示意圖。
【具體實(shí)施方式】
[0033]下面結(jié)合附圖詳細(xì)說明本發(fā)明一種鍵盤輸入的方法及裝置的優(yōu)選實(shí)施例。
[0034]請參閱圖1,圖1為本發(fā)明鍵盤輸入的方法實(shí)施例的流程示意圖。本發(fā)明鍵盤輸入方法包括以下步驟:
[0035]步驟S1:當(dāng)鍵盤陣列中不同的按鍵被按下,通過單一復(fù)用的I/O總線產(chǎn)生與所述按鍵對應(yīng)的模擬電流;
[0036]步驟S2:對所述模擬電流按一定的采樣間隔進(jìn)行采樣并量化;
[0037]步驟S3:處理器對所述量化結(jié)果進(jìn)行消除抖動處理,消除抖動處理后的量化樣本均值存儲于處理器的內(nèi)存中;
[0038]步驟S4:處理器通過判斷所述量化樣本均值落入的量化區(qū)間,從而識別被按下的按鍵。
[0039]其中,所述步驟SI中,所述鍵盤陣列中不同的按鍵連接有對應(yīng)的電阻,當(dāng)鍵盤陣列中不同的按鍵被按下,使得所述不同的按鍵對應(yīng)的電阻連通工作電源,以產(chǎn)生與所述按鍵對應(yīng)的模擬電流。
[0040]請參閱圖4及圖5,所述步驟S2具體包括:
[0041]I)所述模擬電流通過外置的A/D轉(zhuǎn)換器轉(zhuǎn)換成相應(yīng)的數(shù)字信號:
[0042]MCU定時地查詢一下A/D轉(zhuǎn)換器,探測一下是否有新的A/D轉(zhuǎn)換值,即探測一下是否有鍵按下,若無鍵按下,則退出,若有鍵按下,則在規(guī)定的采樣間隔下,MCU通過控制口線控制A/D轉(zhuǎn)換器,使其產(chǎn)生若干個對模擬電流的A/D轉(zhuǎn)換結(jié)果,并記錄于處理器緩沖區(qū)中;
[0043]2)或者所述模擬電流通過內(nèi)置于處理器的A/D模塊處理轉(zhuǎn)換成相應(yīng)的數(shù)字信號:
[0044]若有鍵按下,內(nèi)置A/D轉(zhuǎn)換模塊自動產(chǎn)生中斷,控采樣間隔連續(xù)采集模擬電流并量化,其量化結(jié)果記錄于處理器緩沖區(qū)中。
[0045]所述步驟S3具體包括:
[0046]對所述量化結(jié)果去除偏離方差較大的不平穩(wěn)的數(shù)據(jù)即消除抖動,由消除抖動處理后的量化樣本得到量化樣本均值并將其存儲于處理器的內(nèi)存中。
[0047]請參閱圖2及圖3,所述步驟S4具體包括:
[0048]S401:所述處理器中預(yù)設(shè)有多個量化區(qū)間(x,x+d),所述多個量化區(qū)間對應(yīng)于不同的按鍵;
[0049]S402:所述處理器通過判斷所述量化樣本均值落入的量化區(qū)間,從而識別被按下的按鍵。
[0050]本發(fā)明一種鍵盤輸入方法通過單一復(fù)用的I/O總線產(chǎn)生與不同按鍵對應(yīng)的模擬電流,并經(jīng)過數(shù)模轉(zhuǎn)化及消除抖動被處理器(MCU)識別,從而只需要單個I/O總線實(shí)現(xiàn)鍵盤不同按鍵的輸入,鍵盤網(wǎng)絡(luò)只需要處理器(MCU)提供單一的I/O 口就可以實(shí)現(xiàn)人機(jī)交互。
[0051]請參閱圖4及圖5,本發(fā)明還提供一種鍵盤輸入的裝置,包括工作電源1、鍵盤10及設(shè)于鍵盤10上的多個按鍵2,所述鍵盤輸入裝置還包括與鍵盤10上的多個按鍵2通過單一復(fù)用的I/O總線相連的處理器3 (MCU),當(dāng)所述鍵盤10中不同的按鍵2被按下,通過單一復(fù)用的I/O總線產(chǎn)生與所述按鍵2對應(yīng)的模擬電流,所述模擬電流通過采樣量化并由所述處理器3進(jìn)行消除抖動處理,得到量化樣本均值并存儲于處理器3的內(nèi)存中;所述處理器3通過判斷所述消除抖動后的量化樣本均值落入的量化區(qū)間,從而識別被按下的按鍵2。
[0052]所述鍵盤10中不同的按鍵2連接有對應(yīng)的電阻4,當(dāng)所述鍵盤10中不同的按鍵2被按下,使得所述不同的按鍵2對應(yīng)的電阻4連通工作電源1,以產(chǎn)生與所述按鍵對應(yīng)的模擬電流。所述鍵盤10可依A/D轉(zhuǎn)換精度靈活擴(kuò)展不同數(shù)目的按鍵個數(shù)。[0053]作為本發(fā)明的一實(shí)施例,本發(fā)明的鍵盤輸入裝置還包括一外置的A/D轉(zhuǎn)換器5,其連接于處理器3與鍵盤10之間,用于將所述模擬電流通過模數(shù)轉(zhuǎn)換成相應(yīng)的數(shù)字信號。所述模擬電流由鍵盤10流入A/D轉(zhuǎn)換器5并轉(zhuǎn)換成相應(yīng)的數(shù)字信號,所述數(shù)字信號通過處理器3的摸擬串口接收,在控制信號引腳的協(xié)同作用下,所述處理器3在有按鍵按下的情況下,產(chǎn)生中斷并依采樣間隔得到若干個A/D轉(zhuǎn)換值。
[0054]作為本發(fā)明的另一實(shí)施例,本發(fā)明的鍵盤輸入裝置中的處理器3內(nèi)置有A/D轉(zhuǎn)換模塊32,所述多個按鍵2通過單一復(fù)用的I/O總線連接處理器3的A/D轉(zhuǎn)換模塊32,所述模擬電流通過直接聯(lián)接到處理器A/D轉(zhuǎn)換的輸入引腳。當(dāng)有如果有鍵被按下,所述處理器3內(nèi)置的A/D轉(zhuǎn)換模塊32產(chǎn)生中斷,讓CPU獲取內(nèi)置A/D轉(zhuǎn)換器模數(shù)轉(zhuǎn)換結(jié)果。
[0055]所述處理器3還包括有數(shù)字信號處理模塊34及按鍵判斷識別模塊36,所述數(shù)字信號處理模塊34用于對所述摸擬電流進(jìn)行采樣量化,再對所述量化結(jié)果進(jìn)行消除抖動處理,由消除抖動處理后的量化樣本得到量化樣本均值;所述按鍵判斷識別模塊36用于判斷所述消除抖動后的量化樣本均值落入的量化區(qū)間,從而識別被按下的按鍵。
[0056]相比于現(xiàn)有技術(shù),本發(fā)明一種鍵盤輸入方法及裝置簡化了布線的密度,只占用了處理器的一個I/O 口資源,解決了處理器I/O 口使用緊張的問題;而且算法簡單、成本較低,對于內(nèi)置A/D轉(zhuǎn)換的處理器,只要有鍵被按下,就會產(chǎn)生中斷,從而提高了處理器的實(shí)時性,減少CPU工作的負(fù)荷,對于外置A/D的控制裝置,系統(tǒng)只需要查詢一下是否有信號產(chǎn)生,不像傳統(tǒng)的辦法需要掃描了多次,使得需要鍵盤的電子產(chǎn)品設(shè)計更簡潔,算法更簡單,提高了電子產(chǎn)品應(yīng)用的可擴(kuò)展性和可靠性
[0057]綜上所述,本發(fā)明一種鍵盤輸入的方法及裝置需要復(fù)用一根I/O 口實(shí)現(xiàn)鍵盤控制,設(shè)計簡潔、算法簡單且成本較低。
[0058]這里本發(fā)明的描述和應(yīng)用是說明性的,并非想將本發(fā)明的范圍限制在上述實(shí)施例中。這里所披露的實(shí)施例的變形和改變是可能的,對于那些本領(lǐng)域的普通技術(shù)人員來說實(shí)施例的替換和等效的各種部件是公知的。本領(lǐng)域技術(shù)人員應(yīng)該清楚的是,在不脫離本發(fā)明的精神或本質(zhì)特征的情況下,本發(fā)明可以以其它形式、結(jié)構(gòu)、布置、比例,以及用其它組件、材料和部件來實(shí)現(xiàn)。在不脫離本發(fā)明范圍和精神的情況下,可以對這里所披露的實(shí)施例進(jìn)行其它變形和改變。
【權(quán)利要求】
1.一種鍵盤輸入的方法,其特征在于,所述方法包括以下步驟: 步驟S1:當(dāng)鍵盤陣列中不同的按鍵被按下,通過單一復(fù)用的I/O總線產(chǎn)生與所述按鍵對應(yīng)的模擬電流; 步驟S2:對所述模擬電流按一定的采樣間隔進(jìn)行采樣并量化; 步驟S3:處理器對所述量化結(jié)果進(jìn)行消除抖動處理,消除抖動處理后的量化樣本均值存儲于處理器的內(nèi)存中; 步驟S4:所述處理器通過判斷所述量化樣本均值落入的量化區(qū)間,從而識別被按下的按鍵。
2.根據(jù)權(quán)利要求1所述的鍵盤輸入的方法,其特征在于,所述步驟SI中的鍵盤陣列中不同的按鍵連接有對應(yīng)的電阻。
3.根據(jù)權(quán)利要求1所述的鍵盤輸入的方法,其特征在于,所述步驟S2具體包括:所述模擬電流通過外置的A/D轉(zhuǎn)換器轉(zhuǎn)換成相應(yīng)的數(shù)字信號,或所述模擬電流通過內(nèi)置于處理器的A/D模塊處理轉(zhuǎn)換成相應(yīng)的數(shù)字信號。
4.根據(jù)權(quán)利要求1所述的鍵盤輸入的方法,其特征在于,所述步驟S3具體包括:對所述量化結(jié)果去除偏離方差較大的不平穩(wěn)的數(shù)據(jù)即消除抖動,由消除抖動處理后的量化樣本得到量化樣本均值并將其存儲于處理器的內(nèi)存中。
5.根據(jù)權(quán)利要求1所述的鍵盤輸入的方法,其特征在于,所述步驟S4具體包括: 5401:所述處理器中預(yù)設(shè)有 多個量化區(qū)間,所述多個量化區(qū)間對應(yīng)于不同的按鍵; 5402:所述處理器通過判斷所述量化樣本均值落入的量化區(qū)間,從而識別被按下的按鍵。
6.一種鍵盤輸入的裝置,其特征在于,包括工作電源、鍵盤及設(shè)于所述鍵盤上的多個按鍵,所述鍵盤輸入的裝置還包括與鍵盤上的多個按鍵通過單一復(fù)用的I/O總線相連的處理器,當(dāng)所述鍵盤中不同的按鍵被按下,通過單一復(fù)用的I/O總線產(chǎn)生與所述按鍵對應(yīng)的模擬電流,所述模擬電流通過采樣量化并由所述處理器進(jìn)行消除抖動處理,得到量化樣本均值并存儲于處理器的內(nèi)存中;所述處理器通過判斷所述消除抖動后的量化樣本均值落入的量化區(qū)間,從而識別被按下的按鍵。
7.根據(jù)權(quán)利要求6所述的鍵盤輸入的裝置,其特征在于,所述鍵盤中不同的按鍵連接有對應(yīng)的電阻,當(dāng)所述鍵盤中不同的按鍵被按下,使得所述不同的按鍵對應(yīng)的電阻連通工作電源,以產(chǎn)生與所述按鍵對應(yīng)的模擬電流。
8.根據(jù)權(quán)利要求7所述的鍵盤輸入的裝置,其特征在于,所述鍵盤輸入的裝置還包括一連接于處理器與鍵盤之間的外置A/D轉(zhuǎn)換器,用于將所述模擬電流通過模數(shù)轉(zhuǎn)換成相應(yīng)的數(shù)字信號。
9.根據(jù)權(quán)利要求7所述的鍵盤輸入的裝置,其特征在于,所述處理器內(nèi)置有A/D轉(zhuǎn)換模塊,所述多個按鍵通過單一復(fù)用的I/O總線連接處理器的A/D轉(zhuǎn)換模塊,用于將所述模擬電流通過模數(shù)轉(zhuǎn)換成相應(yīng)的數(shù)字信號。
10.根據(jù)權(quán)利要求8所述的鍵盤輸入的裝置,其特征在于,所述處理器還包括:數(shù)字信號處理模塊及按鍵判斷識別模塊,所述數(shù)字信號處理模塊用于對所述摸擬電流進(jìn)行采樣量化,再對所述量化結(jié)果進(jìn)行消除抖動處理,由消除抖動處理后的量化樣本得到量化樣本均值;所述按鍵判斷識別模塊用于判斷所述消除抖動后的量化樣本均值落入的量化區(qū)間,從而識別被按下的 按鍵。
【文檔編號】G06F3/023GK103576863SQ201210208331
【公開日】2014年2月12日 申請日期:2012年6月21日 優(yōu)先權(quán)日:2012年6月21日
【發(fā)明者】黎金華, 朱奎, 張華 , 張昕, 駱元海, 王林旺 申請人:深圳市金正方科技有限公司