CN108509055A - A kind of independent keyboard Scan orientation method - Google Patents
A kind of independent keyboard Scan orientation method Download PDFInfo
- Publication number
- CN108509055A CN108509055A CN201810338492.3A CN201810338492A CN108509055A CN 108509055 A CN108509055 A CN 108509055A CN 201810338492 A CN201810338492 A CN 201810338492A CN 108509055 A CN108509055 A CN 108509055A
- Authority
- CN
- China
- Prior art keywords
- keyboard
- state
- code
- independent
- key number
- Prior art date
- Legal status (The legal status 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 status listed.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 28
- 239000000872 buffer Substances 0.000 claims abstract description 36
- 230000015654 memory Effects 0.000 claims abstract description 32
- 238000012423 maintenance Methods 0.000 claims description 13
- 239000000203 mixture Substances 0.000 claims description 4
- 230000006870 function Effects 0.000 abstract description 17
- 230000007423 decrease Effects 0.000 abstract description 9
- 239000013256 coordination polymer Substances 0.000 description 47
- 238000010586 diagram Methods 0.000 description 10
- 230000000630 rising effect Effects 0.000 description 8
- 230000001960 triggered effect Effects 0.000 description 5
- 210000001367 artery Anatomy 0.000 description 3
- 229910002056 binary alloy Inorganic materials 0.000 description 3
- 238000003825 pressing Methods 0.000 description 3
- 210000003462 vein Anatomy 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 2
- 230000004807 localization Effects 0.000 description 2
- 238000004080 punching Methods 0.000 description 2
- 230000009466 transformation Effects 0.000 description 2
- 241001269238 Data Species 0.000 description 1
- 102100040862 Dual specificity protein kinase CLK1 Human genes 0.000 description 1
- 102100040844 Dual specificity protein kinase CLK2 Human genes 0.000 description 1
- 101000749294 Homo sapiens Dual specificity protein kinase CLK1 Proteins 0.000 description 1
- 101000749291 Homo sapiens Dual specificity protein kinase CLK2 Proteins 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000033228 biological regulation Effects 0.000 description 1
- 230000001934 delay Effects 0.000 description 1
- 238000007688 edging Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000007257 malfunction Effects 0.000 description 1
- 239000011159 matrix material Substances 0.000 description 1
- 230000005055 memory storage Effects 0.000 description 1
- 210000000352 storage cell Anatomy 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/02—Input arrangements using manually operated switches, e.g. using keyboards or dials
- G06F3/0202—Constructional details or processes of manufacture of the input device
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Input From Keyboards Or The Like (AREA)
Abstract
A kind of independent keyboard Scan orientation method is realized by the circuit that independent keyboard, buffer register, state Code memory, encoder form, and includes the independent keyboard output N bit keyboard status signals of N number of button;The current state of N bit keyboard status signals and previous state are latched simultaneously by clock pulses control parallel register, obtain 2 × N conditional codes;Encode simultaneously run-out key number to conditional code;Different single key stroke, combination key operation, keyboard maintain state operation to be only embodied in not being same as above for conditional code;Button operation function is either adjusted if necessary to increase and decrease button operation function, circuit structure need not be changed, the encoded content of encoder need to be only changed according to the conditional code after increase and decrease and the correspondence between key number.The method does not have to write and run program, reliable operation.
Description
Present patent application is divisional application, and application No. is 201610003719.X, the applying date is in January, 2016 for original bill
5 days, entitled independent keyboard Scan orientation circuit.
Technical field
The present invention relates to a kind of Scan orientation method of keyboard, especially a kind of independent keyboard Scan orientation method.
Background technology
With the continuous development of embedded technology, current each electronic product generally uses microcontroller as control core
The heart, keyboard are widely used as main input equipment.
Current keyboard scan is mainly controlled by microcontroller, need by run microcontroller in program come into
Row, encounters interference, program is caused to run fast, and scanner program is by cisco unity malfunction.
Application No. is the patents of invention of CN201010153560.2 " a kind of fast scanning and positioning method of matrix keyboard " to adopt
The Scan orientation process for entering keyboard with the mode that keyboard interrupt triggers is judged using the method that keyboard scan step is repeated several times
Whether button is effective, and the key assignments to being obtained carries out condition adjudgement;If multiple repairing weld state is identical, it is in and stablizes shape
State, key assignments are effective;If multiple repairing weld state is different, key assignments is invalid.Single key stroke or combination key operation need individually judgement, such as
It is single key stroke, then enters singly-bound tupe;Combination key operation in this way then enters Macintosh tupe.Described in the patent
Method is solved causes the Problem-Errors such as wrong key, continuous touching since keyboard caused by the mechanical property of keyboard itself is shaken,
And the support issue to Macintosh and repeat key.But the method single key stroke needs to handle respectively with key operation is combined;
Not accounting for keyboard state maintains a period of time just to execute the keyboard operation function of effectively operating after;Increase and decrease button operation function
When either adjusting button operation function, need to change keyboard scan finder structure.
Invention content
In order to solve above-mentioned technical problem existing for existing keyboard scan localization method, the present invention provides a kind of stand alone types
Keyboard scan localization method includes the independent keyboard output N bit keyboard status signals of N number of button;It is controlled by clock pulses
Parallel register latches the current state of N bit keyboard status signals and previous state simultaneously, obtains 2 × N conditional codes;It is right
Conditional code encode and run-out key number;The N bit keyboards status signal is level signal.
The current state of the N bit keyboards status signal is that N bit keyboard state of the clock pulses effectively triggering along the moment is believed
Number, the previous state of N bit keyboard status signals is the N bit keyboard status signals for effectively triggering along the moment in clock pulses;Institute
Clock pulses is stated effectively to trigger along the rising edge for being clock pulses;The clock pulses effectively triggers along or is clock pulses
Failing edge.
The conditional code is made of effective status code and invalid state code, for identification the current state of independent keyboard and
Mode of operation;The key number is made of effective key number and invalid key number;The effective status code is by effective keyboard operation or state
It generates, the corresponding effectively key number of corresponding output;The invalid state code is generated by invalid keyboard operation or state, corresponding output nothing
Imitate key number.The key number is M, and the selection of M values should meet 2MMore than or equal to the sum of effective key number and the quantity of invalid key number.
Effective keyboard operation includes singly-bound push, singly-bound release operates, singly-bound presses maintenance operation, Macintosh
Operation.The combination key operation refers to after singly-bound is pressed, then presses the operation of other buttons;The invalid keyboard operation is effective
Operation except keyboard operation.
It is described conditional code to be encoded and run-out key number is realized by encoder.When encoder inputs all invalid state codes
All corresponding output invalid key number, invalid key number are a value except all effective keys number.Further, the encoder is only
Read memory;Storage content by changing read-only memory increases and decreases button operation function and either adjusts button operation function.
The parallel register includes N buffer registers and 2 × N state Code memories;It is described by clock arteries and veins
Punching control parallel register latches the current state of N bit keyboard status signals and previous state simultaneously, obtains 2 × N shapes
The specific method of state code is that the positions the N data input pin of buffer register inputs N bit keyboard status signals, conditional code register count
N bit keyboard status signals are inputted according to the positions N in input terminal, in addition the N positions the N data output ends for being connected to buffer register;Institute
The reception pulse input end of the reception pulse input end and state Code memory of stating buffer register is connected to clock pulses.Institute
It states buffer register and state Code memory and is carried out at the same time data latch in the rising edge of clock pulses, or in clock pulses
Failing edge is carried out at the same time data latch.
The positions N, 2 × N, M refer both to binary digit data;The period of the clock pulses is 20~100ms;Institute
It states and meets one-to-one relationship between N bit keyboards status signal and N number of button.
Independent keyboard Scan orientation method is realized by independent keyboard Scan orientation circuit.The independent keyboard delays
Rush register, state Code memory, encoder composition independent keyboard Scan orientation circuit.
Further, when the key number of output changes, keyboard state change pulse is exported.The independent keyboard is swept
Retouch positioning circuit further include keyboard state change pulse generate unit, the keyboard state change pulse by or door, M delay delay
The keyboard state change pulse for rushing device and M XOR gate composition generates unit output;M delay buffers are used for free-standing key
The positions the M key number of disk output carries out signal delay respectively;The input of M XOR gate is respectively the input of M delay buffers, output
Signal;The output of M XOR gate is respectively connected to or the input terminal of door;Or the output end of door exports keyboard state change pulse.
The independent keyboard Scan orientation circuit further includes oscillator;The oscillator exports clock pulses.
The beneficial effects of the invention are as follows:The positioning of state operation will be maintained to single key stroke, combination key operation, keyboard, by
Clock pulses scan transformation is handled at the conditional code of same binary length by the way of Unified coding, single key stroke,
Combination key operation, keyboard maintain state operation to be only embodied in not being same as above for conditional code;If necessary to increase and decrease button operation function or
Person is adjustment button operation function, need not change keyboard scanning circuit structure, only need to be according to the conditional code and key number after increase and decrease
Between correspondence change encoder encoded content, i.e. remodify be written read-only memory storage content.Institute
It states method and does not use the microcontrollers such as microcontroller, ARM, do not have to operation program, reliable operation.
Description of the drawings
Fig. 1 is independent keyboard Scan orientation schematic block circuit diagram;
Fig. 2 is the independent keyboard circuit diagram of the embodiment of the present invention;
Fig. 3 is the Scan orientation circuit diagram of the embodiment of the present invention;
Fig. 4 is that the keyboard state change pulse of the embodiment of the present invention generates the circuit diagram of unit;
Fig. 5 is the waveform correlation schematic diagram that the keyboard of the embodiment of the present invention effectively operates.
Specific implementation mode
Below in conjunction with attached drawing, the invention will be further described.
Fig. 1 is independent keyboard Scan orientation schematic block circuit diagram, by independent keyboard 400, buffer register 100, shape
State Code memory 200, encoder 300, oscillator 500 form.
Fig. 2 is the circuit diagram of the independent keyboard 400 of the embodiment of the present invention, shares 4 buttons, by button S1, button S2,
Button S3, button S4 and it is connected to the pull-up resistor R1 of power supply+VCC, pull-up resistor R2, pull-up resistor R3, pull-up resistor R4 groups
At.4 output ends of independent keyboard 400 correspond the state of output key S1, button S2, button S3, button S4 respectively
Signal I1, I2, I3, I4, when by key pressing, the status signal of corresponding output end is low level;It is corresponding to export when button is not pressed
The status signal at end is high level.
Buffer register 100, state Code memory 200, encoder 300 in Fig. 1 form Scan orientation circuit, implement
Example circuit diagram is as shown in Figure 3.Independent keyboard circuit has 4 buttons, and therefore, buffer register 100 requires 4 binary systems of deposit
Data, state Code memory 200 require 8 bit binary datas of deposit.4 data input pins of buffer register 100 are connected to
I1、I2、I3、I4;In 8 data input pins of state Code memory 200,4 data input pins are connected to I1, I2, I3, I4,
Other 4 data input pins are connected to 4 output ends of buffer register 100;8 input terminals of encoder 300 are connected to shape
8 output ends of state Code memory 200.Encoder 300, which exports, is scanned through 4 determining binary system keys number of positioning.
In Fig. 3, trigger 101 forms buffer register 100, trigger 201 forms state Code memory 200.Trigger
101 are made of 4 edge triggered flip flops, and the triggering input terminal of 4 edge triggered flip flops is the reception pulse input of buffer register 100
End, is connected to the CP output terminal of clock pulse of oscillator 500;Trigger 201 is made of 8 edge triggered flip flops, and 8 edges touch
The triggering input terminal for sending out device is the reception pulse input end of state Code memory 200, is connected to the CP clock arteries and veins of oscillator 500
Rush output end.Trigger 101, trigger 201 are preferably made of the d type flip flop of edging trigger, for example, by double D trigger
74HC74,4D trigger 74HC175 compositions.In Fig. 3 embodiments, trigger 101, trigger 201 select rising edge to trigger
8D trigger 74HC273 make the clearing of 74HC273 at this point, unillustrated clear input in Fig. 3 is connected to high level
Function is in invalid state, only has Trigger Function;Trigger 101 only needs 4D triggers, arbitrarily uses selected 8D triggers
4 d type flip flops in 74HC273.Triggering input terminal CLK1, CLK2 of two 8D triggers 74HC273 is connected to CP.
In Fig. 3, read-only memory 301 forms encoder 300.Address input end A7~A0 of read-only memory 301 is to compile
The input terminal of code device 300, data output end D3~D0 of read-only memory 301 are coding output end C3~C0 of encoder 300.
Embodiment is not drawn into the circuit of oscillator 500, and oscillator 500 is multivibrator, and the output period is 20~100ms
Rectangular wave, the rectangular wave be Fig. 3 in CP clock pulses.CP clock pulses can also be by independent keyboard Scan orientation circuit
Except circuit or device provide.
Independent keyboard Scan orientation Method And Principle is as follows:
Buffer register 100, state Code memory 200 have under the control of CP clock pulses in each period of CP
Effect triggering is along progress data latch.In Fig. 3,74HC273 is that rising edge triggering is effective, therefore, effective triggering of CP clock pulses
Edge is rising edge.
4 data input pin D20~D23 in 8 data input pins of state Code memory 200 are connected directly to independence
Formula keyboard output status signal I1, I2, I3, I4, in addition 4 data input pin D24~D27 be connected to buffer register 100
Data output end Q10~Q13,4 data input pin D10~D13 of buffer register 100 are connected directly to independent keyboard
Status signal I1, I2, I3, I4 of output, therefore, on effective triggering edge of CP clock pulses, 8 of state Code memory 200
In data output end, 4 data corresponding with status signal I1, I2, I3, I4 for being connected directly to independent keyboard output are defeated
The data that outlet Q20~Q23 is latched are the current state of independent keyboard, and 4 digits are stated to be existing state key assignments;It is slow with being connected to
The data for rushing the corresponding 4 data output ends Q24~Q27 latches of data output end of register 100 are independent keyboard
Previous state, state key assignments before 4 digits are stated to be.4 existing state key assignments and 4 of 200 data output end of state Code memory output
State key assignments collectively constitutes 8 conditional codes before position.
The current state and mode of operation of 8 conditional codes independent keyboard for identification.For example, the present embodiment
In, the conditional code of no key pressing is 11111111;The conditional code of S1 key singly-bound pushes is 11111110;S1 key singly-bounds are pressed
And the conditional code maintained is 11101110;The conditional code of S1 key singly-bounds release operation is 11101111;S2 key singly-bound pushes
Conditional code be 11111101;The conditional code of S4 key singly-bound pushes is 11110111;The S1 of S2+S1 combination operations presses behaviour
Make, after expression first presses S2, maintains the state pressed to press the operation of S1 again in S2, the conditional code of the operation is 11011100.
Encoder 300 is used to conditional code being converted to key number.In embodiment, it is equipped with 7 effective keyboard operations and state,
Including:
Operation 0:The singly-bound push of button S1, key number are 0000;
Operation 1:The singly-bound push of button S2, key number are 0001;
Operation 2:The singly-bound push of button S3, key number are 0010;
Operation 3:Button S3 singly-bounds press after maintenance state, key number be 0011;
Operation 4:After button S4 singly-bounds are pressed, then the combination key operation of S1 is pushed button, key number is 0100;
Operation 5:After button S4 singly-bounds are pressed, then the combination key operation of S2 is pushed button, key number is 0101;
Operation 6:The singly-bound release operation of button S1, key number is 0110.
The conditional code and key number obtained according to above-mentioned regulation is shown in coding schedule 1:
1 coding schedule of table
Keyboard operation | Conditional code (address) | Key number (storage data) |
S1 singly-bounds are pressed | 11111110 | 0000 |
S2 singly-bounds are pressed | 11111101 | 0001 |
S3 singly-bounds are pressed | 11111011 | 0010 |
S3 singly-bounds press maintenance | 10111011 | 0011 |
S4+S1 combination operations | 01110110 | 0100 |
S4+S2 combination operations | 01110101 | 0101 |
S1 singly-bounds discharge | 11101111 | 0110 |
Other operations or state | ******** | 1111 |
Encoder 300 is combinational logic circuit, designs circuit, meets the logical relation of table 1.
The encoder 300 of embodiment is preferably made of read-only memory 301.Read-only memory 301 has 8 bit address, and totally 28
A 4 binary storage cells.7 effective keyboard operations have 7 effective status codes, corresponding 7 effective keys number with state;
It, will in storage unit corresponding with 7 effective status codes using conditional code as address A7~A0 of read-only memory 301
Corresponding key number is as storage data write-in.The conditional code generated except 7 effective keyboard operations and state is invalid state
Code, i.e., other operations or state in table 1 are generated for invalid state code;In other storage units, all write-in is invalid
Key number, invalid key number are that one except 7 effective keys number is worth, and in embodiment, invalid key number is 1111.
Read-only memory 301 always works at data output state.When read-only memory 301 has piece selected control system, data
When exporting cushioning control function, its piece selected control system, data output cushioning control should be made to be in effective status.
Key number in embodiment is 4 binary codes.The number of bits of key number can increase as needed, or subtract
It is few, at this point, need to only select the read-only memory 301 to match with this.If the number of bits of key number is M, the selection of M values
2 should be metMMore than or equal to the sum of effective key number and the quantity of invalid key number.When independent keyboard has N bit keyboard status signals defeated
When going out, read-only memory 301 needs the input of 2 × N bit address, M-bit data output.
Button operation function is either adjusted if necessary to increase and decrease button operation function, only need to change table 1 as needed, it will
Modified content re-writes the storage content of read-only memory 301.
In embodiment, when independent keyboard S1 singly-bounds are pressed, CP clock pulses of the encoder 300 after S1 singly-bounds are pressed
Effective triggering along starting, to effective triggering edge of next CP clock pulses until, coding output end C3~C0 run-out keies number
0000;When independent keyboard S2 singly-bounds are pressed, effective triggering edge of CP clock pulses of the encoder 300 after S2 singly-bounds are pressed
Start, until effective triggering edge of next CP clock pulses, run-out key number 0001;After independent keyboard first presses S4,
S1 is pressed again, and effective triggering edge that encoder 300 combines the CP clock pulses after key pressing in S1 starts, until next CP clocks
Until effective triggering edge of pulse, run-out key number 0100;When independent keyboard S1 singly-bounds discharge, encoder 300 is in S1 singly-bounds
Effective triggering edge of CP clock pulses after release starts, until effective triggering edge of next CP clock pulses, run-out key
Number 0110;It can therefore be seen that when identification be effective button operation of independent keyboard when, encoder 300 is effectively pressed at this
Effective triggering edge of CP clock pulses after key operation starts, until effective triggering edge of next CP clock pulses, output
Duration is effective key number of CP width clock cycle.
In embodiment, when independent keyboard S3 singly-bounds are pressed, CP clock pulses of the encoder 300 after S3 singly-bounds are pressed
Effective triggering along starting, until effective triggering edge of next CP clock pulses, run-out key number 0010;In next CP
Effective triggering edge of clock pulses starts, until the effective of next CP clock pulses after S3 singly-bounds press maintenance state touches
Until sending out edge, 300 run-out key number 0011 of encoder;It can therefore be seen that when identification be the maintenance state of independent keyboard when,
Encoder 300 exports the duration of effective key number and the duration of the maintenance state is adapted.
When except the state of keyboard or operation being 7 effective keyboard operations and state described in table 1, encoder
300 output invalid keys number 1111.Effective key number, or output invalid key number are either exported, encoder 300 changes output content
At the time of for CP clock pulses effective triggering edge;In embodiment, encoder 300 is CP clock arteries and veins at the time of changing output content
The rising edge of punching.
The period of CP clock pulses is the scan period of independent keyboard.The keyboard scan period, can in 20ms or more
It has been effectively shielded from the influence of keyboard shake;The keyboard scan period in 100ms or less, is unlikely to omit keyboard operation;
Therefore, the period of CP clock pulses should control in 20~100ms.
Fig. 4 is that the keyboard state change pulse of the embodiment of the present invention generates the circuit diagram of unit.What it is when identification is stand alone type
When effective button operation of keyboard, effective triggering edge of CP clock pulses of the encoder 300 after effective button operation starts,
Until effective triggering edge of next CP clock pulses, output duration is the effective of CP width clock cycle
Key number.The device for receiving the independent keyboard output, needs the output for inquiring independent keyboard constantly, obtains key number.Inquiry
Period distances be necessarily less than period of CP clock pulses.
Circuit shown in Fig. 4 is used to judge whether the key number of independent keyboard output to change, when independent keyboard exports
Key number when changing, keyboard state change pulse is exported, for assisting the reception device of independent keyboard to receive stand alone type
The key number of keyboard output, for example, using keyboard state change pulse as the interrupt request singal of reception device.
Circuit shown in Fig. 4 by delay buffer 601, XOR gate 602, XOR gate 603, XOR gate 604, XOR gate 605 or
Door 606 forms.By only being formed with 4 edge triggered flip flops of Trigger Function, 4 edge triggered flip flops touch delay buffer 601
The reception pulse input end that input terminal is delay buffer 601 is sent out, the CP output terminal of clock pulse of oscillator 500 is connected to;
Delay buffer 601 carries out data latch on effective triggering edge of CP clock pulses.
Delay buffer 601 is used to carry out at delay 4 data C3~C0 of the coding output end of encoder 300 respectively
Reason.4 data input pin D63~D60 of delay buffer 601 are connected to coding output end C3~C0 of encoder 300, delay
The data that 4 data output end Q63~Q60 of buffer 601 are accordingly exported are C31~C01;C31~C01 is buffered by delay
After the first-level buffer of device 601, signal ratio C3~C0 postpones CP clock cycles, and Fig. 5 show the embodiment of the present invention
The waveform correlation schematic diagram that effectively operates of keyboard.The sections T1 of CP clock pulses are located at, independent keyboard exists primary effective
It operates, effective operation of embodiment includes:S1 singly-bounds are pressed, S2 singly-bounds are pressed, S3 singly-bounds are pressed, the S1 of S4+S1 combination operations
It presses, the S2 of S4+S2 combination operations is pressed, the release of S1 singly-bounds.On the next effective triggering edge once effectively operated, i.e. Fig. 5
Rising edge after the middle sections CP clock pulses T1, coding C3~C0 that encoder 300 exports change;In the sections T2, compile
Code device 300 exports efficient coding C3~C0 of a cycle;In T3, T4 and section later, coding C3 that encoder 300 exports~
C0 changes and enters maintenance state again, which may be that such as S1 singly-bounds press subsequent maintenance state, output
Invalid key number, it is also possible to which S3 singly-bounds press subsequent maintenance state, export effective key number, until effectively operation next time.
Coding C3~C0 that D6 pulses in Fig. 5 schematically illustrate the output of encoder 300 is to be in maintenance state, is not become
Change, still change, the D6 pulses are not present in actual circuit.As shown in figure 5, D6 pulses are low level, illustrate table
Show that coding C3~C0 that encoder 300 exports is to be in maintenance state, does not change;D6 pulses are high level, schematically illustrate volume
Code device 300 exports efficient coding C3~C0 of a cycle.What the Q6 in Fig. 5 reflected is the situation of change of C31~C01, it is clear that
Q6 ratios D6 postpones CP clock cycles.Equally, the Q6 pulses are not present in actual circuit.
In Fig. 5, coding C3~C0 that encoder 300 exports is to be in maintenance state, does not change, still changes,
Really by 606 4 delay buffers 601, XOR gate 602, XOR gate 603, XOR gate 604, XOR gate 605 or door groups
At logic circuit complete.1 corresponding, input point that 4 XOR gates encode in output end C3~C0 respectively with encoder 300
It Wei not the inputs of 4 delay buffers 601, output signal.For example, two input signals of XOR gate 602 be respectively C0 and
C01, C01 ratio C0 postpones CP clock cycles, and therefore, when C0 changes, XOR gate 602 exports 1 CP clock
The positive pulse of pulse period width;When C0 is a CP change width clock cycle signal, XOR gate 602 exports 2
The positive pulse of CP width clock cycle.XOR gate 603, XOR gate 604, XOR gate 605 judge whether C1~C3 sends out respectively
Changing, principle with judge it is identical whether C0 changes.XOR gate 602, XOR gate 603, XOR gate 604, XOR gate 605
Output end is respectively connected to or whether the input terminal of door 606 or door 606 change for comprehensive descision C0~C3, as long as C0
~C3 changes or door 606 exports keyboard state change pulse F, which is positive pulse.
In embodiment, delay buffer 601 selects the 8D triggers 74HC273 of rising edge triggering.In embodiment, encoder
300 outputs are 4 binary system keys number, therefore, delay buffer 601 needs, 4 d type flip flops.Due to delay buffer 601
In 4 d type flip flops and trigger 101 in the triggering input terminals of 4 d type flip flops be connected to the CP clocks of oscillator 500
Pulse output end, therefore, delay buffer 601 can share a 8D triggers 74HC273 with trigger 101.
Delay buffer 601 can also use other schemes, for example, using RC circuits, using 4 RC circuits respectively to C0
~C3 is postponed;If the delay time of RC circuits is less than CP clock cycles, encoder 300 exports a week
When efficient coding C3~C0 of phase, starts and export efficient coding C3~C0 in output efficient coding C3~C0 and terminate all to generate one
The width of a keyboard state change pulse, keyboard state change pulse is equal to RC circuit delay times;If the delay of RC circuits
Time is more than or equal to CP clock cycles, then when encoder 300 exports efficient coding C3~C0 of a cycle, defeated
Go out one keyboard state change pulse of generation when efficient coding C3~C0 starts, pulse width is more than or equal to 2 CP clock pulses
Period.It is required that the delay time of RC circuits is no more than 2 CP clock cycles, failed to report in order to avoid generating.
In the invention circuit, the positioning of state operation will be maintained to single key stroke, combination key operation, keyboard, by CP
Pulse scan transformation is handled at the conditional code of same binary length by the way of Unified coding, single key stroke, combination
Key operation, keyboard maintain state operation to be only embodied in not being same as above for conditional code;If necessary to increase and decrease button operation function either
Button operation function is adjusted, keyboard scanning circuit structure need not be changed, need to only be updated and be encoded according to the state code table after increase and decrease
Device 300, the storage content for re-writing update read-only memory 301.The invention circuit use microcontroller,
The microcontrollers such as ARM do not have to operation program, reliable operation.
Claims (10)
1. a kind of independent keyboard Scan orientation method, it is characterised in that:The independent keyboard for including N number of button exports N
Keyboard state signal;It is by clock pulses control parallel register that the current state of N bit keyboard status signals and previous state is same
Shi Suocun obtains 2 × N conditional codes;Encode simultaneously run-out key number to conditional code;Institute's rheme is binary digit.
2. independent keyboard Scan orientation method according to claim 1, it is characterised in that:The N bit keyboards state letter
Number current state be clock pulses effectively triggering along the moment N bit keyboard status signals, the previous shape of N bit keyboard status signals
State is the N bit keyboard status signals for effectively triggering along the moment in clock pulses.
3. independent keyboard Scan orientation method according to claim 1, it is characterised in that:The conditional code is by effective shape
State code and invalid state code form, for identification the current state and mode of operation of independent keyboard;The key number is by effective key
Number and invalid key number composition;The effective status code is generated by effective keyboard operation or state, the corresponding corresponding effective key of output
Number;The invalid state code is generated by invalid keyboard operation or state, corresponding output invalid key number.
4. independent keyboard Scan orientation method according to claim 3, it is characterised in that:Effective keyboard operation packet
Include singly-bound push, singly-bound release operates, singly-bound presses maintenance operation, combination key operation;The invalid keyboard operation is to have
Imitate the operation except keyboard operation.
5. independent keyboard Scan orientation method according to claim 4, it is characterised in that:The combination key operation refers to
After singly-bound is pressed, then press the operation of other buttons.
6. independent keyboard Scan orientation method according to claim 3, it is characterised in that:The key number is M, M values
Selection should meet 2MMore than or equal to the sum of effective key number and the quantity of invalid key number.
7. independent keyboard Scan orientation method according to claim 6, it is characterised in that:It is described that conditional code is compiled
Code simultaneously by encoder realized by run-out key number.
8. independent keyboard Scan orientation method according to claim 7, it is characterised in that:The encoder is read-only deposits
Reservoir.
9. the independent keyboard Scan orientation method according to any one of claim 1-8, it is characterised in that:It is described parallel
Register includes N buffer registers and 2 × N state Code memories.
10. independent keyboard Scan orientation method according to claim 9, it is characterised in that:It is described by clock pulses control
Parallel register processed latches the current state of N bit keyboard status signals and previous state simultaneously, obtains 2 × N conditional codes
Specific method be that the positions the N data input pin of buffer register inputs N bit keyboard status signals, and conditional code register data is defeated
The positions N entered in end input N bit keyboard status signals, in addition the N positions the N data output ends for being connected to buffer register;It is described slow
The reception pulse input end of the reception pulse input end and state Code memory that rush register is connected to clock pulses.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810338492.3A CN108509055B (en) | 2016-01-05 | 2016-01-05 | Independent keyboard scanning and positioning method |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810338492.3A CN108509055B (en) | 2016-01-05 | 2016-01-05 | Independent keyboard scanning and positioning method |
CN201610003719.XA CN105677054B (en) | 2016-01-05 | 2016-01-05 | Independent keyboard Scan orientation circuit |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610003719.XA Division CN105677054B (en) | 2016-01-05 | 2016-01-05 | Independent keyboard Scan orientation circuit |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108509055A true CN108509055A (en) | 2018-09-07 |
CN108509055B CN108509055B (en) | 2021-03-16 |
Family
ID=56298835
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610003719.XA Active CN105677054B (en) | 2016-01-05 | 2016-01-05 | Independent keyboard Scan orientation circuit |
CN201810338492.3A Expired - Fee Related CN108509055B (en) | 2016-01-05 | 2016-01-05 | Independent keyboard scanning and positioning method |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610003719.XA Active CN105677054B (en) | 2016-01-05 | 2016-01-05 | Independent keyboard Scan orientation circuit |
Country Status (1)
Country | Link |
---|---|
CN (2) | CN105677054B (en) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108509062A (en) * | 2018-04-10 | 2018-09-07 | 西京学院 | A kind of key board unit and knowledge key method based on priority encoder |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4291385A (en) * | 1973-12-17 | 1981-09-22 | Hewlett-Packard Company | Calculator having merged key codes |
JPS61262913A (en) * | 1985-05-17 | 1986-11-20 | Fujitsu Ltd | Keyboard simultaneous push shift processing system |
CN1359052A (en) * | 2001-07-11 | 2002-07-17 | 威盛电子股份有限公司 | Keyboard instruction fetch device for notebook computer |
CN1412650A (en) * | 2002-11-20 | 2003-04-23 | 威盛电子股份有限公司 | Keyboard control circuit of universal serial bus interface |
CN101436854A (en) * | 2007-11-15 | 2009-05-20 | 宝利通公司 | Twin-contact keyboard arrangement |
CN103226391A (en) * | 2013-05-22 | 2013-07-31 | 湖南工业大学 | Scan locating method for independent keyboard |
CN103279197A (en) * | 2013-06-08 | 2013-09-04 | 湖南工业大学 | Keyboard scanning positioning method |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
FR2575305B1 (en) * | 1984-12-20 | 1987-02-13 | Peugeot | KEY CONTROL DEVICE |
CN101510127B (en) * | 2009-03-30 | 2012-10-17 | 无锡中星微电子有限公司 | Method, apparatus and chip for implementing keyboard module composite key function |
CN101840268B (en) * | 2010-04-23 | 2012-02-15 | 中国电子科技集团公司第五十四研究所 | Method for fast scanning and positioning of matrix keyboard |
CN103631244A (en) * | 2013-12-22 | 2014-03-12 | 贺义方 | Master and slave type keyboard controller based on MCU (microprogrammed control unit) and CPLD (complex programmable logic device) |
-
2016
- 2016-01-05 CN CN201610003719.XA patent/CN105677054B/en active Active
- 2016-01-05 CN CN201810338492.3A patent/CN108509055B/en not_active Expired - Fee Related
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4291385A (en) * | 1973-12-17 | 1981-09-22 | Hewlett-Packard Company | Calculator having merged key codes |
JPS61262913A (en) * | 1985-05-17 | 1986-11-20 | Fujitsu Ltd | Keyboard simultaneous push shift processing system |
CN1359052A (en) * | 2001-07-11 | 2002-07-17 | 威盛电子股份有限公司 | Keyboard instruction fetch device for notebook computer |
CN1412650A (en) * | 2002-11-20 | 2003-04-23 | 威盛电子股份有限公司 | Keyboard control circuit of universal serial bus interface |
CN101436854A (en) * | 2007-11-15 | 2009-05-20 | 宝利通公司 | Twin-contact keyboard arrangement |
CN103226391A (en) * | 2013-05-22 | 2013-07-31 | 湖南工业大学 | Scan locating method for independent keyboard |
CN103279197A (en) * | 2013-06-08 | 2013-09-04 | 湖南工业大学 | Keyboard scanning positioning method |
Non-Patent Citations (2)
Title |
---|
NIAN-SHIONG TAN: "A new design method for encoding and decoding circuits", 《IEEE》 * |
赵晓林: "单片机中非编码键盘的编码设计", 《兰州教育学院学报》 * |
Also Published As
Publication number | Publication date |
---|---|
CN105677054A (en) | 2016-06-15 |
CN108509055B (en) | 2021-03-16 |
CN105677054B (en) | 2018-05-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105468164B (en) | Matrix keyboard scanner uni coding circuit | |
CN105677054B (en) | Independent keyboard Scan orientation circuit | |
CN108491091B (en) | A kind of independent keyboard state recognition and coding method | |
CN105677055B (en) | matrix keyboard scanning circuit and method | |
CN105677053B (en) | Independent keyboard operation identification and coding circuit | |
CN105680873B (en) | Independent keyboard scanning encoding circuit | |
CN105677051B (en) | Independent keyboard scanning circuit and coding circuit | |
CN105703780B (en) | Matrix keyboard Scan orientation circuit | |
CN105471439B (en) | Independent keyboard scanner uni coding circuit | |
CN105677050B (en) | Independent keyboard scanning circuit and scanning encoding method | |
CN105700697B (en) | independent keyboard scanning circuit and method | |
CN205334379U (en) | Stand alone type keyboard state recognition and coding circuit | |
CN105700698B (en) | Matrix keyboard state recognition and coding circuit | |
CN205490497U (en) | Stand alone type keyboard scan positioning circuit | |
CN205318332U (en) | Discernment of stand alone type key board operation and coding circuit | |
CN105680874B (en) | Matrix keyboard scanning circuit and scanning encoding method | |
CN205384581U (en) | Stand alone type keyboard scanning circuit and coding circuit | |
CN205353947U (en) | Stand alone type keyboard scan and coding circuit | |
CN105700696B (en) | Matrix keyboard scanning encoding circuit | |
CN105700695B (en) | Matrix keyboard scanning circuit and coding circuit | |
CN105680875B (en) | Matrix keyboard operation identification and coding circuit | |
CN205384582U (en) | Matrix type keyboard scanning circuit and coding circuit |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20210316 |