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];
|
uint8_t commandId = SlaveRxBuffer[0];
|
||||||
switch (commandId) {
|
switch (commandId) {
|
||||||
case SlaveCommand_GetKeyStates:
|
case SlaveCommand_GetKeyStates:
|
||||||
SlaveTxSize = KEYBOARD_MATRIX_COLS_NUM*KEYBOARD_MATRIX_ROWS_NUM;
|
SlaveTxSize = KEY_STATE_BUFFER_SIZE;
|
||||||
BoolBytesToBits(keyMatrix.keyStates, SlaveTxBuffer, SlaveTxSize);
|
BoolBytesToBits(keyMatrix.keyStates, SlaveTxBuffer, LEFT_KEYBOARD_HALF_KEY_COUNT);
|
||||||
// memcpy(SlaveTxBuffer, keyMatrix.keyStates, SlaveTxSize);
|
|
||||||
break;
|
break;
|
||||||
case SlaveCommand_SetTestLed:
|
case SlaveCommand_SetTestLed:
|
||||||
SlaveTxSize = 0;
|
SlaveTxSize = 0;
|
||||||
|
|||||||
@@ -13,6 +13,9 @@
|
|||||||
#define PROTOCOL_RESPONSE_SUCCESS 0
|
#define PROTOCOL_RESPONSE_SUCCESS 0
|
||||||
#define PROTOCOL_RESPONSE_GENERIC_ERROR 1
|
#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:
|
// Variables:
|
||||||
|
|
||||||
uint8_t SlaveRxBuffer[SLAVE_RX_BUFFER_SIZE];
|
uint8_t SlaveRxBuffer[SLAVE_RX_BUFFER_SIZE];
|
||||||
|
|||||||
Reference in New Issue
Block a user