keyboard/annepro2: typo fix

This commit is contained in:
codetector
2021-08-29 13:43:09 +02:00
committed by bwisn
parent 87b1e2c69a
commit 5712e04ec2
6 changed files with 77 additions and 2 deletions
+40
View File
@@ -1,6 +1,7 @@
#include "ch.h"
#include "hal.h"
#include "annepro2.h"
#include "qmk_ap2_led.h"
/**
* @brief Driver default configuration.
@@ -13,6 +14,14 @@ static uint8_t ledMcuWakeup[11] = {
0x7b, 0x10, 0x43, 0x10, 0x03, 0, 0, 0x7d, 0x02, 0x01, 0x02
};
uint16_t annepro2LedMatrix[MATRIX_ROWS * MATRIX_COLS] = {
0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,
};
void OVERRIDE matrix_init_kb(void) {
// Start uart
sdStart(&SD0, &ledUartConfig);
@@ -21,6 +30,37 @@ void OVERRIDE matrix_init_kb(void) {
matrix_init_user();
}
void annepro2LedDisable(void)
{
sdPut(&SD0, CMD_LED_OFF);
}
void annepro2LedEnable(void)
{
sdPut(&SD0, CMD_LED_ON);
}
void annepro2LedUpdate(uint8_t row, uint8_t col)
{
sdPut(&SD0, CMD_LED_SET);
sdPut(&SD0, row);
sdPut(&SD0, col);
sdWrite(&SD0, (uint8_t *)&annepro2LedMatrix[row * MATRIX_COLS + col], sizeof(uint16_t));
}
void annepro2LedUpdateRow(uint8_t row)
{
sdPut(&SD0, CMD_LED_SET_ROW);
sdPut(&SD0, row);
sdWrite(&SD0, (uint8_t *)&annepro2LedMatrix[row * MATRIX_COLS], sizeof(uint16_t) * MATRIX_COLS);
}
bool OVERRIDE led_update_kb(led_t status) {
annepro2LedMatrix[2 * MATRIX_COLS] = status.caps_lock ? 0x4FF : 0;
annepro2LedUpdate(2, 0);
return led_update_user(status);
}
bool OVERRIDE process_record_kb(uint16_t keycode, keyrecord_t *record) {
return process_record_user(keycode, record);
}
+7
View File
@@ -20,3 +20,10 @@
#include "quantum.h"
#define OVERRIDE __attribute__ ((noinline))
extern uint16_t annepro2LedMatrix[MATRIX_ROWS * MATRIX_COLS];
void annepro2LedDisable(void);
void annepro2LedEnable(void);
void annepro2LedUpdate(uint8_t row, uint8_t col);
void annepro2LedUpdateRow(uint8_t row);
+1
View File
@@ -35,3 +35,4 @@ COMMAND_ENABLE = yes
RAW_ENABLE = yes
MIDI_ENABLE = no
VIRTSER_ENABLE = no
COMBO_ENABLE = no
+1
View File
@@ -35,3 +35,4 @@ COMMAND_ENABLE = yes
RAW_ENABLE = yes
MIDI_ENABLE = no
VIRTSER_ENABLE = no
COMBO_ENABLE = yes
+22 -2
View File
@@ -7,6 +7,11 @@ enum anne_pro_layers {
_FN_LAYER,
};
enum custom_keys {
KC_AP_LED_ON = SAFE_RANGE,
KC_AP_LED_OFF,
};
const uint16_t keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
[_BASE_LAYER] = KEYMAP( /* Base */
KC_GRAVE, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC,
@@ -24,8 +29,8 @@ const uint16_t keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
),
[_FN_LAYER] = KEYMAP( /* Base */
KC_TRNS, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_TRNS,
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_HOME, KC_END, KC_TRNS,
KC_CAPS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_LEFT, KC_DOWN, KC_UP, KC_RIGHT, KC_PGUP, KC_PGDN, KC_TRNS,
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_HOME, KC_END, KC_AP_LED_ON,
KC_CAPS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_LEFT, KC_DOWN, KC_UP, KC_RIGHT, KC_PGUP, KC_PGDN, KC_AP_LED_OFF,
KC_TRNS,KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_INSERT, KC_DELETE, KC_TRNS,
KC_TRNS,KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS
),
@@ -45,6 +50,21 @@ layer_state_t layer_state_set_user(layer_state_t layer) {
return layer;
}
/*!
* @returns false processing for this keycode has been completed.
*/
bool process_record_user(uint16_t keycode, keyrecord_t *record) {
switch (keycode) {
case KC_AP_LED_OFF:
if (record->event.pressed)
annepro2LedDisable();
return false;
case KC_AP_LED_ON:
if (record->event.pressed)
annepro2LedEnable();
return false;
default:
break;
}
return true;
}
+6
View File
@@ -0,0 +1,6 @@
#pragma once
#define CMD_LED_ON 0x1
#define CMD_LED_OFF 0x2
#define CMD_LED_SET 0x3
#define CMD_LED_SET_ROW 0x4