From 7a45fd7e6c4c82f25efb72cdcc78b9345205bbfc Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?L=C3=A1szl=C3=B3=20Monda?= Date: Wed, 9 Aug 2017 00:02:44 +0200 Subject: [PATCH] Add uhk_module_id_t. Use UhkModuleId_LeftKeyboardHalf in the Slaves array. Set UHK_MODULE_MAX_COUNT to 3. --- right/src/slave_drivers/uhk_module_driver.h | 8 +++++++- right/src/slave_scheduler.c | 6 +++--- 2 files changed, 10 insertions(+), 4 deletions(-) diff --git a/right/src/slave_drivers/uhk_module_driver.h b/right/src/slave_drivers/uhk_module_driver.h index 5f20d4f..3f90350 100644 --- a/right/src/slave_drivers/uhk_module_driver.h +++ b/right/src/slave_drivers/uhk_module_driver.h @@ -8,12 +8,18 @@ // Macros: - #define UHK_MODULE_MAX_COUNT 1 + #define UHK_MODULE_MAX_COUNT 3 #define KEY_STATE_SIZE (LEFT_KEYBOARD_HALF_KEY_COUNT/8 + 1) #define KEY_STATE_BUFFER_SIZE (KEY_STATE_SIZE + CRC16_HASH_LENGTH) // Typedefs: + typedef enum { + UhkModuleId_LeftKeyboardHalf, + UhkModuleId_LeftAddon, + UhkModuleId_RightAddon, + } uhk_module_id_t; + typedef enum { UhkModulePhase_SendKeystatesRequestCommand, UhkModulePhase_ReceiveKeystates, diff --git a/right/src/slave_scheduler.c b/right/src/slave_scheduler.c index 87ffd1d..4488bd2 100644 --- a/right/src/slave_scheduler.c +++ b/right/src/slave_scheduler.c @@ -12,9 +12,9 @@ uint8_t previousSlaveId = 0; uint8_t currentSlaveId = 0; uhk_slave_t Slaves[] = { - { .initializer = UhkModuleSlaveDriver_Init, .updater = UhkModuleSlaveDriver_Update, .perDriverId = 0 }, - { .initializer = LedSlaveDriver_Init, .updater = LedSlaveDriver_Update, .perDriverId = LedDriverId_Right }, - { .initializer = LedSlaveDriver_Init, .updater = LedSlaveDriver_Update, .perDriverId = LedDriverId_Left }, + { .initializer = UhkModuleSlaveDriver_Init, .updater = UhkModuleSlaveDriver_Update, .perDriverId = UhkModuleId_LeftKeyboardHalf }, + { .initializer = LedSlaveDriver_Init, .updater = LedSlaveDriver_Update, .perDriverId = LedDriverId_Right }, + { .initializer = LedSlaveDriver_Init, .updater = LedSlaveDriver_Update, .perDriverId = LedDriverId_Left }, }; static void bridgeProtocolCallback(I2C_Type *base, i2c_master_handle_t *handle, status_t status, void *userData)