Claims Analysis
Total Claims: 2
Claim 1
Independent Claim
436 words
In a keyboard apparatus having a key matrix, a decoder operatively coupled to the key matrix, and a main control unit, operatively coupled to both the decoder and the key matrix, wherein the main control unit outputs control signals on select lines to the decoder to select one or more columns of the key matrix, reads on scan lines one or more rows of the key matrix, and thereby determines the state of one or more keys in the key matrix, the main control unit comprising horizontal register means having bit positions corresponding in number to rows of said matrix, for storing data indicative of whether or not more than one of the keys in a row are simultaneously depressed, temporary storage means for temporarily storing current key state data, and previous state storage means for storing previous state data of the keys, a method comprising: performing initialization including setting up the horizontal register means with initial data for each row indicating whether or not more than one of the keys in a row are simultaneously depressed; checking for depression of keys in each row of the key matrix sequentially including: sensing current key state data for keys in a row, temporarily storing the current key state data in the temporary storage means, and comparing the current key state data with the previous key state data stored in the previous state storage means to detect any difference indicating a key has been depressed or released; upon determining a key in a row has been depressed: checking the current key state data stored in the temporary storage means to determine whether more than one key in the associated row has been depressed; and if more than one key in the row is determined to be depressed, then: performing a logical AND between the current key state data and the data in the horizontal register means, and if the result of the AND is logical 0, process depressed key, indicate previous key state data as depression-processed state, and returning to the step of comparing the current key state data with the previous key state data, but if the result of the AND is a logical 1, then keeping data stored of the previous key state, and returning to the step of comparing the current key state data with the previous key state data; but if more than one key in the row is not determined to be depressed, then performing depressed key processing, changing the data in the previous state storage means to indicate a processed state, and returning to the step of checking for depression of keys.
Claim 2
Dependent Claim
436 words
In a keyboard apparatus having a key matrix, a decoder operatively coupled to the key matrix, and a main control unit, operatively coupled to both the decoder and the key matrix, wherein the main control unit outputs control signals on select lines to the decoder to select one or more columns of the key matrix, reads on scan lines one or more rows of the key matrix, and thereby determines the state of one or more keys in the key matrix, the main control unit comprising horizontal register means having bit positions corresponding in number to rows of said matrix, for storing data indicative of whether or not more than one of the keys in a row are simultaneously depressed, temporary storage means for temporarily storing current key state data, and previous state storage means for storing previous state data of the keys, a method comprising: performing initialization including setting up the horizontal register means with initial data for each row indicating whether or not more than one of the keys in a row are simultaneously depressed; checking for depression of keys in each row of the key matrix sequentially including: sensing current key state data for keys in a row, temporarily storing the current key state data in the temporary storage means, and comparing the current key state data with the previous key state data stored in the previous state storage means to detect any difference indicating a key has been depressed or released; upon determining a key in a row has been depressed: checking the current key state data stored in the temporary storage means to determine whether more than one key in the associated row has been depressed; and if more than one key in the row is determined to be depressed, then: performing a logical AND between the current key state data and the data in the horizontal register means, and if the result of the AND is logical 0, process depressed key, indicate previous key state data as depression-processed state, and returning to the step of comparing the current key state data with the previous key state data, but if the result of the AND is a logical 1, then keeping data stored of the previous key state, and returning to the step of comparing the current key state data with the previous key state data; but if more than one key in the row is not determined to be depressed, then performing depressed key processing, changing the data in the previous state storage means to indicate a processed state, and returning to the step of checking for depression of keys.