From fb8d23c60c757d5d9c2270cb0123a53be2049a28 Mon Sep 17 00:00:00 2001 From: tmk Date: Mon, 21 Feb 2011 15:43:17 +0900 Subject: integrate V-USB support into ps2_usb --- ps2_usb/config_vusb.h | 116 ++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 116 insertions(+) create mode 100644 ps2_usb/config_vusb.h (limited to 'ps2_usb/config_vusb.h') diff --git a/ps2_usb/config_vusb.h b/ps2_usb/config_vusb.h new file mode 100644 index 000000000..0463f68ba --- /dev/null +++ b/ps2_usb/config_vusb.h @@ -0,0 +1,116 @@ +#ifndef CONFIG_H +#define CONFIG_H + + +#define VENDOR_ID 0xFEED +#define PRODUCT_ID 0x2233 +// TODO: share these strings with usbconfig.h +// Edit usbconfig.h to change these. +#define MANUFACTURER t.m.k. +#define PRODUCT PS/2 keyboard converter +#define DESCRIPTION convert PS/2 keyboard to USB + + +/* matrix size */ +#define MATRIX_ROWS 32 // keycode bit: 3-0 +#define MATRIX_COLS 8 // keycode bit: 6-4 + + +/* key combination for command */ +#define IS_COMMAND() ( \ + keyboard_report->mods == (BIT_LSHIFT | BIT_RSHIFT) || \ + keyboard_report->mods == (BIT_LCTRL | BIT_RSHIFT) \ +) + + +/* mouse keys */ +#ifdef MOUSEKEY_ENABLE +# define MOUSEKEY_DELAY_TIME 255 +#endif + + +/* PS/2 lines */ +#define PS2_CLOCK_PORT PORTD +#define PS2_CLOCK_PIN PIND +#define PS2_CLOCK_DDR DDRD +#define PS2_CLOCK_BIT 4 +#define PS2_DATA_PORT PORTD +#define PS2_DATA_PIN PIND +#define PS2_DATA_DDR DDRD +#define PS2_DATA_BIT 0 + + +// Synchronous USART is used to receive data from keyboard. +// Use RXD pin for PS/2 DATA line and XCK for PS/2 CLOCK. +// NOTE: This is recomended strongly if you use V-USB library. +#define PS2_USE_USART + +// External or Pin Change Interrupt is used to receive data from keyboard. +// Use INT1 or PCINTxx for PS/2 CLOCK line. see below. +//#define PS2_USE_INT + + +#ifdef PS2_USE_USART +// synchronous, odd parity, 1-bit stop, 8-bit data, sample at falling edge +// set DDR of CLOCK as input to be slave +#define PS2_USART_INIT() do { \ + PS2_CLOCK_DDR &= ~(1<