PC Keyboard -> AVR ATTiny26 Interface
This keyboard decoder takes all of the overhead associated with scancode to ASCII conversion and places it in the interface. This frees the 6502 to handle more important operations. The simple circuit consists of an 6-pin PS2 keyboard socket, an Atmel ATTiny26 microcontroller, a 14 pin header, and two optional resistors!
Port A is used as an 8-bit data bus. PB5 is an data ready output that tells the host a key has been pressed. PB6 is used as a data acknowlege input to tell the AVR the data was taken.
Here's the schematic:
![]() (Plug) |
![]() (Socket) |
5-pin DIN (AT/XT): 1 - Clock 2 - Data 3 - No Connection 4 - Ground 5 - Vcc (+5V) |
![]() (Plug) |
![]() (Socket) |
6-pin Mini-DIN (PS/2): 1 - Data 2 - No Connection 3 - Ground 4 - Vcc (+5V) 5 - Clock 6 - No Connection |
The support file that includes ExpressPCB schematic and firmware source and binary files can be downloaded here -> avrkybd.zip
Home |