Keyboard Interface
R. Theagarajan. ME., MSc., PhD Rtd. Professor in Engineering email: rtheagarajan@yahoo.com rtrajan59@gmail.com
8 x 8
Keyboard Format
C7
C6
C5
C4
C3
C2
C1
C0
8 x 8
Keyboard Format R0
R1 R2 R3 R4 R5 R6 R7 C7
C6
C5
C4
C3
C2
C1
C0
8 x 8
Keyboard Format 470 ohms R0
R1 R2 R3 R4 R5 R6 R7 C7
C6
C5
C4
C3
C2
C1
C0
8 x 8
Keyboard Format 470 ohms R0
R1 R2 R3 R4 R5 R6 R7 Port B C7
C6
C5
C4
C3
C2
C1
C0
8 x 8
Keyboard Format 470 ohms
Port A
R0
R1 R2 R3 R4 R5 R6 R7 Port B C7
C6
C5
C4
C3
C2
C1
C0
8 x 8
Keyboard Format 470 ohms
Port A
R0
R1 R2 R3 R4 R5 R6 R7 D7
D6
D5
D4
D3
D2
IN
D1
D0
Port B
8 x 8
Keyboard Format 470 ohms
Port A
R0
R1 R2 R3 R4
OUT
R5 R6 R7 D7
D6
D5
D4
D3
D2
IN
D1
D0
Port B
8 x 8
Keyboard Format 470 ohms
Port A
R0
R1 R2 R3 R4
OUT
R5 R6 R7 D7
D6
D5
D4
D3
D2
IN
D1
D0
Port B
8 x 8
Keyboard Format 470 ohms
Port A
R0
R1 R2 R3 R4
OUT
R5 R6 R7 D7
D6
D5
D4
D3
D2
IN
D1
D0
Port B
8 x 8
Keyboard Format 470 ohms
Port A
R0
R1 R2 R3 R4
OUT
R5 R6 R7 D7
D6
D5
D4
D3
D2
IN
D1
D0
Port B
8 x 8
Keyboard Format 470 ohms
Port A 7
6
5
4
3
2
1
0
R0
R1 R2 R3 R4
OUT
R5 R6 R7 D7
D6
D5
D4
D3
D2
IN
D1
D0
Port B
8 x 8
Keyboard Format 470 ohms
Port A 7
6
5
4
3
2
1
0
R0
F
E
D
C
B
A
9
8
R1 R2 R3 R4
OUT
R5 R6 R7 D7
D6
D5
D4
D3
D2
IN
D1
D0
Port B
8 x 8
Keyboard Format 470 ohms
Port A 7
6
5
4
3
2
1
0
R0
F
E
D
C
B
A
9
8
R1
17
16
15
14
13
12
11
10
R2 R3 R4
OUT
R5 R6 R7 D7
D6
D5
D4
D3
D2
IN
D1
D0
Port B
8 x 8
Keyboard Format 470 ohms
Port A 7
6
5
4
3
2
1
0
R0
F
E
D
C
B
A
9
8
R1
17
16
15
14
13
12
11
10
R2
1F
1E 1D
1C
1B 1A
19
18
R3 R4
OUT
R5 R6 R7 D7
D6
D5
D4
D3
D2
IN
D1
D0
Port B
8 x 8
Keyboard Format 470 ohms
Port A
OUT
7
6
5
4
3
2
1
0
R0
F
E
D
C
B
A
9
8
R1
17
16
15
14
13
12
11
10
R2
1F
1E 1D
1C
1B 1A
19
18
R3
27
26
25
24
23
22
21
20
R4
2F
2E 2D
2C
2B 2A
29
28
R5 R6 R7
D7
D6
D5
D4
D3
D2
IN
D1
D0
Port B
8 x 8
Keyboard Format 470 ohms
Port A
OUT
7
6
5
4
3
2
1
0
R0
F
E
D
C
B
A
9
8
R1
17
16
15
14
13
12
11
10
R2
1F
1E 1D
1C
1B 1A
19
18
R3
27
26
25
24
23
22
21
20
R4
2F
2E 2D
2C
2B 2A
29
28
R5
37
36
35
34
33
32
31
30
R6
3F
3E 3D
3C
3B 3A
39
38
R7
D7
D6
D4
D3
D1
D0
Port B
D5
D2
IN
8 x 8
Keyboard Format 470 ohms
Port A
OUT
7
6
5
4
3
2
1
0
R0
F
E
D
C
B
A
9
8
R1
17
16
15
14
13
12
11
10
R2
1F
1E 1D
1C
1B 1A
19
18
R3
27
26
25
24
23
22
21
20
R4
2F
2E 2D
2C
2B 2A
29
28
R5
37
36
35
34
33
32
31
30
R6
3F
3E 3D
3C
3B 3A
39
38
R7
0
0
0
0
0
Port B
0
0
0
IN
8 x 8
Keyboard Format 470 ohms
Port A
OUT
1
7
6
5
4
3
2
1
0
R0
0
F
E
D
C
B
A
9
8
R1
0
17
16
15
14
13
12
11
10
R2
0
1F
1E 1D
1C
1B 1A
19
18
R3
0
27
26
25
24
23
22
21
20
R4
0
2F
2E 2D
2C
2B 2A
29
28
R5
0
37
36
35
34
33
32
31
30
R6
0
3F
3E 3D
3C
3B 3A
39
38
R7
D7
D6
D4
D3
D1
D0
Port B
D5
D2
IN
8 x 8
Keyboard Format 470 ohms
Port A
OUT
1
7
6
5
4
3
2
1
0
R0
0
F
E
D
C
B
A
9
8
R1
0
17
16
15
14
13
12
11
10
R2
0
1F
1E 1D
1C
1B 1A
19
18
R3
0
27
26
25
24
23
22
21
20
R4
0
2F
2E 2D
2C
2B 2A
29
28
R5
0
37
36
35
34
33
32
31
30
R6
0
3F
3E 3D
3C
3B 3A
39
38
R7
0
0
0
0
0
Port B
0
0
0
IN
8 x 8
Keyboard Format 470 ohms
Port A
OUT
1
7
6
5
4
3
2
1
0
R0
0
F
E
D
C
B
A
9
8
R1
0
17
16
15
14
13
12
11
10
R2
0
1F
1E 1D
1C
1B 1A
19
18
R3
0
27
26
25
24
23
22
21
20
R4
0
2F
2E 2D
2C
2B 2A
29
28
R5
0
37
36
35
34
33
32
31
30
R6
0
3F
3E 3D
3C
3B 3A
39
38
R7
0
0
0
0
0
Port B
1
0
0
IN
Data received 0010 0000
Data received 0010 0000 Base Counter Column Counter
= 00 = 00
Data received 0010 0000 Base Counter Column Counter
= 00 = 00 Cy
0010 0000
Data received 0010 0000 Base Counter Column Counter
0010 000
= 00 = 00+1 Cy 0
Data received 0010 0000 Base Counter Column Counter
0010 00
= 00 = 00+1+1 Cy 0
Data received 0010 0000 Base Counter Column Counter
0010 0
= 00 = 00+1+1+1 Cy 0
Data received 0010 0000 Base Counter Column Counter
0010
= 00 = 00+1+1+1+1 Cy 0
Data received 0010 0000 Base Counter Column Counter
001
= 00 = 00+1+1+1+1+1 Cy 0
Data received 0010 0000 Base Counter Column Counter
00
= 00 = 00+1+1+1+1+1 = 05 Cy 1
Data received 0010 0000 Base Counter Column Counter
= 00 = 00+1+1+1+1+1 = 05
Key pressed = Base Counter + Column Counter = 00 + 05 Key Code = 05
Base Counter Column Counter
= 08 = 00
8 x 8
Keyboard Format 470 ohms
Port A
OUT
0
7
6
5
4
3
2
1
0
R0
1
F
E
D
C
B
A
9
8
R1
0
17
16
15
14
13
12
11
10
R2
0
1F
1E 1D
1C
1B 1A
19
18
R3
0
27
26
25
24
23
22
21
20
R4
0
2F
2E 2D
2C
2B 2A
29
28
R5
0
37
36
35
34
33
32
31
30
R6
0
3F
3E 3D
3C
3B 3A
39
38
R7
0
0
0
0
0
Port B
0
0
0
IN
8 x 8
Keyboard Format 470 ohms
Port A
OUT
0
7
6
5
4
3
2
1
0
R0
1
F
E
D
C
B
A
9
8
R1
0
17
16
15
14
13
12
11
10
R2
0
1F
1E 1D
1C
1B 1A
19
18
R3
0
27
26
25
24
23
22
21
20
R4
0
2F
2E 2D
2C
2B 2A
29
28
R5
0
37
36
35
34
33
32
31
30
R6
0
3F
3E 3D
3C
3B 3A
39
38
R7
0
0
0
0
0
Port B
0
1
0
IN
Data received 0001 0000 Base Counter Column Counter
= 08 = 00
Data received 0001 0000 Base Counter Column Counter
= 08 = 00 Cy
0001 0000
Data received 0001 0000 Base Counter Column Counter
0001 000
= 08 = 00+1 Cy 0
Data received 0001 0000 Base Counter Column Counter
0001 00
= 08 = 00+1+1 Cy 0
Data received 0001 0000 Base Counter Column Counter
0001 0
= 08 = 00+1+1+1 Cy 0
Data received 0001 0000 Base Counter Column Counter
0001
= 08 = 00+1+1+1+1 Cy 0
Data received 0001 0000 Base Counter Column Counter
000
= 08 = 00+1+1+1+1 Cy 1
Data received 0001 0000 Base Counter Column Counter
000
= 08 = 00+1+1+1+1 = 04 Cy 1
Data received 0001 0000 Base Counter Column Counter Key pressed = = = Key Code =
= 08 = 00+1+1+1+1 = 04
Base Counter + Column Counter 08 + 04 12 0C
8 x 8
Keyboard Format 470 ohms
Port A
OUT
0
7
6
5
4
3
2
1
0
R0
0
F
E
D
C
B
A
9
8
R1
1
17
16
15
14
13
12
11
10
R2
0
1F
1E 1D
1C
1B 1A
19
18
R3
0
27
26
25
24
23
22
21
20
R4
0
2F
2E 2D
2C
2B 2A
29
28
R5
0
37
36
35
34
33
32
31
30
R6
0
3F
3E 3D
3C
3B 3A
39
38
R7 Port B
IN
8 x 8
Keyboard Format 470 ohms
Port A
OUT
0
7
6
5
4
3
2
1
0
R0
0
F
E
D
C
B
A
9
8
R1
1
17
16
15
14
13
12
11
10
R2
0
1F
1E 1D
1C
1B 1A
19
18
R3
0
27
26
25
24
23
22
21
20
R4
0
2F
2E 2D
2C
2B 2A
29
28
R5
0
37
36
35
34
33
32
31
30
R6
0
3F
3E 3D
3C
3B 3A
39
38
R7
0
0
0
0
0
Port B
0
0
1
IN
Keyboard Format
8 x 16 470 ohms
Port A 1
0 0 0 OUT
0 0 0 0
Port B
IN
Port C
IN
8 x 16
Keyboard Format Latch En-1
1 0 0 0 0
0 0 0 En-2
Buffer
Buffer
En-3
Keyboard – mechanical keys spring, vibration Bouncing – 1010101
Keyboard – mechanical keys spring, vibration Bouncing – 1010101 De-bouncing circuit
Keyboard – mechanical keys spring, vibration Bouncing – 1010101 De-bouncing circuit Delay technique
Two Key press
Two Key press N key rollover
Two Key press N key rollover Functional keys
8 x 16
Keyboard Format Latch En-1
En-2
1
F1
0
F2
0
F3
0
F4
0
F5
0
F6
0
F7
0
F8 Buffer
Buffer
En
8 x 16
Keyboard Format Latch En-1
En-2
1
F1
F9
0
F2
F10
0
F3
F11
0
F4
F12
0
F5
PU
0
F6
PD
0
F7
In
0
F8
Dl
Buffer
Buffer
En-3
8 x 16
Keyboard Format Latch En-1
En-2
1
F1
F9
0
F2
F10
0
F3
F11
0
F4
F12
0
F5
PU
0
F6
PD
0
F7
In
0
F8
Dl
1 0 0 0 0 0 0 0
Buffer
En-3
8 x 16
Keyboard Format Latch En-1
En-2
1
F1
F9
0
F2
F10
0
F3
F11
0
F4
F12
0
F5
PU
0
F6
PD
0
F7
In
0
F8
Dl
Buffer
1 0 0 0 0 0 0 0 En-3
Two Key press N key rollover Functional keys Feather touch – Soft keys
Two Key press N key rollover Functional keys Feather touch – Soft keys
Ω Row
Polyester Film Column
Two Key press N key rollover Functional keys Feather touch – Soft keys
Ω Row
Polyester Film Carbon coating Column
Two Key press N key rollover Functional keys Feather touch – Soft keys
Ω Row
Polyester Film Carbon coating Column
Two Key press N key rollover Functional keys Feather touch – Soft keys
Ω Row
Polyester Film Carbon coating Column
Two Key press N key rollover Functional keys Feather touch – Soft keys
Ω Row
Polyester Film Carbon coating Column
Tropical Country
Avoid Plastics Plant a Tree Let us take care of our earth for future generation