summaryrefslogtreecommitdiff
path: root/ps2_vusb/config.h
diff options
context:
space:
mode:
authortmk2011-02-07 14:59:07 +0900
committertmk2011-02-22 03:08:54 +0900
commit04f351b80279c55dfc6c8028f95eab7e01d50c84 (patch)
tree09e211eb1d1384d04374069e7e668b37a2f54bfd /ps2_vusb/config.h
parent0632618d29dfb30c76b4e7c310dc7bee36919f63 (diff)
PS/2 library receives data partially by interrupt
Diffstat (limited to 'ps2_vusb/config.h')
-rw-r--r--ps2_vusb/config.h28
1 files changed, 26 insertions, 2 deletions
diff --git a/ps2_vusb/config.h b/ps2_vusb/config.h
index 1d2a28307..639a1ac71 100644
--- a/ps2_vusb/config.h
+++ b/ps2_vusb/config.h
@@ -23,14 +23,38 @@
# define MOUSEKEY_DELAY_TIME 255
#endif
-/* PS/2 mouse */
+/* PS/2 lines */
#define PS2_CLOCK_PORT PORTD
#define PS2_CLOCK_PIN PIND
#define PS2_CLOCK_DDR DDRD
-#define PS2_CLOCK_BIT 6
+#define PS2_CLOCK_BIT 3
#define PS2_DATA_PORT PORTD
#define PS2_DATA_PIN PIND
#define PS2_DATA_DDR DDRD
#define PS2_DATA_BIT 7
+/* External interrupt for PS/2 clock line (optional) */
+#define PS2_INT_ENABLE() do { \
+ EIMSK |= (1<<INT1); \
+ EICRA |= ((1<<ISC11) | (0<<ISC10)); \
+ EIFR |= (1<<INTF1); \
+} while (0)
+#define PS2_INT_DISABLE() do { \
+ EIMSK &= ~(1<<INT1); \
+} while (0)
+#define PS2_INT_VECT INT1_vect
+
+/* Pin Change interrupt for PS/2 clock line (optional)
+#define PS2_INT_ENABLE() do { \
+ PCMSK2 |= (1<<PCINT22); \
+ PCICR |= (1<<PCIE2); \
+ PCIFR |= (1<<PCIF2); \
+} while (0)
+#define PS2_INT_DISABLE() do { \
+ PCMSK2 &= ~(1<<PCINT22); \
+ PCICR &= ~(1<<PCIE); \
+} while (0)
+#define PS2_INT_VECT PCINT2_vect
+*/
+
#endif