Make the left half send only as many bytes of key state information as required.
This commit is contained in:
@@ -33,9 +33,8 @@ void SlaveProtocolHandler(void)
|
||||
uint8_t commandId = SlaveRxBuffer[0];
|
||||
switch (commandId) {
|
||||
case SlaveCommand_GetKeyStates:
|
||||
SlaveTxSize = KEYBOARD_MATRIX_COLS_NUM*KEYBOARD_MATRIX_ROWS_NUM;
|
||||
BoolBytesToBits(keyMatrix.keyStates, SlaveTxBuffer, SlaveTxSize);
|
||||
// memcpy(SlaveTxBuffer, keyMatrix.keyStates, SlaveTxSize);
|
||||
SlaveTxSize = KEY_STATE_BUFFER_SIZE;
|
||||
BoolBytesToBits(keyMatrix.keyStates, SlaveTxBuffer, LEFT_KEYBOARD_HALF_KEY_COUNT);
|
||||
break;
|
||||
case SlaveCommand_SetTestLed:
|
||||
SlaveTxSize = 0;
|
||||
|
||||
@@ -13,6 +13,9 @@
|
||||
#define PROTOCOL_RESPONSE_SUCCESS 0
|
||||
#define PROTOCOL_RESPONSE_GENERIC_ERROR 1
|
||||
|
||||
#define LEFT_KEYBOARD_HALF_KEY_COUNT (KEYBOARD_MATRIX_COLS_NUM*KEYBOARD_MATRIX_ROWS_NUM)
|
||||
#define KEY_STATE_BUFFER_SIZE (LEFT_KEYBOARD_HALF_KEY_COUNT/8 + 1)
|
||||
|
||||
// Variables:
|
||||
|
||||
uint8_t SlaveRxBuffer[SLAVE_RX_BUFFER_SIZE];
|
||||
|
||||
Reference in New Issue
Block a user