Fix endpoint buffer setting for AT90USB82/162.

master
tmk 2012-11-22 10:06:02 +09:00
parent ed52ebb987
commit b92ea1f985
3 changed files with 27 additions and 2 deletions

View File

@ -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

View File

@ -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

View File

@ -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)