TWI224895B - Device and method of hardware scanning keyboard array - Google Patents

Device and method of hardware scanning keyboard array Download PDF

Info

Publication number
TWI224895B
TWI224895B TW92118060A TW92118060A TWI224895B TW I224895 B TWI224895 B TW I224895B TW 92118060 A TW92118060 A TW 92118060A TW 92118060 A TW92118060 A TW 92118060A TW I224895 B TWI224895 B TW I224895B
Authority
TW
Taiwan
Prior art keywords
address
value
index
item
keyboard
Prior art date
Application number
TW92118060A
Other languages
Chinese (zh)
Other versions
TW200503429A (en
Inventor
Wen-Chi Fang
Duen-Ren Wu
Original Assignee
Feature Integration Technology
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Feature Integration Technology filed Critical Feature Integration Technology
Priority to TW92118060A priority Critical patent/TWI224895B/en
Application granted granted Critical
Publication of TWI224895B publication Critical patent/TWI224895B/en
Publication of TW200503429A publication Critical patent/TW200503429A/en

Links

Landscapes

  • Input From Keyboards Or The Like (AREA)

Abstract

A device and a method of hardware scanning keyboard array are provided. The high execution and low cost characteristics of the hardware are used to execute the keyboard array scanning. Through proper transfer procedures, proper keyboard signals are output. Therefore, the traditional shortcomings, lower speed and higher cost, of the firmware scanning keyboard array are avoided.

Description

玫、發明說明: 【發明所屬之技術領域】 本發明係關於一種掃描鍵盤陣列之裝置,尤指一種適用 於硬體掃描鍵盤陣列之裝置。 5 【先前技術】 鍵盤是電腦系統中不可或缺的一項硬體設備,目前桌上 型電腦較常使用104/105個鍵盤鈕的鍵盤,而筆記型電腦較 常使用85個鍵盤鈕的鍵盤,兩者皆需要微處理器以及記憶體 1〇 (用以載入韌體以及索引-字元編碼表)以執行鍵盤陣歹/之 掃描,並輸出對應之字元編碼至基本輸出輸入系統(Βμ。 Input/〇utput System,BI〇s),以進行後序之處理。其中, 韌體表示用以控制硬體(例如,微處理器)運作之程式碼。 以桌上型電腦之鍵盤1〇為例,如圖丨所示,鍵盤1〇内部 15具有鍵盤陣列12,其由16行以及8列交錯排列而成,每一交 錯處對應至一鍵盤鈕。微處理器18係以一個記憶體ΐ8ι 存韋刃體以及索引-字元編碼表,其中索引-字元編碼表係用以 記錄索引值與字元編碼之對應關係,如圖2所示。 鈾述驅動裔14由上往下,依序驅動鍵盤陣列丨2之其中一 20行至咼準位。當使用者按下鍵盤鈕時,例如鍵盤鈕16,則使 鍵盤鈕16對應之交錯處短路,以造成其中一列之電壓為低準 位。韌體控制微處理器18以偵測鍵盤陣列12之狀態以得到一 組(共16個)掃描碼,並依據該組掃描碼以及索引_字元編 碼表以輸出其對應之字元。 以8位元為例,並以編號之大小作為數值之權重,微處 理器18偵測鍵盤陣列12時,將會得到一組掃描碼[χ][γ],其 中X表不鍵盤陣列12其中之一行,所以有16種變化(〇··ι5 ), 稱之為行掃描碼;γ表示鍵盤陣列12中8列所產生之結果, =以有8種變化(每次僅有一個位元為低準位),稱之為列 掃描碼,並以255為預設值。由上述中可知,掃描碼可對應 至128個鍵盤紐。 圖3係習知韌體掃描鍵盤陣列之流程圖,首先,載入韌 體以及索弓卜字元編碼表至記憶體181 (步驟S2〇),·步驟阳 掃描鍵盤陣列12以取得掃描碼,當然,微處理㈣執行步驟 s22時,需與驅動心相互配合;步驟a#則從掃描碼中 卜、引值。初體藉由掃描碼之比較以取得索引值;於步驟咖 中,依索引值以及索弓卜字元編碼以取得字元編 似係由拿刀體所執行;步驟S28將輸出字元編碼至電腦匕為 則=得字元_,再進㈣序之相,以㈣其對 :Γ:Λ字母A)或不處理(例如,無意義字元叫 微處理之成本較高 p 體8i) ’且其速度較慢(需等接〜興 執灯之結果),亦有可能因時間延遲而造成錯缺、¥ 發明人本於積極發明之精神,揭露出-種硬體執二、f,故 解碼之裝置及方法,以提供較佳之成本及效率。了鍵麟列 【發明内容】 5 本务明之主要目的係在提供一種硬體掃描鍵盤陣列之 衣置及方法,俾能快速取得對應至鍵心之字元值。 本^月之另目的係在提供一種硬體掃描鍵盤陣列之 a置及方法’俾能以較低之成本,達到相同之目的。 #本舍明之又-目的係在提供一種硬體掃描鍵盤陣列之 衣:及方法’俾能以較少之鍵盤鈕來提供一般鍵以及功能鍵 之字元。 10 為達成上述目的,本發明揭露—種硬體掃描鍵盤陣列之 包括:鍵盤陣列,由複數行以及複數列所交錯而成, ^-订以及每-列之交錯處係對應至鍵盤紐;驅動器,係依 站,, 一中之<丁,掃描器,係配合驅動器以 15 、續盤陣列’並取得複數掃描碼;暫存器,係儲存之前掃 :碼,之前掃描碼係為時間上較早之複數掃描碼;第一記憶 體’係儲存第-對應表;第二記憶體,係儲存第二對應表; =比㈣i純行數值比對之運作;其巾,比㈣將複數 力田碼與之W掃描碼進行數值比狀運作,以取得至少一索 引值’亚依據至少-帝引插LV g结 xii ^ "、W值以及弟一對應表以取得至少一對 應之位址值,並依據至少_斜座 禾^對應之位址值以及第二對應表以 20 取付至少一對應之字元編碼,並輸出之。 為達成上述目的’本發明揭露一種硬體掃描鍵盤陣列 :方法’包括下列步驟··(A)載入第—對應表至第一記憶 “⑻掃描鍵盤陣列以取得複數掃描碼;(〇判斷複 數掃描碼是否等於預設值,如果成立則執行步驟⑻;⑻ 比較複數掃描碼以及之前掃描碼以輸出至少—索引值;㈤ 1224895 依據至少一索引值以及第一對應表以取得至少一對應之位 址值,(F)依據至少一對應之位址值以及第二對應表以取 得至少一對應之字元編碼;以及(G)輸出至少一對應之字 兀編碼至基本輸人輸出系統,將複數掃描碼替代成之前掃描 5 碼,並執行步驟(b)。 由於使用本發明硬體掃描鍵盤陣列之裝置及方法,係直 接由硬體執行所有之程序,不需配合㈣,其速度較快,亦 車乂正確X具有⑻成本之特徵,故能達到本發明之目的。 10 15 20 【實施方式】 以桌上型電腦用之鍵盤3〇為例,其内部電路結構之方塊 圖如圖4所不,包括鍵盤陣列32、驅動器^以及微處理器%。 鍵盤陣列32由16行以及8列交錯排列而成,每—交錯處對應 至鍵盤紐36,當使用者按下鍵盤紐%時,則使鍵盤紐% 對應之乂錯處㉔路’以^成低準位n驅動器^由上往 下,依序驅動鍵盤陣列32之其中—行至低準位。當驅動器Μ 駆動鍵盤陣列32之其中—行時’微處理^叫貞測鍵盤陣列η 每-列之狀態以得到該行之列掃描碼,微處理器%總共可得 到一組(16個)掃描碼。 U處理為38係包括掃描器38卜比較器如、暫存器如、 記憶體384以及唯讀記憶體385。掃描器381係用以掃:鍵盤 陣列3=取得-組掃描值;比較器如係用以執行該組掃描 值與之則掃描碼之大小,並依此來設定中斷旗標(break code fUg)。如果中斷旗標值為〇,則微處理器38從位址_字元編 8 =(儲f於唯讀記憶體385)中輪出對應 如果中斷旗標值為卜則微處理器謂位址-字 碼表中輸出對應至字元編碼 子凡、為 儲存之ff 之子70編碼,暫存器383係用以 5 憶體384從聰載人索引-位址表並館存 ’唯❾己憶體385内部係儲存位址_字元編碼表。豆中 引-位址表及位址-字元編碼表如圖5所示。 ’、 微處=器38輸出字元編碼後’鍵盤3〇將字元編碼輸出至 則S’亚由BI0S對字元編碼進行後續之處理,以決定將字 ^編碼㈣應之字元顯示於顯示器上,或不對其作處理。盆 10中,之耵掃描碼係為時間上較早之該組掃描值。 圖6係本發明硬體掃描鍵盤陣列32之流程圖,心兒 下: ' 步驟S40,載入索引-位址表至記憶體384。其中,唯讀 記憶體385係儲存位址-字元編碼表。索弓卜位址表係用以記貝 15錄索引值與位址值之對應關係:位^字元編碼係用以記錄 4止值”子元編碼之對應關係,如此一來,微處理器%僅需 取得至少一個索引值,即能輸出對應至至少一個索引值之至 少一個字元編碼至BIOS。 步驟S42,掃描鍵盤陣列32以取得一組掃描碼。微處理 20器%藉由掃描器381以掃描鍵盤陣列32,當然,步驟S42之動 作需與驅動器34相互配合,以取得一組掃描碼。以8位元為 例,並以25 5作為預設值,鍵盤陣列32共有16行8列。當使用 者未按下任何一個鍵盤鈕時,掃描器381掃描鍵盤陣列32取 得一組掃描碼[χ][255],其中X表示〇至15之整數。當使用者 9 按下鍵盤鈕36時,掃描器381掃描鍵盤陣列32取得i個掃描碼 [2Π254]以及15個掃描碼[X][255]。 步驟S44 ’依據該組掃描碼及預設值以判斷是否靡繼續 執行,如果成立則執行步驟S46,如果不成立則執行步驟 S42。其中,預設值為255 (以使用八位元之桌上型電腦用之 鍵盤30為例)或127 (以使用七位元之筆記型電腦用之鍵盤 50為例),當中,步驟S44將在下述中作詳細之說明。 步驟S46,依據該組掃描碼及之前掃描碼以輸出至少一 個索引值並設定中斷旗標。比較器382對該組掃描碼及之前 掃描碼進行比較,即能得知那一個鍵盤鈕被按下或放開,且 輸出至少一個索引值,並依此設定中斷旗標。其中,中斷旗 標值係用以決定至少一個索引值係對應至字元編碼丨或是字 兀編碼2。 γ驟S48 ’依至少一個索引值及索引-位址表以取得對應 之位址值。如果其中之一該、组索引值為[2][254],依據索引一 位址表則索引值[2][254]對應至位址值8;如果其中之一該組 索引值為[X][255],則不產生任何對應。 步驟S50,依對應之位址值、中斷旗標值及位址_字元編 I表以取知對應之字凡編碼。例如,其中之—對應之位址值 為8’中斷旗-標為〇,依據位址-字元表則位址值8係對 元編碼08。 〜 步驟S52 ▲、 鞠出對應之字元編碼至電腦中,將該組掃描 I儲存成之刖知描碼’並設定中斷旗標為〇,且重覆執行 職2。鍵盤3G輸出字隸細QS,並由刪進行後續之處 5 理’將該組掃描碼儲存成之前择描石馬 ;BI0S接收到中斷旗標為。之字元編料^ :出至顯示器;當職接收到中斷旗標為工之字元:碼日士兀 將其對應之字元自電腦中移除。 ’’’才 相同之索引值依不同之巾斷旗標值將對應至不同 L扁碼,當中斷旗標值為〇時,微處理器38輸出位址 碼表中,字元編碼1所對應之字 > 兀、、扁 卿=下)鍵盤紐;當中斷旗標值為1時,微處理器 38輸出位址-字元編碼表中,丰 10 這表示使用者係放開鍵盤紐。馬所對應之字元編碼’ ,述步驟S46又可區分成下列細步流程,如圖7所示,置 、、,田步流程如下所述: 八 15 步驟S60,比較該組掃描碼是否等於預設值 則執仃步驟S42,如果不成立則執行步驟%〗。 步驟S62,比較該組掃描碼是否等於之前掃描碼。由比 :::來執行步驟S62,如果該組掃描碼等於之前掃描碼 二則執行步驟S64,如果該組掃描碼不等於之前掃描碼時, 綠仃步驟S66。如果該組掃描碼之每一列掃描碼等於予卜 20 值’這表示❹者目前並未按下任何—個鍵心,則不須^ 行其他之處理,故執行步驟S42。 步驟S64,比較該組掃描碼及預設值以取得至少一個索 引值,並執行步驟S46。由於該組掃描碼不同於預嗖值,、言、 表线用者係、按下或放開至少—鍵盤紐,“該^描= 於之厨掃描碼,這表示使用者係持續按下相同之鍵盤鈕,於 11 1224895 是,將該組掃描碼之每一掃描碼與之前掃描碼之每一掃描碼 進行互斥邏輯(XOR)之運算,並依照丨之數目而分別取得 數個結果’再進行反向(inverse)之運算,以取得至少一個 索引值。 5 假設該組掃描碼之其中之一為[2][254](二元值 11111110),而其餘為[X][255],之前掃描碼之其中之一亦 為[2][255] ’而其餘亦為[χ][255],所以將該組掃描碼與預設 值進行XOR之運算可以得到二元值〇〇〇〇〇〇〇1,由於其/中僅具 有一個1,所以直接進行反向運算,則可以得到一個索引值二 10其行索引值為2,列索引值254 (二元值為1111111〇),由索 引-位址表中得知,[2][254]係對應至位址值8 ;由位址-字元 編碼表中得知,位址值8係對應至字元編碼〇8 (中斷旗標為 〇),這表示使用者係按下對應至字元編碼〇8之鍵盤鈕%, 並依步驟S52,將該組掃描碼儲存成之前掃描碼。 15 -假設,使用者按下鍵盤鈕36後,又按下鍵盤鈕362,則 該組掃描碼其中之一為[2][126](二元值〇111111〇),其餘 為[Χ][255],將該組掃描碼與前一掃描碼進行乂〇尺之運算可 以得到二兀值10000000,直接進行反向運算,則可以得到一 個索引值,其行索引值為2,列索引值為127 (二元值為 20 01 1 1 1 1 1 1 )。當然,依此類推,使用者可按下其他鍵盤鈕, 其處理方式與上述類似,在此不多作說明。 步驟S66,依該組掃描碼以及之前掃描碼以設定中斷旗 標,並執行步驟S68。由比較器382來執行步驟S66,如果該 12 丄224895 組知描碼大於之前掃描碼則設定中斷旗標為1,否則設定中 斷旗標為0。 ' y私S68,依该組掃描碼及之前掃描碼以取得至少一個 ^引值並輸出之,並執行步驟S46。將該組掃描碼之每一 掃“碼契之^掃描碼之每_掃描碼進行互斥邏輯()之 運异’亚依照1之數目而分別取得數個結果, 算,以取得至少一個索引值。Description of the invention: [Technical field to which the invention belongs] The present invention relates to a device for scanning a keyboard array, and more particularly to a device suitable for a hardware scanning keyboard array. 5 [Prior art] The keyboard is an indispensable hardware device in a computer system. At present, desktop computers often use a keyboard with 104/105 keyboard buttons, while notebook computers often use a keyboard with 85 keyboard buttons. Both require a microprocessor and memory 10 (for loading the firmware and index-character encoding table) to perform a scan of the keyboard array /, and output the corresponding character encoding to the basic output input system ( Βμ. Input / 〇utput System (BI〇s), for subsequent processing. Among them, firmware refers to the code used to control the operation of hardware (for example, a microprocessor). Taking the keyboard 10 of a desktop computer as an example, as shown in Figure 丨, the keyboard 15 has a keyboard array 12 inside, which is composed of 16 rows and 8 columns staggered, and each intersection corresponds to a keyboard button. The microprocessor 18 uses a memory 8m to store the blade and an index-character encoding table, wherein the index-character encoding table is used to record the correspondence between the index value and the character encoding, as shown in FIG. 2. The uranium driver 14 is driven from top to bottom, and sequentially drives one of the 20 rows of the keyboard array 丨 2 to the 咼 level. When a user presses a keyboard button, such as keyboard button 16, the corresponding interlaced portion of keyboard button 16 is short-circuited, so that the voltage in one row is low. The firmware control microprocessor 18 detects the state of the keyboard array 12 to obtain a set (a total of 16) of scan codes, and outputs the corresponding characters according to the set of scan codes and the index_character code table. Taking 8-bit as an example, and using the size of the number as the weight of the value, when the microprocessor 18 detects the keyboard array 12, it will get a set of scan codes [χ] [γ], where X represents the keyboard array 12 which One row, so there are 16 variations (〇 ·· ι5), which is called the row scan code; γ indicates the result of 8 columns in the keyboard array 12, = there are 8 variations (only one bit at a time is Low level), called the column scan code, and 255 is the preset value. As can be seen from the above, the scan code can correspond to 128 keyboard buttons. FIG. 3 is a flowchart of a conventional firmware scanning keyboard array. First, load the firmware and cable bow character encoding table into the memory 181 (step S20), and step scan the keyboard array 12 to obtain a scan code. Of course, When the micro processor executes step s22, it needs to cooperate with the driving heart; in step a #, the value is derived from the scan code. The initial body obtains the index value through the comparison of the scan codes; in step C, the character encoding is obtained by the knife body according to the index value and the cable bow character encoding; step S28 encodes the output characters to The computer dagger is: = get the character _, and then enter the order of the sequence, with the pair: Γ: Λ letter A) or do not process (for example, the meaningless character is called micro processing, which has a higher cost p-body 8i) ' And its speed is slow (need to wait ~ the result of the Xingzhi), may also be caused by time delay, the inventor in the spirit of positive invention, exposed-a kind of hardware implementation, f, so Decoding device and method to provide better cost and efficiency. [Abstract] [5] The main purpose of the present invention is to provide a hardware scanning keyboard array and a method for quickly obtaining the character value corresponding to the key center. Another purpose of this month is to provide an arrangement and method of a hardware scanning keyboard array, which can achieve the same purpose at a lower cost. # 本 舍 明 之 又-The purpose is to provide a clothing for a hardware scanning keyboard array: and method ', which can provide the characters of general keys and function keys with fewer keyboard buttons. 10 In order to achieve the above object, the present invention discloses a hardware scanning keyboard array including: a keyboard array, which is composed of a plurality of rows and a plurality of columns being interlaced, and the interlaced position of each order and each column corresponds to a keyboard button; a driver , Yi Yizhan ,, One of the following < D, scanner, is used in conjunction with the driver to renew the array of 15, and obtain a plurality of scan codes; the register is used to store the previous scan code: the previous scan code is in time The earlier plural scan code; the first memory 'stores the first correspondence table; the second memory stores the second correspondence table; The field code and the W scan code are numerically compared to obtain at least one index value. The sub-base is inserted at least by the LV g knot xii ^ ", the W value, and the brother-one correspondence table to obtain at least one corresponding address. Value, and take at least one corresponding character code at 20 according to the address value corresponding to at least _ oblique seat and the second correspondence table, and output it. In order to achieve the above-mentioned object, the present invention discloses a hardware scanning keyboard array: a method, which includes the following steps: (A) loading the first-correspondence table to the first memory, "scanning the keyboard array to obtain plural scan codes; Whether the scan code is equal to the preset value. If it is true, perform step ⑻; ⑻ compare the complex scan code and the previous scan code to output at least an index value; ㈤ 1224895 obtain at least one corresponding bit according to at least one index value and the first correspondence table Address value, (F) obtaining at least one corresponding character code according to at least one corresponding address value and a second correspondence table; and (G) outputting at least one corresponding character code to a basic input output system, and plural The scan code is replaced by the previous scan of 5 codes, and step (b) is performed. Because the device and method for scanning the keyboard array using the hardware of the present invention, all the procedures are directly executed by the hardware, without the need of cooperation, and its speed is relatively fast. Also, the correct X has the characteristics of cost, so it can achieve the purpose of the present invention. 10 15 20 [Embodiment] Take the keyboard 30 for a desktop computer as an example, The block diagram of the internal circuit structure is shown in Figure 4. It includes the keyboard array 32, the driver ^ and the microprocessor%. The keyboard array 32 is composed of 16 rows and 8 columns staggered. When the user presses the keyboard button%, the wrong position corresponding to the keyboard button% is changed to ^ into a low level n driver ^ from top to bottom, and sequentially drives one of the keyboard array 32 to the low level. When the driver M moves one of the keyboard array 32-rows, 'micro processing' is called the state of each column of the keyboard array η to obtain the scan code of the row and column, and the microprocessor% can obtain a total of one (16) scans. U. Processing for 38 series includes scanner 38, comparators such as register, register such as, memory 384 and read-only memory 385. Scanner 381 is used to scan: keyboard array 3 = get-group scan value; compare If the device is used to execute the set of scan values and the size of the scan code, the break code fUg is set accordingly. If the interrupt flag value is 0, the microprocessor 38 slaves the address_word Yuan 8 = (store f in read-only memory 385) Correspondence if interrupt flag The value is the output of the microprocessor's address-word code table, which corresponds to the character code Zifan, which is the 70 code of the stored ff. The temporary register 383 is used for the 5 memory 384 from the smart index-address. The table and library are stored in the internal memory of the memory __ character encoding table. Bean-address table and address-character encoding table are shown in Figure 5. ', Micro == 38 After outputting the character code, 'Keyboard 30 will output the character code to S', and the BIOS will perform the subsequent processing of the character code to determine whether the character corresponding to the character ^ code is displayed on the display or not. Processing. In Pan 10, the scan code is the set of scan values earlier in time. Fig. 6 is a flowchart of scanning the keyboard array 32 by the hardware of the present invention. The next step is: 'Step S40, load index-bit Address table to memory 384. Among them, the read-only memory 385 stores an address-character encoding table. The cable bow address table is used to record the correspondence between the index value and the address value of the 15 records: the bit ^ character encoding is used to record the correspondence between the 4 stop value and the sub-element encoding. In this way, the microprocessor % Only needs to obtain at least one index value, that is, it can output at least one character code corresponding to the at least one index value to the BIOS. Step S42, scan the keyboard array 32 to obtain a set of scan codes. The microprocessor 20 uses a scanner 381 is to scan the keyboard array 32. Of course, the action of step S42 needs to cooperate with the driver 34 to obtain a set of scan codes. Taking 8 bits as an example and 25 5 as the preset value, the keyboard array 32 has a total of 16 rows and 8 When the user does not press any keyboard button, the scanner 381 scans the keyboard array 32 to obtain a set of scan codes [χ] [255], where X represents an integer from 0 to 15. When the user 9 presses the keyboard button At 36 o'clock, the scanner 381 scans the keyboard array 32 to obtain i scan codes [2Π254] and 15 scan codes [X] [255]. Step S44 'According to the set of scan codes and preset values to determine whether to continue execution, if If yes, execute step S46, if not, execute Step S42. Among them, the default value is 255 (using the keyboard 30 for an eight-bit desktop computer as an example) or 127 (using the keyboard 50 for a seven-bit notebook computer as an example), among which Step S44 will be described in detail in the following. In step S46, at least one index value is output and an interrupt flag is set according to the set of scan codes and the previous scan codes. The comparator 382 compares the set of scan codes with the previous scan codes. That is, you can know which keyboard button is pressed or released, and output at least one index value, and set the interrupt flag accordingly. Among them, the interrupt flag value is used to determine that at least one index value corresponds to a character code丨 Or the word code 2. γstep S48 'According to at least one index value and index-address table to obtain the corresponding address value. If one of them, the group index value is [2] [254], according to the index For a one-bit address table, the index value [2] [254] corresponds to the address value 8; if one of the set of index values is [X] [255], no correspondence is generated. Step S50, according to the corresponding address Value, interrupt flag value and address_character I table to know the corresponding word For example, among them, the corresponding address value is 8 'interrupt flag-marked as 0, according to the address-character table, the address value 8 is the pair coding 08. ~ Step S52 ▲, the corresponding character Encode it into the computer, save the set of scans I ’m aware of the scan code, and set the interrupt flag to 0, and repeat the execution of the job 2. The keyboard 3G output word is subdivided into QS, and the follow-up is performed by deletion. 5 'Save this set of scan codes as previously selected stone horses; BI0S received the interrupt flag as. Zigzag ^: out to the display; the job received the interrupt flag as the word of the job: Code Sunshiwu Remove the corresponding characters from the computer. The index values that are the same as "" will correspond to different L flat codes according to different flag values. When the interrupt flag value is 0, the microprocessor 38 outputs In the address code table, the word corresponding to the character code 1 is (> ,, Bingqing = bottom) keyboard button. When the interrupt flag value is 1, the microprocessor 38 outputs the address-character code table. Feng 10 This means that the user releases the keyboard button. The character code corresponding to the horse ', the step S46 can be divided into the following detailed steps, as shown in Figure 7, the step, step, and step steps are as follows: Step 15 S60, compare whether the set of scan codes is equal to The preset value is executed in step S42, and if it is not true, step% is executed. In step S62, it is compared whether the set of scan codes is equal to a previous scan code. Step S62 is performed by :::. If the set of scan codes is equal to the previous scan code, then step S64 is performed. If the set of scan codes is not equal to the previous scan code, step S66 is performed. If each column of the scan code in the group of scan codes is equal to a value of 20, it means that the user has not pressed any one key center at present, so no other processing is required, so step S42 is performed. In step S64, the scan code and the preset value are compared to obtain at least one index value, and step S46 is performed. Because this set of scan codes is different from the preset value, users who use words and lines should press or release at least-keyboard button, "This description = Yu's kitchen scan code, which means that the user keeps pressing the same The keyboard button, at 11 1224895, performs a mutually exclusive logic (XOR) operation on each scan code of the set of scan codes and each scan code of the previous scan code, and obtains several results according to the number of ' Then perform the inverse operation to obtain at least one index value. 5 Assume that one of the scan codes in the group is [2] [254] (binary value 11111110), and the rest are [X] [255] , One of the previous scan codes is also [2] [255] 'and the rest are also [χ] [255], so performing a XOR operation on the set of scan codes and a preset value can obtain a binary value of 〇〇〇〇 〇〇〇〇〇1, because there is only one of them, so directly perform the inverse operation, you can get an index value of 10, its row index value is 2, column index value is 254 (binary value is 1111111〇), It is known from the index-address table that [2] [254] corresponds to the address value 8; it is known from the address-character encoding table that the address value is 8 Corresponds to the character code 08 (the interrupt flag is 0), which means that the user presses the keyboard button% corresponding to the character code 08, and according to step S52, the group of scan codes is stored as the previous scan code. 15-Suppose that after the user presses the keyboard button 36 and then presses the keyboard button 362, one of the scan codes in the group is [2] [126] (binary value 〇111111〇), and the rest is [χ] [ 255]. Performing a 乂 0-foot operation on this set of scan codes and the previous scan code can get a value of 10000000. Directly performing the reverse operation, you can get an index value with a row index value of 2 and a column index value 127 (binary value is 20 01 1 1 1 1 1 1). Of course, and so on, the user can press other keyboard buttons, and the processing method is similar to the above, which is not described here. Step S66, according to Set the scan code and the previous scan code to set the interrupt flag, and execute step S68. The comparator 382 executes step S66. If the 12 丄 224895 group is known that the scan code is greater than the previous scan code, set the interrupt flag to 1, otherwise set The interrupt flag is 0. 'y Private S68, according to the scan code and the previous scan code to get At least one ^ quoted value is output, and step S46 is performed. Each scan of the set of scan codes is performed on the scan code of each of the ^ scan codes, and the scan code is mutually exclusive. The difference is 1 according to the number of 1. Several results are obtained and calculated to obtain at least one index value.

:般而言,執行步驟S68係表示使用者進行下述之動 作第種係使用者按下一個新的鍵盤紐。假設之前掃描碼 10之其中之一為[2][255](二元值⑴⑴11),其餘為[x][255], 當使用者按下鍵盤叙36時,該組掃描碼之其中之-為[2][254] ^二兀值1111111〇),其餘為[X][255],經x0R之運算可以 得到二元2〇〇000001,由於其中僅具有一個丨,所以直接進 仃反向運异’則可以得到一個索引值,其行索引值為2 ,列 索引值254 itb外,由於該組掃描碼係小於之前掃描碼,所 =中斷旗標設定為〇。第二種係使用者放開—個鍵盤钮。: In general, executing step S68 indicates that the user performs the following actions. The first type is that the user presses a new keyboard button. Assume that one of the previous scan codes 10 is [2] [255] (binary value ⑴⑴11), and the rest are [x] [255]. When the user presses the keyboard to describe 36, one of the scan codes of this group is- Is [2] [254] ^ two values (1111111〇), and the rest is [X] [255]. After the operation of x0R, you can get the binary 200000001. Since there is only one 丨, it is directly reversed. You can get an index value with a row index value of 2 and a column index value of 254 itb. Because the scan code is smaller than the previous scan code, the interrupt flag is set to 0. The second type is when the user releases a keyboard button.

假设,之前掃描碼之其中之一為[2][254](二元值 11111110),其餘為[x][255],當使用者放開鍵盤紐36時, 該組掃描碼之其中之一為m[255],其餘為[x][255],經舰 20之逆异可以得到二元值〇〇〇〇咖,由於其中僅具有一船, ㈣直接進行反向運算’則可以得到—個索引值[2][列。 由於該組掃描碼係大於之前掃描碼,所以將中斷旗標 設定為1。 13 1224895 由上述中可知,只要解碼器38取得至少一個索引值,即 : 旎依據至少一個索引值以及索引-位址表以取得至少一個對 應之位址值,並依據至少一個對應之位址值、位址_字元編 碼表以及中斷旗標以取得至少一個對應之字元編碼,並輸出 5至少一個對應之字元編碼至BI0S。由於解碼器38係使用硬 體方式來執行上述之步驟,其執行速度較習知技術快速,且 由於不需要習知之微處理器18以及記憶體·丨8 i,故其成本亦 較低。 此外,筆記型電腦由於空間之限制,一般而言係使用85 _ 10個按鍵鈕的鍵盤50,如圖8所示,為了達到充份利用鍵盤5〇 之功旎,於是在鍵盤50上設有功能鍵57,使部份鍵盤鈕(例 如,鍵盤鈕56)可以提供特定功能,例如,增加喇叭音量或 降低喇叭音量等特定功能。此時,解碼器58内部具有二個記 憶體,分別為一般鍵記憶體581以及功能鍵記憶體582。一般 15鍵記憶體581用以從BI〇s中下載索引_位址表並儲存之;功能 鍵記憶體582用以從BI0S中下載功能鍵索引_位址表並儲存 之。多工器583之控制端連接至鍵盤陣列52之功能鍵57,而 馨 多工器583所輸出之位址值係輸出自索引_位址表或功能鍵 索引-位址表其中之一。鍵盤5〇以及鍵盤3〇之掃描器381、比 2〇較器382、暫存器383以及唯讀記憶體385係為相同。當功能 鍵57未被按下時,多工器583所輸出之至少一個對應之位址 值係來自索引—位址表,如圖9所示,其結果與上一實施例相 似,不同之處乃在於掃描碼之大小(僅使用七個位元,其最 大值為127),當功能鍵57被按下時,多工器583所輸出之至 14 1224895 ^ 一個對應之位址值係來自功能鍵索弓卜位址表,如圖爾 :L而其掃描碼、索引碼、位址值與圖5相似,差別僅在於 ^描碼之大小(其最大值為127)以及其位址值係取自於功 能鍵索弓卜位址表。唯讀記憶體385依多工器583所輸出之至 5少一個對應之位址值而輸出其對應之至少一個對應之字元 編碼,並將至少一個對應之字元編碼輸出至Bi〇s。其中, 力月b鍵之疋義依貫際需求而定,例如,字元編碼81乃對應至 待命模式,·字元編碼82乃對應至增加喇叭音量;字元編 乃對應至降低喇叭音量。另外,功能鍵57單獨連結至鍵盤陣着 10 列52其中一列。 然而,當使用者同時按下三個以上鍵盤鈕而其中兩個係 位於同一行時,例如,同時按下鍵盤鈕36 (索引值為 [2][254])、鍵盤鈕363 (索引值為[6][127])以及鍵盤鈕361 (索引值為[6][254]),這將導致解碼器38偵測到兩個相同 15之列索引值254,此時如同使用者按下四個鍵盤鈕(鍵盤鈕 36、鍵盤鈕361、鍵盤鈕362以及鍵盤鈕363 )之結果相同, 一般稱之為鬼鍵(gh〇st key)。所以當解碼器38偵測到兩個 以上之索引值相同時(由比較器382進行索引值之比對), # 則解碼器38停止對此索引值進行處理。 Z〇 由上述中可知,儲存於唯讀記憶體382之位址-字元表係 固定’然而’索弓卜位址表、一般鍵索引_位址表以及功能鍵 索引-位址表卻可因使用者之需求或依不同國家而異,以符 合各種規格之需求。記憶體384、一般鍵記憶體581以及功能 15 1224895 2憶體582可為快閃記憶體、動態記憶體或靜態記憶體’· 唯項记憶體382亦可為快閃記憶體或靜態記憶體。 上述實施例僅係為了方便說明而舉例而已,本發明所主 張之權利範圍自應以中請專利範圍所述為準,而非僅 述實施例。 、 【圖式簡單說明】 圖1係習知鍵盤内部電路結構之方塊圖。 圖2係習知鍵盤所使用之索引_字元編碼表。 10 圖3係習知韌體掃描鍵盤陣列之流程圖。 圖4係本發明實施例鍵盤内部電路結構之方塊圖。 圖5係本發明實施例鍵盤所使用之索引_位址表以及位 址-字元編碼表。 圖6係本發明實施例硬體掃描鍵盤陣列之流程圖。 15 圖7係步驟S44之細部步驟之流程圖。 圖8係本發明另一實施例鍵盤内部電路結構之方塊圖。 圖9係本發明另一實施例鍵盤所使用之索引-位址表以 及位址-字元編碼表。 圖10係本發明另一實施例鍵盤所使用之另一索引-位址 20表以及位址-字元編碼表。 【圖號說明】 10 鍵盤 16 鍵盤紐 12 鍵盤陣列 18 微處理器 14驅動器 181記憶體 16 1224895 30 鍵盤 36 鍵盤鈕 52 鍵盤陣列 57 功能鍵 362鍵盤鈕 382 比較器 385唯讀記憶體 583 多工器 32 鍵盤陣列 38 解碼器 54 驅動器 58 解碼器 363鍵盤鈕 383暫存器 581 —般鍵記憶體 34 驅動器 50 鍵盤 56 鍵盤鈕 361鍵盤鈕 381掃描器 3 8 4記憶體 582功能鍵記憶體 17Assume that one of the previous scan codes is [2] [254] (binary value 11111110) and the rest is [x] [255]. When the user releases the keyboard button 36, one of the scan codes Is m [255], the rest are [x] [255], and the binary value of 0000 can be obtained through the inverse of ship 20. Since there is only one ship, ㈣ directly perform the reverse operation 'and you can get— Index values [2] [columns. Since the scan code is larger than the previous scan code, the interrupt flag is set to 1. 13 1224895 From the above, as long as the decoder 38 obtains at least one index value, that is: 旎 obtain at least one corresponding address value according to the at least one index value and the index-address table, and according to the at least one corresponding address value , Address_character encoding table and interrupt flag to obtain at least one corresponding character encoding, and output 5 at least one corresponding character encoding to BIOS. Since the decoder 38 uses hardware to perform the above steps, its execution speed is faster than the conventional technology, and because the conventional microprocessor 18 and memory 8 i are not needed, its cost is also lower. In addition, due to space constraints, a notebook computer generally uses a keyboard 50 with 85 _ 10 key buttons. As shown in FIG. 8, in order to fully utilize the functions of the keyboard 50, a keyboard 50 is provided. The function key 57 enables some keyboard buttons (for example, the keyboard button 56) to provide specific functions, such as increasing the speaker volume or decreasing the speaker volume. At this time, the decoder 58 has two memories inside, which are a general key memory 581 and a function key memory 582, respectively. Generally, the 15-key memory 581 is used to download the index_address table from BI0s and stored; the function key memory 582 is used to download and store the function key index_address table from BIOS. The control end of the multiplexer 583 is connected to the function key 57 of the keyboard array 52, and the address value output by the multiplexer 583 is output from one of the index_address table or the function key index-address table. The scanner 381, the comparator 382, the register 383, and the read-only memory 385 of the keyboard 50 and the keyboard 30 are the same. When the function key 57 is not pressed, at least one corresponding address value output by the multiplexer 583 is from the index-address table, as shown in FIG. 9. The result is similar to the previous embodiment, except for the difference It is the size of the scan code (only seven bits are used, and the maximum value is 127). When the function key 57 is pressed, the output from the multiplexer 583 to 14 1224895 ^ a corresponding address value comes from the function Key cable bow address table, as shown in Figure: L and its scan code, index code, address value is similar to Figure 5, the only difference is the size of the ^ code (its maximum value is 127) and its address value system Taken from the function key cable address table. The read-only memory 385 outputs at least one corresponding character code corresponding to at least one corresponding address value output by the multiplexer 583, and outputs at least one corresponding character code to Bi0s. Among them, the meaning of the power key b depends on the international demand. For example, the character code 81 corresponds to the standby mode, and the character code 82 corresponds to increasing the speaker volume; the character code corresponds to decreasing the speaker volume. In addition, the function keys 57 are individually connected to one of the ten rows 52 of the keyboard array. However, when the user presses more than three keyboard buttons at the same time and two of them are in the same row, for example, they press the keyboard button 36 (the index value is [2] [254]), the keyboard button 363 (the index value is [6] [127]) and keyboard button 361 (the index value is [6] [254]), which will cause the decoder 38 to detect two identical 15-column index values 254, as if the user presses four The results of the two keyboard buttons (keyboard button 36, keyboard button 361, keyboard button 362, and keyboard button 363) are the same, and are generally called ghost keys. So when the decoder 38 detects that two or more index values are the same (comparison of the index values by the comparator 382), # the decoder 38 stops processing the index value. Z〇 As can be seen from the above, the address-character table stored in the read-only memory 382 is fixed. However, the 'song bow address table, general key index_address table, and function key index-address table are all acceptable. Depending on the needs of users or different countries, to meet the needs of various specifications. Memory 384, general key memory 581, and function 15 1224895 2 Memory 582 can be flash memory, dynamic memory, or static memory '. The only memory 382 can also be flash memory or static memory. . The above-mentioned embodiments are merely examples for convenience of explanation. The scope of rights claimed in the present invention should be based on the scope of the patent application, rather than just the embodiments. [Brief description of the diagram] Figure 1 is a block diagram of the internal circuit structure of a conventional keyboard. FIG. 2 is an index_character encoding table used in a conventional keyboard. 10 Figure 3 is a flowchart of a conventional firmware scanning keyboard array. FIG. 4 is a block diagram of an internal circuit structure of a keyboard according to an embodiment of the present invention. FIG. 5 is an index_address table and an address-character encoding table used by the keyboard of the embodiment of the present invention. 6 is a flowchart of a hardware scanning keyboard array according to an embodiment of the present invention. 15 FIG. 7 is a flowchart showing detailed steps of step S44. FIG. 8 is a block diagram of the internal circuit structure of a keyboard according to another embodiment of the present invention. FIG. 9 is an index-address table and an address-character encoding table used by a keyboard according to another embodiment of the present invention. FIG. 10 shows another index-address 20 table and an address-character encoding table used by a keyboard according to another embodiment of the present invention. [Illustration of drawing number] 10 keyboard 16 keyboard button 12 keyboard array 18 microprocessor 14 drive 181 memory 16 1224895 30 keyboard 36 keyboard button 52 keyboard array 57 function key 362 keyboard button 382 comparator 385 read-only memory 583 multiplexer 32 keyboard array 38 decoder 54 driver 58 decoder 363 keyboard button 383 temporary register 581-general key memory 34 drive 50 keyboard 56 keyboard button 361 keyboard button 381 scanner 3 8 4 memory 582 function key memory 17

Claims (1)

拾、申請專利範圍: 1 ·—種硬體掃描鍵盤陣列之裝置,包括: A/一鍵盤陣列,由複數行以及複數列所交錯而成,每一該 等订以及每一該等列之交錯處係對應至一鍵盤鈕; 驅動器,係依序驅動該鍵盤陣列之其中之一該等行; 、 平^田,係配合該驅動器以伯測該鍵盤陣列,並取得 複數掃描碼; 暫存器,係儲存一之前掃描碼,該之前掃描碼係為時 間上較早之該等掃描碼; 10 一第一記憶體,係儲存一第一對應表; 第一纪憶體,係儲存一第二對應表;以及 一比較器,係執行數值比對之運作,其中 比較為將δ亥等掃描碼與該之前掃描碼進行數值比對 15 以取得至少—索引值,並依據該至少—索引值以及 對應表以取得至少—對應之位址值,並依據該至少一 编:之位址值以及该第二對應表以取得至少-對應之字元 編碼,並輸出之。 • .一” a ri\ 置, 20 該至少一 該第一對 該第二對Scope of patent application: 1 · A kind of hardware scanning keyboard array device, including: A / a keyboard array, which is composed of a plurality of rows and a plurality of columns interlaced, each order and the interleaving of each such column The drive corresponds to a keyboard button; the drive is to sequentially drive one of the rows of the keyboard array; Hirata, cooperates with the drive to test the keyboard array and obtain a plurality of scan codes; the register , Which stores a previous scan code, which is an earlier scan code in time; 10 a first memory, which stores a first correspondence table; a first memory, which stores a second A correspondence table; and a comparator that performs a numerical comparison operation, where the comparison is to numerically compare a scan code such as δHai with the previous scan code 15 to obtain at least an index value, and according to the at least index value and The correspondence table obtains at least-corresponding address values, and according to the at least one address: and the second correspondence table obtains at least-corresponding character codes, and outputs them. • .a ”a ri \ set, 20 the at least one the first pair the second pair 對應之字元編碼係輸出至基本輪人輪出系叙 3.如申請專利範圍第丨項所述之 應表係為一索引-位址表。 乂 4·如巾請專利範圍第丨項所述之裝置, 應表係為一位址_字元編碼表。 18 •如申請專利範圍第1項所述之裝置,其中,該第一對 應、表係為一鍵索引-位址表。 6 ·如申睛專利範圍第1項所述之裝置,其中,該裝置更 匕括第二記憶體,係用以儲存一功能鍵索引_位址表。 7 ·如申晴專利範圍第6項所述之裝置,其中,該裝置更 匕括夕工态,該多工器之控制端係連接至一功能鍵。 8·如申请專利範圍第7項所述之裝置,其中,當該功能 鍵未被按下時,該至少一對應之位址值係依據該至少一索引 值以及一般鍵索引-位址表;當該功能鍵被按下時,該至 參 10少一對應之位址值係依據該至少一索引值以及該功能鍵索 弓卜位址表。 9·如申請專利範圍第3或8項所述之裝置,其中,該索 引1立址表、該一般鍵索引-位址表以及該功能鍵索引-位址表 係讀取自基本輸入輸出系統。 15 1〇·如申請專利範圍第6項所述之裝置,其中該第一記憶 體以及該第三記憶體係為一動態記憶體。 _ 11.如申請專利範圍第丨項所述之裝置,其中該第二記憶 體係為一唯讀記憶體。 12·種硬體掃描鍵盤陣列之方法,包括下列步驟: 20 ( A )載入一第一對應表至一第一記憶體; (B )掃描該鍵盤陣列以取得複數掃描碼; (C )判斷該等掃描碼是否等於一預設值,如果成立則 執行步驟(B ); 19 ^24895 (D 索弓丨值; 比較該等掃描碼以及一之前掃描碼 以輸出至少—The corresponding character code is output to the basic round-by-round system. 3. The application table described in item 丨 of the scope of patent application is an index-address table. · 4. If the device described in item 丨 of the patent application, the table should be a one-bit address_character code table. 18 • The device according to item 1 of the scope of patent application, wherein the first correspondence and table is a one-key index-address table. 6. The device as described in the first item of the patent claim, wherein the device further includes a second memory for storing a function key index_address table. 7. The device as described in item 6 of Shen Qing's patent scope, wherein the device is more operative and the control end of the multiplexer is connected to a function key. 8. The device according to item 7 of the scope of patent application, wherein when the function key is not pressed, the at least one corresponding address value is based on the at least one index value and the general key index-address table; When the function key is pressed, the address value corresponding to at least one of the reference parameters is based on the at least one index value and the address table of the function key. 9. The device according to item 3 or 8 of the scope of patent application, wherein the index 1 address table, the general key index-address table and the function key index-address table are read from a basic input output system . 15 1 0. The device according to item 6 of the scope of patent application, wherein the first memory and the third memory system are dynamic memories. _ 11. The device according to item 丨 of the patent application scope, wherein the second memory system is a read-only memory. 12. A method of hardware scanning a keyboard array, including the following steps: 20 (A) loading a first correspondence table into a first memory; (B) scanning the keyboard array to obtain a plurality of scan codes; (C) judging Whether the scan codes are equal to a preset value, and if so, perform step (B); 19 ^ 24895 (D cable bow value); compare the scan codes with a previous scan code to output at least — 少一 (E )依據該至少一索引值以及該第一 對應之位址值; 對應表以取得至 5 (F )依據該至少一對應之位址值以及一 取得至少一對應之字元編碼;以及 弟一對應表以 10 ⑹輸出該至少-對應之字元編碼至基本輸入輸出系 、、先’將該等掃描碼替代成該之前掃描碼,並執行步驟(B)。 如申請專利範圍第12項所述之方法,其中,該 對應表係為一索引-位址表。One less (E) according to the at least one index value and the first corresponding address value; the correspondence table is obtained to 5 (F) based on the at least one corresponding address value and one to obtain at least one corresponding character code; And the one-to-one correspondence table outputs the at least-corresponding character code to the basic input and output system at 10 、, first replaces the scan codes with the previous scan codes, and performs step (B). The method according to item 12 of the patent application scope, wherein the correspondence table is an index-address table. 15 14.如申請專利範圍第12項所述之方法,其中,該第一 對應表係為一鍵索引_位址表。 ,15·如申請專利範圍第12項所述之方法,其中,該第二 對應表係為一位址_字元編碼表。16.如申請專利範圍第12項所述之方法,其中,步驟⑻ 更包括依據該至少-索引值、該第—對應表、—第三對應表 以及一功能鍵以取得該至少一對應之位址值。 17·如申請專利範圍第16項所述之方法,其中 對應表係為一功能鍵索引_位址表。 八 該第三15 14. The method according to item 12 of the scope of patent application, wherein the first correspondence table is a one-key index_address table. 15. The method according to item 12 of the scope of patent application, wherein the second correspondence table is a one-bit address_character encoding table. 16. The method according to item 12 of the scope of patent application, wherein step ⑻ further comprises obtaining the at least one corresponding bit according to the at least-index value, the first corresponding table, the third corresponding table, and a function key. Address. 17. The method according to item 16 of the scope of patent application, wherein the correspondence table is a function key index_address table. Eight the third 20 18·如申請專利範圍第〗6百 、 寸”&图弟16項所述之方法,其中,如果該 功施鍵未被按下,則該至少一斜處 y 對應之位址值係依據該至少一 索引值、及該第一對應表而取得。 20 1224895 19.如申請專利範圍第16項所述之方法,其中,如果該 功能鍵被按下,則該至少一對應之位址值係依據該至少一索 引值、及該第三對應表而取得。20 18. The method as described in the sixteenth item of the scope of the patent application, "& Figure 16", wherein if the function key has not been pressed, the address value corresponding to the at least one slope y is Obtained according to the at least one index value and the first correspondence table. 20 1224895 19. The method according to item 16 of the scope of patent application, wherein if the function key is pressed, the at least one corresponding address The value is obtained according to the at least one index value and the third correspondence table. 21twenty one
TW92118060A 2003-07-02 2003-07-02 Device and method of hardware scanning keyboard array TWI224895B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
TW92118060A TWI224895B (en) 2003-07-02 2003-07-02 Device and method of hardware scanning keyboard array

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
TW92118060A TWI224895B (en) 2003-07-02 2003-07-02 Device and method of hardware scanning keyboard array

Publications (2)

Publication Number Publication Date
TWI224895B true TWI224895B (en) 2004-12-01
TW200503429A TW200503429A (en) 2005-01-16

Family

ID=34568414

Family Applications (1)

Application Number Title Priority Date Filing Date
TW92118060A TWI224895B (en) 2003-07-02 2003-07-02 Device and method of hardware scanning keyboard array

Country Status (1)

Country Link
TW (1) TWI224895B (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI391842B (en) * 2009-04-08 2013-04-01 Silitek Electronic Guangzhou Method and system of detecting hidden ghost keys in the keyboard matrix

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3583617B1 (en) 2017-02-14 2024-08-21 Heldeis, Christoph Method for operating an active input element and corresponding input element, input arrangement and computer program product

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI391842B (en) * 2009-04-08 2013-04-01 Silitek Electronic Guangzhou Method and system of detecting hidden ghost keys in the keyboard matrix

Also Published As

Publication number Publication date
TW200503429A (en) 2005-01-16

Similar Documents

Publication Publication Date Title
JP5785330B2 (en) Apparatus and method for operating for memory endurance
CN110888594A (en) Data storage device and check code processing method thereof
TW200304615A (en) System and method for fast data transfer to display driver
TW201133499A (en) Method for enhancing error correction capability, and associated memory device and controller thereof
KR100997555B1 (en) Character Input Apparatus
JP3026962B2 (en) Word string compression circuit
TW200834384A (en) Computer and keyboard input operation method thereof.
JPH0479421A (en) Variable length encoder and decoder
TWI224895B (en) Device and method of hardware scanning keyboard array
US8380897B2 (en) Host computer, computer terminal, and card access method
TW563147B (en) Push button device and its operation method
US11909423B2 (en) Compression circuit, storage system, and compression method
US7102619B2 (en) Universal serial bus keyboard control circuitry
TW578375B (en) Bubble debugging circuit
TW200416545A (en) Semiconductor memory device and its controller
TWI684856B (en) Decoding method and associated flash memory controller and electronic device
US11742876B2 (en) Compression device and decompression device
TW529245B (en) Up/down gray code counter and solid-state image sensor provided with such a counter
TW479223B (en) Error correction circuit and method for a memory device
CN104202055B (en) Key circuit for detecting key trigger sate in real time, gamepad and method
JP7287005B2 (en) Specific method, specific program and specific device
JP3866568B2 (en) Image compression method
TW200428265A (en) Character element input correcting device and method
CN1567145A (en) Apparatus and method for hardware scan keyboard array
CN204131504U (en) A kind of key circuit of real-time detection button trigger state and game paddle

Legal Events

Date Code Title Description
MM4A Annulment or lapse of patent due to non-payment of fees