Patent ID: 7533193

Claim:
An apparatus, comprising: a microprocessor having a plurality of programmable input/output terminals; and a plurality of leads including at least three leads, each of the plurality of leads coupled to a different key of a keyboard, each of the plurality of programmable input/output terminals coupled to only one of the plurality of leads regardless of an actuation state of the keys; wherein the microprocessor reduces electromigration by performing steps comprising: (a) configuring the plurality of leads to be input leads by simultaneously applying a first voltage to each of the plurality of leads; (b) detecting whether an input signal is present at one of the plurality of leads while the plurality of leads are configured as the input leads; (c) when the input signal is present while the plurality of leads are configured as the input leads, storing an identification corresponding to the detected input signal for the one of the plurality of leads and then configuring the plurality of leads to be output leads by simultaneously applying a second voltage to each of the plurality of leads, wherein the second voltage is different from the first voltage; (d) when the input signal is not present at the one of the plurality of leads while the plurality of leads are configured as the input leads, configuring the plurality of leads to be the output leads by simultaneously applying the second voltage to each of the plurality of leads; and sequentially repeating steps (a) through (d) until the input signal is present at the one of the plurality of leads.