專利名稱:鍵盤單片微電腦鬼鍵的檢測方法與特殊功能鍵的安排方法
技術(shù)領(lǐng)域:
本發(fā)明提供一種鍵盤單晶片微電腦,鬼鍵(GHOST)的探測方法與特殊功能鍵的安排方法,其涉及應(yīng)用特殊的軟件處理方式,使得能夠快速地探知鬼鍵(GHOST)的發(fā)生,并且節(jié)省程序存儲器容量的設(shè)計(jì)技巧與特殊鍵獨(dú)特的安排方法。
目前所有鍵盤掃描各鍵,均是以矩陣的方式來編排各鍵,而這種編排方式在同時(shí)按下三個(gè)以上按鍵,并且三個(gè)鍵又發(fā)生在如同井字的相對位置時(shí),立即會有所謂鬼鍵(GHOST)的情形出現(xiàn),如
圖1,而目前的技術(shù)解決這種問題一般有兩種方式。
一、在每一個(gè)鍵上加入一個(gè)二極管(如圖2),如此便能去除因?yàn)橥瑫r(shí)按下三個(gè)鍵,而使井字相關(guān)位置的各鍵同時(shí)感應(yīng)而產(chǎn)生鬼鍵(GHOST),但這種處理方式,每一個(gè)鍵上都要加上一個(gè)二極管,材料及加工成本將提高很多,已漸漸被淘汰。
二、利用單晶片微電腦的處理方式來判斷是否有三個(gè)鍵被同時(shí)按下,若有則將最后發(fā)生的第三鍵及鬼鍵(GHOST)遮抹,共技術(shù)方法揭示于下1.USPATNO4420744號其使用的方法為,在矩陣中選擇二列,比較判斷是否有二行中的每一列有否鍵被按下,重復(fù)比較每一列,直到每一種組合都比較過。
2.臺灣PATNO77103440號(宏基電腦股份有限公司)其使用的方法為十字型的判斷方法,即以每一行為基準(zhǔn),當(dāng)判斷有兩個(gè)鍵被按下時(shí),則可能有鬼鍵(GHOST)發(fā)生,再判斷同一列上有無鍵被按下,若有則送出嗶嗶聲,待狀態(tài)解除后,再重新進(jìn)行新的掃描。
第一種方式為一標(biāo)準(zhǔn)的鬼鍵(GHOST)處理模式,但因其中判斷太多,故所費(fèi)時(shí)間太長,若掃描線很多(即鍵數(shù)太多)則可能有誤判之虞,故已不廣泛被使用。
第二種方式較為省時(shí),但是判斷方式與正常掃描程序路徑不同,故較浪費(fèi)程序存儲器,一般標(biāo)誰型鍵盤須有AT/XT,PS2相容的功能,而每一個(gè)鍵應(yīng)有三組不同的碼即SET1,SET2,SET3,第三組(SET3)每一個(gè)鍵又可單獨(dú)設(shè)定,而宏基的鍵盤,有部分功能省略,即是用2KROM的程序存儲器不夠的原因,而這種方式亦較無彈性變化的可能,(在井字區(qū),僅能出現(xiàn)二個(gè)字)。
因此,本發(fā)明的目的是提供一種快速、可節(jié)省程序存儲器又兼具彈性變化的方法來檢測編碼器所產(chǎn)生的信號中是否有鬼鍵(GHOST)的情形,它能在短時(shí)間作出正確的判斷,送出嗶嗶碼,又能繼續(xù)掃描其它鍵,而若在部分鍵上加入了二極管,又可增進(jìn)功能到同時(shí)按三個(gè)鍵在井字區(qū)域而又無鬼鍵(GHOST)出現(xiàn)的能力。(即可出現(xiàn)三個(gè)字)。
就圖示詳細(xì)說明本發(fā)明的功能與結(jié)構(gòu)如下圖1是一般鍵盤鬼鍵發(fā)生的型式,圖2為現(xiàn)有鍵盤消除鬼鍵的鍵盤硬件線路圖,圖3是本發(fā)明單晶片微電腦的硬件線路圖,圖4是本發(fā)明特殊功能鍵的安排方式,圖5是本發(fā)明單晶片微電腦鍵盤軟件流程圖(一),圖6是本發(fā)明單晶片微電腦鍵盤軟件流程圖(二),圖7是本發(fā)明單晶片微電腦鍵盤軟件流程圖(三),圖8是本發(fā)明單晶片微電腦鍵盤軟件流程圖(四),
圖9是本發(fā)明單晶片微電腦鍵盤軟件流程圖(五),圖10是本發(fā)明單晶片微電腦鍵盤軟件流程圖(六),圖11是本發(fā)明單晶片微電腦鍵盤軟件流程圖(七),圖12是本發(fā)明單晶片微電腦鍵盤軟件流程圖(八),圖13是本發(fā)明單晶片微電腦鍵盤軟件流程圖(九)。
請參閱圖3,在正常狀態(tài)下,即無按鍵時(shí),每列都因線路上接有一個(gè)提升電阻而全部處在高電平狀態(tài),如圖3所示。而每條掃描線則依序允許成低電平的狀態(tài),依序掃描,且掃描的周期定為每4ms掃8條線,即8個(gè)ms可掃描完成16條線,每行有8個(gè)鍵,而16條(列)即可形成128鍵(8×16=128鍵),故一個(gè)掃描周期為8ms。
當(dāng)有鍵被按下時(shí),讀入行的狀態(tài)將為“0”,其余為“1”,而每列有8個(gè)鍵,即8個(gè)位元,若只有一個(gè)鍵被按下,則全部視為無鬼鍵(GHOST)的情形,退出判斷程序,繼續(xù)執(zhí)行其它程序,若有二個(gè)鍵以上情形發(fā)生時(shí),立即將目前狀態(tài)存于暫存器中,利用原來的掃描子程序,重新掃描各行,并與存于暫存器中的數(shù)據(jù)作邏輯“與”處理,再判斷數(shù)據(jù)若有多于一個(gè)鍵(即有兩個(gè)位元為“1”)的情形時(shí),則視為鬼鍵(GHOST),直至掃描各行結(jié)束后若均無兩鍵被壓下的情形則退出判斷程序,繼續(xù)執(zhí)行。
若有二個(gè)以上的鍵被按下,(即有二個(gè)以上的位元為“1”)的情形時(shí),則稱為鬼鍵(GHOST),立即停止重復(fù)出字的功能,設(shè)定-500ms的計(jì)時(shí)器,每隔500ms送出嗶嗶碼(使用原先的重復(fù)出字計(jì)時(shí)器工作),并繼續(xù)掃描,如果使用者再按下另外的其它鍵時(shí),若不在井字的區(qū)域,仍送出字形,待鬼鍵(GHOST)的狀況解除后,又將以正常的掃描流程動(dòng)作。
本發(fā)明另有一特殊的優(yōu)點(diǎn),即若使用I/O腳位較少的單晶片微電腦設(shè)計(jì)鍵盤時(shí),只要使用14條掃描線,即可達(dá)到避開鬼鍵(GHOST)的效果,使用14條掃描線,可控制到112個(gè)鍵。
(即YO-YD)如圖4所示,而一般已知技術(shù)要避開鬼鍵(GHOST),就非使用16條掃描線不可了,但本發(fā)明亦可使用于16條掃描線工作。圖4中所示CTRL(L),CTRL(R),SHIFT(R),ALT(R),ALT(L)等6個(gè)鍵為特殊功能鍵,依鍵盤的定義,任意二鍵與其它任何一個(gè)鍵相組合,均不得有鬼鍵(GHOST)的發(fā)生。而目前的技術(shù)使用13條或14條掃描線均無法符合這項(xiàng)要求,要達(dá)到就非得使用16條掃描線不可了!然而運(yùn)用本發(fā)明明確可輕易地達(dá)到要求。
圖5至圖13是本發(fā)明鍵盤的軟件流程圖,說明如下圖5判斷主機(jī)為何種型式,并判斷鍵盤是否禁止,如允許時(shí)判斷緩沖器有無數(shù)據(jù),有數(shù)據(jù)則送碼,無數(shù)據(jù)則進(jìn)行鍵盤掃描。
圖6系統(tǒng)下命令至鍵盤,并判斷命令型式,確定后執(zhí)行各命令工作。
圖7掃描鍵盤并設(shè)定標(biāo)記,判斷鍵盤的各鍵情況并比較后,執(zhí)行跳鍵處理程序或執(zhí)行重復(fù)出字處理程序。
圖8執(zhí)行跳鍵處理程序并判斷有無鬼鍵,如有鬼鍵則判斷重覆出字情況,若有則取消重復(fù)出字功能設(shè)定500ms嗶嗶聲計(jì)時(shí)器,若無鬼鍵則執(zhí)行母鍵子程序,尋找鍵碼。
圖9鬼鍵的判斷程序,先將當(dāng)前狀態(tài)存入暫存器中,取消主掃描標(biāo)記,掃描指標(biāo)指下一行,接著重新調(diào)用掃描子程序,比較新狀態(tài)與暫存器的狀態(tài)。
圖10判斷是否為模式3,如是判斷是否要送出解除碼,如否判斷是否為特殊鍵,如是調(diào)用特殊鍵處理子程序。
圖11判斷各鍵情況,如為特殊鍵則調(diào)用特殊鍵處理程序,如要重復(fù)出字,則設(shè)定重復(fù)出字標(biāo)記。
圖12送出鍵碼,如有連接網(wǎng)路則調(diào)用網(wǎng)路子程序,如無則調(diào)用送碼子程序,自動(dòng)去判斷為何種系統(tǒng)的送碼方式并執(zhí)行。
圖13設(shè)定母鍵及相關(guān)標(biāo)記,判斷母鍵及子鍵是否按下,并執(zhí)行組合鍵的功能。
由以上的公開,可以看出程序的作業(yè)流程,多使用共同原掃描路徑,故可以節(jié)省許多程序存儲器空間;又其使用一特殊的暫存器與邏輯“與”處理,再行判斷有無兩個(gè)以上鍵存留,來判斷鬼鍵(GHOST),如此根據(jù)“與”的定義0+0=0,0+1=0,1+0=0,1+1=1,故當(dāng)判斷時(shí)僅有四個(gè)鍵同時(shí)存在時(shí),鬼鍵(GHOST)才會出現(xiàn),故在矩陣特殊要求的區(qū)域如圖4所示,將可在井字區(qū)域加入二極管,連續(xù)按下3個(gè)鍵也不致有鬼鍵(GHOST)出現(xiàn),這是現(xiàn)有技術(shù)所無法達(dá)到的,另外本發(fā)明獨(dú)特使用一模擬計(jì)時(shí)器,作嗶嗶聲送出的計(jì)時(shí)控制,使鍵盤在遇鬼鍵(GHOST)發(fā)出嗶嗶聲的同時(shí),又能再作掃描的工作,使用者若再按下其它鍵,將能作正常的送出字形工作,這也是已知技術(shù)中所無法達(dá)到的。
結(jié)合以上所述,本發(fā)明所公開的方法,可以確實(shí)地達(dá)到本發(fā)明的目的,其應(yīng)用技術(shù)與已知技術(shù)也有明顯的差異,而本發(fā)明的優(yōu)點(diǎn)也較已知技術(shù)超出甚多,為一具備首創(chuàng)性的新發(fā)明。
權(quán)利要求
1.一種鍵盤單晶片微電腦鬼鍵(GHOST)的探測方法與特殊功能鍵的安排方法,其特征在于包含步驟掃描之初,每列都經(jīng)電阻接高電平,其后每行依次以4ms掃描8條的方式,依次掃描,掃描結(jié)果存于暫存器中;當(dāng)探測到有鍵被下壓時(shí),判斷暫存器的狀態(tài),若只有一個(gè)位元為零則視為無鬼鍵,繼續(xù)執(zhí)行下一動(dòng)作,以提高判斷效率;若暫存器多于兩個(gè)位元為零時(shí),則利用原掃描子程序,重新掃描各行,并與暫存器作“與”(AND)處理,再判斷暫存器內(nèi)部的數(shù)據(jù),若只有一個(gè)位元為零,則繼續(xù)此動(dòng)作,直到其它行皆判斷完成;若有兩上以上的位元為零則為鬼鍵,再掃描原行并與暫存器作“與”(AND)處理,若仍有兩個(gè)以上位元為零,則真正為鬼鍵出現(xiàn),若無則正常執(zhí)行;有鬼鍵時(shí),立即停止重復(fù)出字的功能,以原計(jì)時(shí)器設(shè)定500ms計(jì)時(shí),以送出嗶嗶碼,并繼續(xù)掃描待鬼鍵情形消除后,則正常執(zhí)行。
2.如權(quán)利要求1所述的方法,特征在于其在特定要求不可出現(xiàn)鬼鍵的區(qū)域,加入二極管,經(jīng)前述軟件的流程,可消除局部鬼鍵,則可做到僅13或14條以上的掃描線即可達(dá)到特定鍵無鬼鍵發(fā)生的目的。
全文摘要
本發(fā)明提供一種鍵盤單晶片微電腦鬼鍵(GHOST)的探測方法與特殊功能鍵的安排方法,其涉及應(yīng)用特殊的軟件處理方式,使得能夠快速地探知鬼鍵(GHOST)的發(fā)生,且節(jié)省程序存儲器容量的設(shè)計(jì)技巧與特殊鍵獨(dú)特的安排方法。
文檔編號H03M11/00GK1075221SQ9210520
公開日1993年8月11日 申請日期1992年6月25日 優(yōu)先權(quán)日1992年2月7日
發(fā)明者陳振文 申請人:陳振文, 旭麗股份有限公司