浏览代码

Merge branch 'u2_fix'

tmk 10 年之前
父节点
当前提交
cc5693e0f1
共有 3 个文件被更改,包括 27 次插入2 次删除
  1. 25 0
      protocol/pjrc/MEMO.txt
  2. 1 1
      protocol/pjrc/usb.h
  3. 1 1
      protocol/pjrc/usb_mouse.h

+ 25 - 0
protocol/pjrc/MEMO.txt

@@ -0,0 +1,25 @@
+Endpoint configuration
+----------------------
+0   Control endpoint
+1   keyboard
+2   mouse
+3   debug
+4   extra key(consumer/system)
+5   nkro keyboard(supported only on ATmega32U4/16U4 and AT90USB64/128)
+
+
+ATmega32U4/16U4, AT90USB64/128
+• Endpoint 0:programmable size FIFO up to 64 bytes, default control endpoint
+• Endpoints 1 programmable size FIFO up to 256 bytes in ping-pong mode.
+• Endpoints 2 to 6: programmable size FIFO up to 64 bytes in ping-pong mode.
+
+AT90USB82/162, ATmega8U2/16U2/32U2
+• Endpoint 0:programmable size FIFO up to 64 bytes, default control endpoint
+• Endpoints 1 and 2: programmable size FIFO up to 64 bytes.
+• Endpoints 3 and 4: programmable size FIFO up to 64 bytes with ping-pong mode.
+
+ping-pong mode means double buffer feature.
+
+
+NOTE: ATmega8U2/16U2/32U2 is not supported with PJRC stack at this time.
+TODO: Macro definition for ATmega8U2/16U2/32U2 in usb.h

+ 1 - 1
protocol/pjrc/usb.h

@@ -122,7 +122,7 @@ void usb_remote_wakeup(void);
 #define KBD_INTERFACE		0
 #define KBD_ENDPOINT		1
 #define KBD_SIZE		8
-#define KBD_BUFFER		EP_DOUBLE_BUFFER
+#define KBD_BUFFER		EP_SINGLE_BUFFER
 #define KBD_REPORT_KEYS		(KBD_SIZE - 2)
 
 // secondary keyboard

+ 1 - 1
protocol/pjrc/usb_mouse.h

@@ -32,7 +32,7 @@
 #define MOUSE_INTERFACE		1
 #define MOUSE_ENDPOINT		2
 #define MOUSE_SIZE		8
-#define MOUSE_BUFFER		EP_DOUBLE_BUFFER
+#define MOUSE_BUFFER		EP_SINGLE_BUFFER
 
 #define MOUSE_BTN1 (1<<0)
 #define MOUSE_BTN2 (1<<1)