CN105677052B - Independent keyboard state recognition and coding circuit - Google Patents

Independent keyboard state recognition and coding circuit Download PDF

Info

Publication number
CN105677052B
CN105677052B CN201610003648.3A CN201610003648A CN105677052B CN 105677052 B CN105677052 B CN 105677052B CN 201610003648 A CN201610003648 A CN 201610003648A CN 105677052 B CN105677052 B CN 105677052B
Authority
CN
China
Prior art keywords
keyboard
buffer register
output
key number
encoder
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.)
Active
Application number
CN201610003648.3A
Other languages
Chinese (zh)
Other versions
CN105677052A (en
Inventor
王兵
凌云
郭艳杰
孔玲爽
曾红兵
陈刚
肖会芹
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Pizhou Xinsheng Venture Capital Co Ltd
Original Assignee
Hunan University of 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 Hunan University of Technology filed Critical Hunan University of Technology
Priority to CN201610003648.3A priority Critical patent/CN105677052B/en
Priority to CN201810338473.0A priority patent/CN108491091B/en
Publication of CN105677052A publication Critical patent/CN105677052A/en
Application granted granted Critical
Publication of CN105677052B publication Critical patent/CN105677052B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/02Input arrangements using manually operated switches, e.g. using keyboards or dials
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/02Input arrangements using manually operated switches, e.g. using keyboards or dials
    • G06F3/023Arrangements for converting discrete items of information into a coded form, e.g. arrangements for interpreting keyboard generated codes as alphanumeric codes, operand codes or instruction codes
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M11/00Coding in connection with keyboards or like devices, i.e. coding of the position of operated keys
    • H03M11/20Dynamic coding, i.e. by key scanning

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & 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 state recognition and coding circuit are made of independent keyboard, the first buffer register, the second buffer register, encoder.The circuit is scanned via clock pulses, the positioning of state operation will be maintained to single key stroke, combination key operation, keyboard, it is converted into the effective status code of same binary length and disarmed state code, after encoded device coding, export effective key number corresponding with each effective status code and either export invalid key number corresponding with all disarmed state codes;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, keyboard scanning circuit structure need not be changed, only need to encoder be changed according to the correspondence between the conditional code after increase and decrease and key number.The invention circuit does not have to write and operation program, reliable operation.

Description

Independent keyboard state recognition and coding circuit
Technical field
The present invention relates to a kind of scanning circuit of keyboard, especially a kind of independent keyboard state recognition and coding circuit.
Background technology
With the continuous development of embedded technology, current each electronic product is generally using microcontroller as control core The heart, keyboard are widely used as main input equipment.
Current keyboard scan mainly controlled by microcontroller, it is necessary to by run the program in microcontroller come into Row, runs into interference, program is caused to run fast, and scanning imaging system is by cisco unity malfunction.
A kind of patent of invention " fast scanning and positioning method of matrix keyboard " of Application No. CN201010153560.2 is adopted Enter the Scan orientation process of keyboard with the mode that keyboard interrupt triggers, 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 into singly-bound tupe;Key operation is combined in this way, then into Macintosh tupe.Described in the patent Method solves since keyboard caused by the mechanical property of keyboard itself is shaken and causes the Problem-Errors such as wrong key, continuous touching, And the support issue to Macintosh and repeat key.But the method single key stroke needs to handle respectively with combining key operation; Not accounting for keyboard state maintains a period of time just to perform the keyboard operation function of effectively operating after;Increase and decrease button operation function , it is necessary to change keyboard scan finder structure when either adjusting button operation function.
The content of the invention
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 state identifies and coding circuit, is made of independent keyboard, the first buffer register, the second buffer register, encoder.
The independent keyboard shares N number of button, equipped with N bit keyboard status signal outputs;The N bit keyboards state letter Number be level signal.
First buffer register is N binary registers;The N positions data input pin connection of first buffer register To N bit keyboard status signal outputs.
Second buffer register is N binary registers;The N positions data input pin connection of second buffer register To the N positions data output end of the first buffer register.
The encoder has 2 × N coding input ends;N positions data input pin in the 2 × N coding input end connects The N positions data output end of the first buffer register is connected to, in addition N data input pins are connected to the N positions of the second buffer register Data output end;The encoder has M key output terminals.
The reception pulse input end of first buffer register and the reception pulse input end of the second buffer register are equal It is connected to clock pulses.
First buffer register and the second buffer register are carried out at the same time data in the rising edge of clock pulses and latch, Or it is carried out at the same time data latch in the trailing edge of clock pulses.
The N position data output ends of first buffer register and the N positions data output end of the second buffer register are common The conditional code of output 2 × N;The conditional code is made of effective status code and disarmed state code;The key of the encoder output It number is made of effective key number and invalid key number;The effective status code is generated by effective keyboard operation or state, encoder input Output corresponding effectively key number is corresponded to during each effective status code;The disarmed state code is produced by invalid keyboard operation or state Raw, encoder inputs all corresponding output invalid key number during all disarmed state codes.
The encoder has M key output terminals, and the selection of M values should meet 2MMore than or equal to effective key number and invalid key number The sum of quantity.
Meet one-to-one relationship between the N bit keyboards status signal and N number of button.
The cycle of the clock pulses is 20~100ms;The independent keyboard state recognition and coding circuit further include Oscillator and;The oscillator exports clock pulses.
The independent keyboard state recognition and coding circuit further include keyboard state change pulse generation unit, for sentencing Whether the key number of disconnected independent keyboard output changes, and when the key number of independent keyboard output changes, exports keyboard State change pulse.
The keyboard state change pulse generation unit is made of OR gate, M delay buffers and M XOR gate;M are prolonged Slow buffer is used to carry out signal delay respectively to the M positions key number of independent keyboard output;The input of M XOR gate is respectively M The input of position delay buffer, output signal;The output of M XOR gate is respectively connected to the input terminal of OR gate;The output of OR gate End output keyboard state change pulse.
The N positions, 2 × N, M refer both to binary digit data.
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 by the way of Unified coding into the conditional code of same binary length, 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 after increase and decrease and key number Between correspondence change encoder, re-write the storage content of read-only memory.The invention circuit does not have Using microcontrollers such as microcontroller, ARM, without operation program, reliable operation.
Description of the drawings
Fig. 1 is independent keyboard state recognition and coding circuit functional block diagram;
Fig. 2 is the independent keyboard circuit diagram of the embodiment of the present invention;
Fig. 3 is the scanning encoding circuit diagram of the embodiment of the present invention;
Fig. 4 is the circuit diagram of the keyboard state change pulse generation unit of the embodiment of the present invention;
Fig. 5 is the waveform correlation schematic diagram that the keyboard of the embodiment of the present invention effectively operates.
Specific embodiment
Below in conjunction with attached drawing, the invention will be further described.
Fig. 1 is independent keyboard state recognition and coding circuit functional block diagram, is posted by the buffering of independent keyboard 400, first Storage 100, the second buffer register 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 Into.4 output terminals of independent keyboard 400 correspond output key S1, button S2, button S3, the state of button S4 respectively Signal I1, I2, I3, I4, during 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.
The first buffer register 100, the second buffer register 200, encoder 300 in Fig. 1 form scanning encoding circuit, Embodiment circuit diagram is as shown in Figure 3.Independent keyboard circuit has 4 buttons, and therefore, the first buffer register 100, second is slow It rushes register 200 and is required to 4 bit binary datas of deposit.4 data input pin D10~D13 of the first buffer register 100 connect It is connected to I1, I2, I3, I4;4 data input pin D24~D27 of the second buffer register 200 are connected to the first buffer register 100 4 output terminal Q10~Q13;In 8 input terminal A0~A7 of encoder 300,4 are connected to the first buffer register 100 4 output terminal Q10~Q13, in addition 44 output terminal Q24~Q27 for being connected to the second buffer register 200.Coding Device 300, which exports, is scanned through 4 definite binary system keys number of coding.
In Fig. 3, trigger 101 forms the first buffer register 100, trigger 201 forms the second buffer register 200. Trigger 101 is made of 4 edge triggered flip flops, and the triggering input terminal CLK1 of 4 edge triggered flip flops is the first buffer register 100 Reception pulse input end, be connected to the CP output terminal of clock pulse of oscillator 500;Trigger 201 is by 4 edge triggered flip flops Composition, the triggering input terminal CLK2 of 4 edge triggered flip flops is the reception pulse input end of the second buffer register 200, is all connected with To the CP output terminal of clock pulse of oscillator 500.Trigger 101, trigger 201 are preferably made of the d type flip flop of edging trigger, For example, it is made of double D trigger 74HC74,4D trigger 74HC175,8D trigger 74HC273.In Fig. 3 embodiments, trigger 101st, trigger 201 selects the 8D trigger 74HC273 of rising edge triggering, at this point, by unillustrated clear input in Fig. 3 High level is connected to, the Protection Counter Functions of 74HC273 is made to be in disarmed state, only there is Trigger Function.Trigger 101 and trigger 201 only need 4D triggers, each arbitrarily using 4 d type flip flops in selected 8D triggers 74HC273.8D is triggered The triggering input terminal of device 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 volume The input terminal of code device 300, data output end D3~D0 of read-only memory 301 are coding output terminal C3~C0 of encoder 300.
Embodiment is not drawn into the circuit of oscillator 500, and oscillator 500 is multivibrator, and the output cycle is 20~100ms Rectangular wave, the rectangular wave be Fig. 3 in CP clock pulses.CP clock pulses can also be by independent keyboard state recognition and volume Circuit or device outside code circuit provide.
The operation principle of independent keyboard state recognition and coding circuit is as follows:
First buffer register 100, the second buffer register 200 are under the control of CP clock pulses, in each week of CP Effective triggering edge of phase carries out data latch.In Fig. 3,74HC273 is effective for rising edge triggering, and therefore, CP clock pulses has Effect triggering edge is rising edge.
4 output datas of the first buffer register 100 only pass through first-level buffer, and 4 of the second buffer register 200 are defeated Go out data and have passed through level 2 buffering.Therefore, on effective triggering edge of CP clock pulses, the first buffer register 100 corresponding 4 The data that data output end Q10~Q13 is latched are the current state of independent keyboard, and 4 digits are stated to be existing state key assignments;Second The data that 200 corresponding 4 data output end Q24~Q27 of buffer register are latched are the previous state of independent keyboard, 4 State key assignments before digit is stated to be.4 existing state key assignments and 4 preceding state key assignments collectively constitute 8 conditional codes.
8 conditional codes are used to identify the current state and mode of operation of independent keyboard.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 keys singly-bound 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, press the operation of S1 again in the state that S2 maintenances are pressed, the conditional code of the operation is 11011100.
Encoder 300 is used to conditional code being converted to key number.In embodiment, 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; Using conditional code as address A7~A0 of read-only memory 301, in 7 corresponding storage units of effective status code, inciting somebody to action Corresponding key number is as storage data write-in.7 effective keyboard operations are disarmed state with the conditional code generated outside state Code, i.e., other operations or state in table 1 are generated for disarmed state code;In other storage units, all write-in is invalid Key number, invalid key number are worth for one outside 7 effective keys number, 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 or subtract as needed 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 quantity of invalid key number.When independent keyboard has the 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 Amended 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, until effective triggering edge of next CP clock pulses, coding output terminal 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, to next CP clock pulses effectively trigger edge until, run-out key number 0010;In next CP Effective triggering edge of clock pulses starts, until next CP clock pulses after S3 singly-bounds press maintenance state is effectively touched 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 outside the state of keyboard or operation is 7 effective keyboard operations described in table 1 and states, 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 cycle of CP clock pulses is the scan period of independent keyboard.The keyboard scan cycle, can in more than 20ms It has been effectively shielded from the influence of keyboard shake;The keyboard scan cycle in below 100ms, is unlikely to omit keyboard operation; Therefore, the cycle of CP clock pulses should be controlled in 20~100ms.
Fig. 4 is the circuit diagram of the keyboard state change pulse generation unit of the embodiment of the present invention.What it is when identification is stand alone type During 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 effective for CP width clock cycle Key number.The device of the independent keyboard output is received, it is necessary to which the output of moment inquiry independent keyboard, obtains key number.Inquiry Period distances be necessarily less than cycle of CP clock pulses.
Circuit shown in Fig. 4 is used to judge whether the key number of independent keyboard output changes, when independent keyboard exports Key number when changing, keyboard state change pulse is exported, for the reception device of independent keyboard to be aided in 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 having 4 edge triggered flip flops of Trigger Function to form, 4 edge triggered flip flops touch delay buffer 601 The reception pulse input end that input terminal is delay buffer 601 is sent out, is connected to the CP output terminal of clock pulse of oscillator 500; 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 terminal of encoder 300 respectively Reason.4 data input pin D63~D60 of delay buffer 601 are connected to coding output terminal 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 postpones CP clock cycles than C3~C0, and Fig. 5 show the embodiment of the present invention The waveform correlation schematic diagram that effectively operates of keyboard.The T1 sections of CP clock pulses are located at, independent keyboard presence is once effective Operation, effective operation of embodiment include: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 middle CP clock pulses T1 sections, coding C3~C0 that encoder 300 exports change;In T2 sections, compile Code device 300 exports efficient coding C3~C0 of a cycle;In T3, T4 and section afterwards, coding C3 that encoder 300 exports~ C0 changes and again into maintenance state, which may be that such as S1 singly-bounds press maintenance state below, output Invalid key number, it is also possible to which S3 singly-bounds press maintenance state below, 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 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 in maintenance state, do 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 postpones CP clock cycles than D6.Equally, the Q6 pulses are not present in actual circuit.
In Fig. 5, coding C3~C0 that encoder 300 exports is 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 gate groups Into logic circuit complete.1 corresponding, input point that 4 XOR gates encode in output terminal C3~C0 respectively with encoder 300 Not Wei 4 delay buffers 601 input, output signal.For example, two input signals of XOR gate 602 be respectively C0 and C01, C01 postpone CP clock cycles than C0, 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 is with judging it is identical whether C0 changes.XOR gate 602, XOR gate 603, XOR gate 604, XOR gate 605 Output terminal is respectively connected to the input terminal of OR gate 606, and whether OR gate 606 changes for comprehensive descision C0~C3, as long as C0 ~C3 changes, and OR gate 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.
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 time delay of RC circuits is less than CP clock cycles, encoder 300 exports a week During efficient coding C3~C0 of phase, start and export efficient coding C3~C0 in output efficient coding C3~C0 and terminate all to generate one A keyboard state change pulse, the width of keyboard state change pulse are 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 Cycle.It is required that the time delay 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, single key stroke, combination into the conditional code of same binary length by the way of Unified coding 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 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 using microcontroller, The microcontrollers such as ARM, without operation program, reliable operation.

Claims (10)

1. a kind of independent keyboard state recognition and coding circuit, which is characterized in that by independent keyboard, the first buffer stock Device, the second buffer register, encoder composition;
The independent keyboard shares N number of button, equipped with N bit keyboard status signal outputs;The N bit keyboards status signal is Level signal;
First buffer register is N binary registers;The N positions data input pin of first buffer register is connected to N Bit keyboard status signal output;
Second buffer register is N binary registers;The N positions data input pin of second buffer register is connected to The N positions data output end of one buffer register;
The encoder has 2 × N coding input ends;N positions data input pin in the 2 × N coding input end is connected to The N positions data output end of first buffer register, in addition N data input pins be connected to the N positions data of the second buffer register Output terminal;
The reception pulse input end of first buffer register and the reception pulse input end of the second buffer register are all connected with To clock pulses.
2. independent keyboard state recognition according to claim 1 and coding circuit, it is characterised in that:First buffering Register and the second buffer register are carried out at the same time data in the rising edge of clock pulses and latch or decline in clock pulses It is latched along data are carried out at the same time.
3. independent keyboard state recognition according to claim 2 and coding circuit, it is characterised in that:First buffering Register and the second buffer register are made of the d type flip flop of edging trigger;The encoder is read-only memory.
4. independent keyboard state recognition according to claim 1 and coding circuit, it is characterised in that:First buffering The N position data output ends of register and the N positions data output end of the second buffer register export the conditional code of 2 × N jointly;Institute Conditional code is stated to be made of effective status code and disarmed state code;The key number of the encoder output is by effective key number and invalid key number Composition;The effective status code is generated by effective keyboard operation or state, and encoder corresponds to when inputting each effective status code The corresponding effectively key number of output;The disarmed state code is generated by invalid keyboard operation or state, and encoder input is all invalid All corresponding output invalid key number during conditional code.
5. independent keyboard state recognition according to claim 4 and coding circuit, it is characterised in that:The encoder has M key output terminals, the selection of M values should meet 2MMore than or equal to the sum of effective key number and quantity of invalid key number.
6. independent keyboard state recognition according to claim 5 and coding circuit, it is characterised in that:Further include keyboard shape Whether state change pulse generation unit, the key number for judging independent keyboard output change, when independent keyboard exports Key number when changing, export keyboard state change pulse.
7. independent keyboard state recognition according to claim 6 and coding circuit, it is characterised in that:The keyboard state Change pulse generation unit is made of OR gate, M delay buffers and M XOR gate;M delay buffers are used for stand alone type The M positions key number of keyboard output carries out signal delay respectively;The input of M XOR gate is respectively inputting, being defeated for M delay buffers Go out signal;The output of M XOR gate is respectively connected to the input terminal of OR gate;The output terminal output keyboard state variation arteries and veins of OR gate Punching.
8. independent keyboard state recognition according to claim 1 and coding circuit, it is characterised in that:The N bit keyboards Meet one-to-one relationship between status signal and N number of button.
9. independent keyboard state recognition according to claim 1 and coding circuit, it is characterised in that:The clock pulses Cycle be 20~100ms.
10. independent keyboard state recognition according to claim 1 and coding circuit, it is characterised in that:Further include vibration Device;The oscillator exports clock pulses.
CN201610003648.3A 2016-01-05 2016-01-05 Independent keyboard state recognition and coding circuit Active CN105677052B (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN201610003648.3A CN105677052B (en) 2016-01-05 2016-01-05 Independent keyboard state recognition and coding circuit
CN201810338473.0A CN108491091B (en) 2016-01-05 2016-01-05 A kind of independent keyboard state recognition and coding method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201610003648.3A CN105677052B (en) 2016-01-05 2016-01-05 Independent keyboard state recognition and coding circuit

Related Child Applications (1)

Application Number Title Priority Date Filing Date
CN201810338473.0A Division CN108491091B (en) 2016-01-05 2016-01-05 A kind of independent keyboard state recognition and coding method

Publications (2)

Publication Number Publication Date
CN105677052A CN105677052A (en) 2016-06-15
CN105677052B true CN105677052B (en) 2018-05-25

Family

ID=56190367

Family Applications (2)

Application Number Title Priority Date Filing Date
CN201810338473.0A Expired - Fee Related CN108491091B (en) 2016-01-05 2016-01-05 A kind of independent keyboard state recognition and coding method
CN201610003648.3A Active CN105677052B (en) 2016-01-05 2016-01-05 Independent keyboard state recognition and coding circuit

Family Applications Before (1)

Application Number Title Priority Date Filing Date
CN201810338473.0A Expired - Fee Related CN108491091B (en) 2016-01-05 2016-01-05 A kind of independent keyboard state recognition and coding method

Country Status (1)

Country Link
CN (2) CN108491091B (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116820256B (en) * 2023-08-28 2023-12-08 深圳市蓝晨科技股份有限公司 Multi-cascade key detection method and device

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0188151A1 (en) * 1984-12-20 1986-07-23 Automobiles Peugeot Keyboard device
CN101510127A (en) * 2009-03-30 2009-08-19 北京中星微电子有限公司 Method, apparatus and chip for implementing keyboard module composite key function
CN101840268A (en) * 2010-04-23 2010-09-22 中国电子科技集团公司第五十四研究所 Method for fast scanning and positioning of matrix keyboard
CN101943948A (en) * 2009-07-07 2011-01-12 扬智科技股份有限公司 Keyboard scanning device and keyboard scanning method
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
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)

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101102348A (en) * 2007-06-28 2008-01-09 中兴通讯股份有限公司 A keyboard circuit and method for recognizing hand-held mobile device
JP2010238207A (en) * 2009-03-31 2010-10-21 Brother Ind Ltd Input device and program for the same

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0188151A1 (en) * 1984-12-20 1986-07-23 Automobiles Peugeot Keyboard device
CN101510127A (en) * 2009-03-30 2009-08-19 北京中星微电子有限公司 Method, apparatus and chip for implementing keyboard module composite key function
CN101943948A (en) * 2009-07-07 2011-01-12 扬智科技股份有限公司 Keyboard scanning device and keyboard scanning method
CN101840268A (en) * 2010-04-23 2010-09-22 中国电子科技集团公司第五十四研究所 Method for fast scanning and positioning of matrix keyboard
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
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)

Also Published As

Publication number Publication date
CN108491091A (en) 2018-09-04
CN108491091B (en) 2019-10-18
CN105677052A (en) 2016-06-15

Similar Documents

Publication Publication Date Title
CN105677052B (en) Independent keyboard state recognition and coding circuit
CN105468164B (en) Matrix keyboard scanner uni coding circuit
CN105677054B (en) Independent keyboard Scan orientation circuit
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
CN105700697B (en) independent keyboard scanning circuit and method
CN205334379U (en) Stand alone type keyboard state recognition and coding circuit
CN105677050B (en) Independent keyboard scanning circuit and scanning encoding method
CN105700698B (en) Matrix keyboard state recognition and coding circuit
CN205490497U (en) Stand alone type keyboard scan positioning circuit
CN105471439B (en) Independent keyboard scanner uni coding circuit
CN105703780B (en) Matrix keyboard Scan orientation circuit
CN205318332U (en) Discernment of stand alone type key board operation and coding circuit
CN205353947U (en) Stand alone type keyboard scan and coding circuit
CN105680874B (en) Matrix keyboard scanning circuit and scanning encoding method
CN205320063U (en) Matrix type keyboard state recognition and coding circuit
CN205384581U (en) Stand alone type keyboard scanning circuit and coding circuit
CN105700696B (en) Matrix keyboard scanning encoding circuit
CN205485933U (en) Matrix type keyboard scans positioning circuit
CN105680875B (en) Matrix keyboard operation identification and coding circuit
CN205384582U (en) Matrix type keyboard scanning circuit and coding circuit
CN105700695A (en) Matrix keyboard scanning circuit and coding circuit

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
TR01 Transfer of patent right

Effective date of registration: 20191029

Address after: 221300, Fumin Road, Pizhou hi tech Industrial Development Zone, Xuzhou, Jiangsu, 13

Patentee after: Pizhou hi tech Zone City Mineral Research Institute Co Ltd

Address before: 412007 School of industry, research and production, Hunan University of Technology, 88 West Taishan Road, Zhuzhou, Hunan

Patentee before: Hunan University of Technology

TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20210317

Address after: 221300 paoche street, Pizhou City, Xuzhou City, Jiangsu Province

Patentee after: Pizhou Xinsheng Venture Capital Co., Ltd

Address before: 221300 13 Fu Min Road, hi tech Industrial Development Zone, Pizhou, Xuzhou, Jiangsu

Patentee before: Pizhou hi tech Zone City Mineral Research Institute Co.,Ltd.

TR01 Transfer of patent right