mirror of
https://github.com/qmk/qmk_firmware.git
synced 2024-11-25 12:46:41 +00:00
Refactor to use led config - Part 2 (#10906)
* Refactor to use led config * Refactor to use led config * Refactor to use led config
This commit is contained in:
parent
3c156e130b
commit
adfd34c451
@ -47,7 +47,12 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
/* COL2ROW or ROW2COL */
|
||||
#define DIODE_DIRECTION COL2ROW
|
||||
|
||||
|
||||
#define LED_NUM_LOCK_PIN B7
|
||||
#define LED_CAPS_LOCK_PIN C6
|
||||
#define LED_SCROLL_LOCK_PIN C5
|
||||
#define LED_PIN_ON_STATE 0
|
||||
|
||||
// #define BACKLIGHT_PIN B7
|
||||
// #define BACKLIGHT_BREATHING
|
||||
// #define BACKLIGHT_LEVELS 3
|
||||
|
@ -1,51 +1 @@
|
||||
#include "kitten_paw.h"
|
||||
|
||||
void matrix_init_kb(void) {
|
||||
// put your keyboard start-up code here
|
||||
// runs once when the firmware starts up
|
||||
|
||||
matrix_init_user();
|
||||
}
|
||||
|
||||
void matrix_scan_kb(void) {
|
||||
// put your looping keyboard code here
|
||||
// runs every cycle (a lot)
|
||||
|
||||
matrix_scan_user();
|
||||
}
|
||||
|
||||
__attribute__ ((weak))
|
||||
void matrix_init_user(void) {
|
||||
}
|
||||
|
||||
__attribute__ ((weak))
|
||||
void matrix_scan_user(void) {
|
||||
}
|
||||
|
||||
bool process_record_kb(uint16_t keycode, keyrecord_t *record) {
|
||||
// put your per-action keyboard code here
|
||||
// runs for every action, just before processing by the firmware
|
||||
|
||||
return process_record_user(keycode, record);
|
||||
}
|
||||
|
||||
void led_set_kb(uint8_t usb_led) {
|
||||
// put your keyboard LED indicator (ex: Caps Lock LED) toggling code here
|
||||
CONFIG_LED_IO;
|
||||
CONFIG_LED_IO;
|
||||
print_dec(usb_led);
|
||||
if (usb_led & (1<<USB_LED_CAPS_LOCK))
|
||||
USB_LED_CAPS_LOCK_ON;
|
||||
else
|
||||
USB_LED_CAPS_LOCK_OFF;
|
||||
|
||||
if (usb_led & (1<<USB_LED_NUM_LOCK))
|
||||
USB_LED_NUM_LOCK_ON;
|
||||
else
|
||||
USB_LED_NUM_LOCK_OFF;
|
||||
if (usb_led & (1<<USB_LED_SCROLL_LOCK))
|
||||
USB_LED_SCROLL_LOCK_ON;
|
||||
else
|
||||
USB_LED_SCROLL_LOCK_OFF;
|
||||
led_set_user(usb_led);
|
||||
}
|
||||
|
@ -3,17 +3,6 @@
|
||||
|
||||
#include "quantum.h"
|
||||
|
||||
#define CONFIG_LED_IO \
|
||||
DDRB |= (1<<7); \
|
||||
DDRC |= (1<<5) | (1<<6);
|
||||
|
||||
#define USB_LED_CAPS_LOCK_ON PORTC &= ~(1<<6)
|
||||
#define USB_LED_CAPS_LOCK_OFF PORTC |= (1<<6)
|
||||
#define USB_LED_NUM_LOCK_ON PORTB &= ~(1<<7)
|
||||
#define USB_LED_NUM_LOCK_OFF PORTB |= (1<<7)
|
||||
#define USB_LED_SCROLL_LOCK_ON PORTC &= ~(1<<5)
|
||||
#define USB_LED_SCROLL_LOCK_OFF PORTC |= (1<<5)
|
||||
|
||||
// This a shortcut to help you visually see your layout.
|
||||
// The first section contains all of the arguements
|
||||
// The second converts the arguments into a two-dimensional array
|
||||
|
@ -44,6 +44,11 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
#define UNUSED_PINS { B0, C4, D3 }
|
||||
|
||||
#define LED_NUM_LOCK_PIN C5
|
||||
#define LED_CAPS_LOCK_PIN C6
|
||||
#define LED_SCROLL_LOCK_PIN B7
|
||||
#define LED_PIN_ON_STATE 0
|
||||
|
||||
/* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */
|
||||
#define DEBOUNCE 5
|
||||
|
||||
|
@ -1,63 +1 @@
|
||||
#include "tiger_lily.h"
|
||||
|
||||
void matrix_init_kb(void) {
|
||||
// put your keyboard start-up code here
|
||||
// runs once when the firmware starts up
|
||||
|
||||
matrix_init_user();
|
||||
}
|
||||
|
||||
void matrix_scan_kb(void) {
|
||||
// put your looping keyboard code here
|
||||
// runs every cycle (a lot)
|
||||
|
||||
matrix_scan_user();
|
||||
}
|
||||
|
||||
bool process_record_kb(uint16_t keycode, keyrecord_t *record) {
|
||||
// put your per-action keyboard code here
|
||||
// runs for every action, just before processing by the firmware
|
||||
|
||||
return process_record_user(keycode, record);
|
||||
}
|
||||
|
||||
void led_set_kb(uint8_t usb_led) {
|
||||
DDRB |= (1<<7);
|
||||
DDRC |= (1<<5) | (1<<6);
|
||||
|
||||
print_dec(usb_led);
|
||||
|
||||
if (usb_led & (1<<USB_LED_NUM_LOCK))
|
||||
PORTC &= ~(1<<5);
|
||||
else
|
||||
PORTC |= (1<<5);
|
||||
|
||||
if (usb_led & (1<<USB_LED_SCROLL_LOCK))
|
||||
PORTB &= ~(1<<7);
|
||||
else
|
||||
PORTB |= (1<<7);
|
||||
|
||||
if (usb_led & (1<<USB_LED_CAPS_LOCK))
|
||||
PORTC &= ~(1<<6);
|
||||
else
|
||||
PORTC |= (1<<6);
|
||||
|
||||
led_set_user(usb_led);
|
||||
}
|
||||
|
||||
__attribute__ ((weak))
|
||||
void matrix_init_user(void) {
|
||||
}
|
||||
|
||||
__attribute__ ((weak))
|
||||
void matrix_scan_user(void) {
|
||||
}
|
||||
|
||||
__attribute__ ((weak))
|
||||
bool process_record_user(uint16_t keycode, keyrecord_t *record) {
|
||||
return true;
|
||||
}
|
||||
|
||||
__attribute__ ((weak))
|
||||
void led_set_user(uint8_t usb_led) {
|
||||
}
|
@ -35,6 +35,11 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
/* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */
|
||||
#define DEBOUNCE 5
|
||||
|
||||
#define LED_NUM_LOCK_PIN B7
|
||||
#define LED_CAPS_LOCK_PIN C5
|
||||
#define LED_SCROLL_LOCK_PIN C6
|
||||
#define LED_PIN_ON_STATE 0
|
||||
|
||||
/* define if matrix has ghost (lacks anti-ghosting diodes) */
|
||||
//#define MATRIX_HAS_GHOST
|
||||
|
||||
|
@ -14,57 +14,3 @@
|
||||
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
#include "unloved_bastard.h"
|
||||
|
||||
void matrix_init_kb(void) {
|
||||
// put your keyboard start-up code here
|
||||
// runs once when the firmware starts up
|
||||
led_init_ports();
|
||||
matrix_init_user();
|
||||
}
|
||||
|
||||
void matrix_scan_kb(void) {
|
||||
// put your looping keyboard code here
|
||||
// runs every cycle (a lot)
|
||||
|
||||
matrix_scan_user();
|
||||
}
|
||||
|
||||
bool process_record_kb(uint16_t keycode, keyrecord_t *record) {
|
||||
// put your per-action keyboard code here
|
||||
// runs for every action, just before processing by the firmware
|
||||
return process_record_user(keycode, record);
|
||||
}
|
||||
|
||||
// C5 left
|
||||
// C6 middle led
|
||||
// B7 right led
|
||||
void led_init_ports(void) {
|
||||
DDRB |= (1<<7);
|
||||
DDRC |= (1<<5);
|
||||
DDRC |= (1<<6);
|
||||
|
||||
PORTB |= (1<<7);
|
||||
PORTC |= (1<<5);
|
||||
PORTC |= (1<<6);
|
||||
}
|
||||
|
||||
|
||||
void led_set_kb(uint8_t usb_led) {
|
||||
|
||||
if (usb_led & (1<<USB_LED_CAPS_LOCK))
|
||||
PORTC &= ~(1<<5);
|
||||
else
|
||||
PORTC |= (1<<5);
|
||||
|
||||
if (usb_led & (1<<USB_LED_NUM_LOCK))
|
||||
PORTB &= ~(1<<7);
|
||||
else
|
||||
PORTB |= (1<<7);
|
||||
|
||||
if (usb_led & (1<<USB_LED_SCROLL_LOCK))
|
||||
PORTC &= ~(1<<6);
|
||||
else
|
||||
PORTC |= (1<<6);
|
||||
|
||||
led_set_user(usb_led);
|
||||
}
|
||||
|
@ -48,10 +48,8 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
/* COL2ROW, ROW2COL*/
|
||||
#define DIODE_DIRECTION COL2ROW
|
||||
|
||||
/*
|
||||
* Split Keyboard specific options, make sure you have 'SPLIT_KEYBOARD = yes' in your rules.mk, and define SOFT_SERIAL_PIN.
|
||||
*/
|
||||
#define SOFT_SERIAL_PIN D0 // or D1, D2, D3, E6
|
||||
#define LED_CAPS_LOCK_PIN E6
|
||||
#define LED_PIN_ON_STATE 0
|
||||
|
||||
#define BACKLIGHT_PIN B7
|
||||
#define BACKLIGHT_BREATHING
|
||||
|
@ -14,36 +14,3 @@
|
||||
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
#include "space65.h"
|
||||
|
||||
void matrix_init_kb(void) {
|
||||
// put your keyboard start-up code here
|
||||
// runs once when the firmware starts up
|
||||
|
||||
setPinOutput(E6);
|
||||
matrix_init_user();
|
||||
}
|
||||
|
||||
void matrix_scan_kb(void) {
|
||||
// put your looping keyboard code here
|
||||
// runs every cycle (a lot)
|
||||
|
||||
matrix_scan_user();
|
||||
}
|
||||
|
||||
bool process_record_kb(uint16_t keycode, keyrecord_t *record) {
|
||||
// put your per-action keyboard code here
|
||||
// runs for every action, just before processing by the firmware
|
||||
|
||||
return process_record_user(keycode, record);
|
||||
}
|
||||
|
||||
void led_set_kb(uint8_t usb_led) {
|
||||
// put your keyboard LED indicator (ex: Caps Lock LED) toggling code here
|
||||
if (IS_LED_ON(usb_led, USB_LED_CAPS_LOCK)) {
|
||||
writePinLow(E6);
|
||||
} else {
|
||||
writePinHigh(E6);
|
||||
}
|
||||
|
||||
led_set_user(usb_led);
|
||||
}
|
||||
|
@ -46,6 +46,11 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
#define DIODE_DIRECTION COL2ROW
|
||||
|
||||
#define LED_NUM_LOCK_PIN C6
|
||||
#define LED_CAPS_LOCK_PIN C7
|
||||
#define LED_SCROLL_LOCK_PIN F7
|
||||
#define LED_PIN_ON_STATE 0
|
||||
|
||||
#define RGB_DI_PIN E2
|
||||
#ifdef RGB_DI_PIN
|
||||
#define RGBLED_NUM 22
|
||||
|
@ -14,58 +14,3 @@
|
||||
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
#include "hotswap.h"
|
||||
|
||||
// Optional override functions below.
|
||||
// You can leave any or all of these undefined.
|
||||
// These are only required if you want to perform custom actions.
|
||||
|
||||
|
||||
void matrix_init_kb(void) {
|
||||
// put your keyboard start-up code here
|
||||
// runs once when the firmware starts up
|
||||
|
||||
setPinOutput(C6);
|
||||
setPinOutput(C7);
|
||||
setPinOutput(F7);
|
||||
|
||||
matrix_init_user();
|
||||
}
|
||||
|
||||
void matrix_scan_kb(void) {
|
||||
// put your looping keyboard code here
|
||||
// runs every cycle (a lot)
|
||||
|
||||
matrix_scan_user();
|
||||
}
|
||||
|
||||
bool process_record_kb(uint16_t keycode, keyrecord_t *record) {
|
||||
// put your per-action keyboard code here
|
||||
// runs for every action, just before processing by the firmware
|
||||
|
||||
return process_record_user(keycode, record);
|
||||
}
|
||||
|
||||
void led_set_kb(uint8_t usb_led) {
|
||||
// put your keyboard LED indicator (ex: Caps Lock LED) toggling code here
|
||||
|
||||
if (IS_LED_ON(usb_led, USB_LED_CAPS_LOCK)) {
|
||||
writePinLow(C7);
|
||||
} else {
|
||||
writePinHigh(C7);
|
||||
}
|
||||
|
||||
if (IS_LED_ON(usb_led, USB_LED_NUM_LOCK)) {
|
||||
writePinLow(C6);
|
||||
} else {
|
||||
writePinHigh(C6);
|
||||
}
|
||||
|
||||
if (IS_LED_ON(usb_led, USB_LED_SCROLL_LOCK)) {
|
||||
writePinLow(F7);
|
||||
} else {
|
||||
writePinHigh(F7);
|
||||
}
|
||||
|
||||
led_set_user(usb_led);
|
||||
}
|
||||
|
||||
|
@ -47,6 +47,11 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
/* COL2ROW, ROW2COL*/
|
||||
#define DIODE_DIRECTION COL2ROW
|
||||
|
||||
#define LED_NUM_LOCK_PIN B2
|
||||
#define LED_CAPS_LOCK_PIN B0
|
||||
#define LED_SCROLL_LOCK_PIN B1
|
||||
|
||||
#define BACKLIGHT_PIN B6
|
||||
#ifdef BACKLIGHT_PIN
|
||||
#define BACKLIGHT_LEVELS 3
|
||||
|
@ -16,57 +16,3 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
#include "kbd19x.h"
|
||||
|
||||
extern inline void kbd19x_caps_led_on(void);
|
||||
extern inline void kbd19x_caps_led_off(void);
|
||||
|
||||
extern inline void kbd19x_sclk_led_on(void);
|
||||
extern inline void kbd19x_sclk_led_off(void);
|
||||
|
||||
extern inline void kbd19x_nmlk_led_on(void);
|
||||
extern inline void kbd19x_nmlk_led_off(void);
|
||||
|
||||
void matrix_init_kb(void) {
|
||||
// put your keyboard start-up code here
|
||||
// runs once when the firmware starts up
|
||||
|
||||
matrix_init_user();
|
||||
}
|
||||
|
||||
void matrix_scan_kb(void) {
|
||||
// put your looping keyboard code here
|
||||
// runs every cycle (a lot)
|
||||
|
||||
matrix_scan_user();
|
||||
}
|
||||
|
||||
bool process_record_kb(uint16_t keycode, keyrecord_t *record) {
|
||||
// put your per-action keyboard code here
|
||||
// runs for every action, just before processing by the firmware
|
||||
|
||||
return process_record_user(keycode, record);
|
||||
}
|
||||
|
||||
void led_set_kb(uint8_t usb_led) {
|
||||
// put your keyboard LED indicator (ex: Caps Lock LED) toggling code here
|
||||
|
||||
if (usb_led & (1<<USB_LED_NUM_LOCK)) {
|
||||
kbd19x_nmlk_led_on();
|
||||
} else {
|
||||
kbd19x_nmlk_led_off();
|
||||
}
|
||||
|
||||
if (usb_led & (1<<USB_LED_CAPS_LOCK)) {
|
||||
kbd19x_caps_led_on();
|
||||
} else {
|
||||
kbd19x_caps_led_off();
|
||||
}
|
||||
|
||||
if (usb_led & (1<<USB_LED_SCROLL_LOCK)) {
|
||||
kbd19x_sclk_led_on();
|
||||
} else {
|
||||
kbd19x_sclk_led_off();
|
||||
}
|
||||
|
||||
led_set_user(usb_led);
|
||||
}
|
||||
|
@ -20,14 +20,14 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
#include "quantum.h"
|
||||
#include "led.h"
|
||||
|
||||
inline void kbd19x_caps_led_on(void) { DDRB |= (1<<0); PORTB &= ~(1<<0); }
|
||||
inline void kbd19x_caps_led_off(void) { DDRB &= ~(1<<0); PORTB &= ~(1<<0); }
|
||||
inline void kbd19x_caps_led_on(void) { writePinHigh(LED_CAPS_LOCK_PIN); }
|
||||
inline void kbd19x_caps_led_off(void) { writePinLow(LED_CAPS_LOCK_PIN); }
|
||||
|
||||
inline void kbd19x_sclk_led_on(void) { DDRB |= (1<<1); PORTB &= ~(1<<1); }
|
||||
inline void kbd19x_sclk_led_off(void) { DDRB &= ~(1<<1); PORTB &= ~(1<<1); }
|
||||
inline void kbd19x_sclk_led_on(void) { writePinHigh(LED_SCROLL_LOCK_PIN); }
|
||||
inline void kbd19x_sclk_led_off(void) { writePinLow(LED_SCROLL_LOCK_PIN); }
|
||||
|
||||
inline void kbd19x_nmlk_led_on(void) { DDRB |= (1<<2); PORTB &= ~(1<<2); }
|
||||
inline void kbd19x_nmlk_led_off(void) { DDRB &= ~(1<<2); PORTB &= ~(1<<2); }
|
||||
inline void kbd19x_nmlk_led_on(void) { writePinHigh(LED_NUM_LOCK_PIN); }
|
||||
inline void kbd19x_nmlk_led_off(void) { writePinLow(LED_NUM_LOCK_PIN); }
|
||||
|
||||
// readability
|
||||
#define XXX KC_NO
|
||||
|
@ -48,6 +48,8 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
/* COL2ROW, ROW2COL*/
|
||||
#define DIODE_DIRECTION COL2ROW
|
||||
|
||||
#define LED_CAPS_LOCK_PIN B2
|
||||
|
||||
#define BACKLIGHT_PIN B6
|
||||
#ifdef BACKLIGHT_PIN
|
||||
#define BACKLIGHT_BREATHING
|
||||
|
@ -14,38 +14,3 @@
|
||||
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
#include "rev1.h"
|
||||
|
||||
void matrix_init_kb(void) {
|
||||
// put your keyboard start-up code here
|
||||
// runs once when the firmware starts up
|
||||
|
||||
matrix_init_user();
|
||||
}
|
||||
|
||||
void matrix_scan_kb(void) {
|
||||
// put your looping keyboard code here
|
||||
// runs every cycle (a lot)
|
||||
|
||||
matrix_scan_user();
|
||||
}
|
||||
|
||||
bool process_record_kb(uint16_t keycode, keyrecord_t *record) {
|
||||
// put your per-action keyboard code here
|
||||
// runs for every action, just before processing by the firmware
|
||||
|
||||
return process_record_user(keycode, record);
|
||||
}
|
||||
|
||||
void led_set_kb(uint8_t usb_led) {
|
||||
// put your keyboard LED indicator (ex: Caps Lock LED) toggling code here
|
||||
|
||||
if (usb_led & (1 << USB_LED_CAPS_LOCK)) {
|
||||
DDRB |= (1 << 2);
|
||||
PORTB &= ~(1 << 2);
|
||||
} else {
|
||||
DDRB &= ~(1 << 2);
|
||||
PORTB &= ~(1 << 2);
|
||||
}
|
||||
|
||||
led_set_user(usb_led);
|
||||
}
|
||||
|
@ -47,6 +47,9 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
/* COL2ROW, ROW2COL*/
|
||||
#define DIODE_DIRECTION COL2ROW
|
||||
|
||||
#define LED_CAPS_LOCK_PIN B6
|
||||
|
||||
#define BACKLIGHT_PIN B7
|
||||
#ifdef BACKLIGHT_PIN
|
||||
#define BACKLIGHT_BREATHING
|
||||
|
@ -14,36 +14,3 @@
|
||||
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
#include "kbd6x.h"
|
||||
|
||||
void matrix_init_kb(void) {
|
||||
// put your keyboard start-up code here
|
||||
// runs once when the firmware starts up
|
||||
|
||||
matrix_init_user();
|
||||
}
|
||||
|
||||
void matrix_scan_kb(void) {
|
||||
// put your looping keyboard code here
|
||||
// runs every cycle (a lot)
|
||||
|
||||
matrix_scan_user();
|
||||
}
|
||||
|
||||
bool process_record_kb(uint16_t keycode, keyrecord_t *record) {
|
||||
// put your per-action keyboard code here
|
||||
// runs for every action, just before processing by the firmware
|
||||
|
||||
return process_record_user(keycode, record);
|
||||
}
|
||||
|
||||
void led_set_kb(uint8_t usb_led) {
|
||||
if (usb_led & (1 << USB_LED_CAPS_LOCK)) {
|
||||
DDRB |= (1 << 6);
|
||||
PORTB &= ~(1 << 6);
|
||||
} else {
|
||||
DDRB &= ~(1 << 6);
|
||||
PORTB &= ~(1 << 6);
|
||||
}
|
||||
|
||||
led_set_user(usb_led);
|
||||
}
|
@ -20,6 +20,9 @@
|
||||
/* COL2ROW or ROW2COL */
|
||||
#define DIODE_DIRECTION COL2ROW
|
||||
|
||||
#define LED_CAPS_LOCK_PIN B2
|
||||
#define LED_PIN_ON_STATE 0
|
||||
|
||||
/* number of backlight levels */
|
||||
#define BACKLIGHT_PIN B6
|
||||
#ifdef BACKLIGHT_PIN
|
||||
|
@ -1,17 +1 @@
|
||||
#include "rev1.h"
|
||||
|
||||
void led_set_kb(uint8_t usb_led) {
|
||||
// put your keyboard LED indicator (ex: Caps Lock LED) toggling code here
|
||||
if (IS_LED_ON(usb_led, USB_LED_CAPS_LOCK)) {
|
||||
writePinLow(B2);
|
||||
} else {
|
||||
writePinHigh(B2);
|
||||
}
|
||||
|
||||
led_set_user(usb_led);
|
||||
}
|
||||
|
||||
void matrix_init_kb(void) {
|
||||
setPinOutput(B2);
|
||||
matrix_init_user();
|
||||
}
|
||||
|
@ -1,17 +1 @@
|
||||
#include "rev2.h"
|
||||
|
||||
void led_set_kb(uint8_t usb_led) {
|
||||
// put your keyboard LED indicator (ex: Caps Lock LED) toggling code here
|
||||
if (IS_LED_ON(usb_led, USB_LED_CAPS_LOCK)) {
|
||||
writePinLow(B2);
|
||||
} else {
|
||||
writePinHigh(B2);
|
||||
}
|
||||
|
||||
led_set_user(usb_led);
|
||||
}
|
||||
|
||||
void matrix_init_kb(void) {
|
||||
setPinOutput(B2);
|
||||
matrix_init_user();
|
||||
}
|
||||
|
@ -47,6 +47,11 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
/* COL2ROW, ROW2COL*/
|
||||
#define DIODE_DIRECTION COL2ROW
|
||||
|
||||
#define LED_NUM_LOCK_PIN B1
|
||||
#define LED_CAPS_LOCK_PIN B3
|
||||
#define LED_SCROLL_LOCK_PIN B2
|
||||
|
||||
#define BACKLIGHT_PIN B6
|
||||
#ifdef BACKLIGHT_PIN
|
||||
#define BACKLIGHT_BREATHING
|
||||
|
@ -15,58 +15,3 @@
|
||||
*/
|
||||
|
||||
#include "kbd8x.h"
|
||||
|
||||
extern inline void caps_led_off(void);
|
||||
extern inline void caps_led_on(void);
|
||||
extern inline void num_led_off(void);
|
||||
extern inline void num_led_on(void);
|
||||
extern inline void scroll_led_off(void);
|
||||
extern inline void scroll_led_on(void);
|
||||
|
||||
void matrix_init_kb(void) {
|
||||
// put your keyboard start-up code here
|
||||
// runs once when the firmware starts up
|
||||
|
||||
matrix_init_user();
|
||||
}
|
||||
|
||||
void matrix_scan_kb(void) {
|
||||
// put your looping keyboard code here
|
||||
// runs every cycle (a lot)
|
||||
|
||||
matrix_scan_user();
|
||||
}
|
||||
|
||||
bool process_record_kb(uint16_t keycode, keyrecord_t *record) {
|
||||
// put your per-action keyboard code here
|
||||
// runs for every action, just before processing by the firmware
|
||||
|
||||
return process_record_user(keycode, record);
|
||||
}
|
||||
|
||||
void led_set_kb(uint8_t usb_led) {
|
||||
// put your keyboard LED indicator (ex: Caps Lock LED) toggling code here
|
||||
|
||||
if(usb_led & (1<<USB_LED_NUM_LOCK))
|
||||
{
|
||||
num_led_on();
|
||||
} else {
|
||||
num_led_off();
|
||||
}
|
||||
|
||||
if(usb_led & (1<<USB_LED_CAPS_LOCK))
|
||||
{
|
||||
caps_led_on();
|
||||
} else {
|
||||
caps_led_off();
|
||||
}
|
||||
|
||||
if(usb_led & (1<<USB_LED_SCROLL_LOCK))
|
||||
{
|
||||
scroll_led_on();
|
||||
} else {
|
||||
scroll_led_off();
|
||||
}
|
||||
|
||||
led_set_user(usb_led);
|
||||
}
|
||||
|
@ -19,15 +19,14 @@
|
||||
#include "led.h"
|
||||
|
||||
// Functions for setting LEDs on toggle keys
|
||||
inline void caps_led_on(void) { DDRB |= (1<<3); PORTB &= ~(1<<3); }
|
||||
inline void caps_led_off(void) { DDRB &= ~(1<<3); PORTB &= ~(1<<3); }
|
||||
inline void caps_led_on(void) { writePinHigh(LED_CAPS_LOCK_PIN); }
|
||||
inline void caps_led_off(void) { writePinLow(LED_CAPS_LOCK_PIN); }
|
||||
|
||||
inline void num_led_on(void) { DDRB |= (1<<1); PORTB &= ~(1<<1); }
|
||||
inline void num_led_off(void) { DDRB &= ~(1<<1); PORTB &= ~(1<<1); }
|
||||
|
||||
inline void scroll_led_on(void) { DDRB |= (1<<2); PORTB &= ~(1<<2); }
|
||||
inline void scroll_led_off(void) { DDRB &= ~(1<<2); PORTB &= ~(1<<2); }
|
||||
inline void num_led_on(void) { writePinHigh(LED_NUM_LOCK_PIN); }
|
||||
inline void num_led_off(void) { writePinLow(LED_NUM_LOCK_PIN); }
|
||||
|
||||
inline void scroll_led_on(void) { writePinHigh(LED_SCROLL_LOCK_PIN); }
|
||||
inline void scroll_led_off(void) { writePinLow(LED_SCROLL_LOCK_PIN); }
|
||||
|
||||
// LAYOUT depicting all possible switch positions.
|
||||
// LAYOUT_all supports ISO, split backspace and split left/right shift.
|
||||
|
@ -48,10 +48,10 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
/* COL2ROW, ROW2COL*/
|
||||
#define DIODE_DIRECTION COL2ROW
|
||||
|
||||
/*
|
||||
* Split Keyboard specific options, make sure you have 'SPLIT_KEYBOARD = yes' in your rules.mk, and define SOFT_SERIAL_PIN.
|
||||
*/
|
||||
#define SOFT_SERIAL_PIN D0 // or D1, D2, D3, E6
|
||||
#define LED_CAPS_LOCK_PIN E6
|
||||
#define LED_SCROLL_LOCK_PIN B2
|
||||
#define LED_PIN_ON_STATE 0
|
||||
|
||||
#define BACKLIGHT_PIN B7
|
||||
#ifdef BACKLIGHT_PIN
|
||||
#define BACKLIGHT_BREATHING
|
||||
|
@ -14,58 +14,3 @@
|
||||
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
#include "kbd8x_mk2.h"
|
||||
|
||||
void matrix_init_kb(void) {
|
||||
|
||||
// Indicator pins
|
||||
// B2 - Scroll Lock
|
||||
// E6 - Caps Lock
|
||||
// Sinking setup - 5V -> LED/Resistor -> Pin
|
||||
|
||||
setPinOutput(B2);
|
||||
setPinOutput(E6);
|
||||
|
||||
matrix_init_user();
|
||||
}
|
||||
|
||||
void led_set_kb(uint8_t usb_led) {
|
||||
|
||||
// Toggle indicator LEDs
|
||||
// Since they are a sinking setup, write HIGH to DISABLE, LOW to ENABLE
|
||||
|
||||
if (IS_LED_ON(usb_led, USB_LED_CAPS_LOCK)) {
|
||||
writePinLow(E6);
|
||||
} else {
|
||||
writePinHigh(E6);
|
||||
}
|
||||
|
||||
if (IS_LED_ON(usb_led, USB_LED_SCROLL_LOCK)) {
|
||||
writePinLow(B2);
|
||||
} else {
|
||||
writePinHigh(B2);
|
||||
}
|
||||
|
||||
led_set_user(usb_led);
|
||||
}
|
||||
|
||||
// Optional override functions below.
|
||||
// You can leave any or all of these undefined.
|
||||
// These are only required if you want to perform custom actions.
|
||||
|
||||
/*
|
||||
|
||||
void matrix_scan_kb(void) {
|
||||
// put your looping keyboard code here
|
||||
// runs every cycle (a lot)
|
||||
|
||||
matrix_scan_user();
|
||||
}
|
||||
|
||||
bool process_record_kb(uint16_t keycode, keyrecord_t *record) {
|
||||
// put your per-action keyboard code here
|
||||
// runs for every action, just before processing by the firmware
|
||||
|
||||
return process_record_user(keycode, record);
|
||||
}
|
||||
|
||||
*/
|
||||
|
@ -48,10 +48,8 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
/* COL2ROW, ROW2COL*/
|
||||
#define DIODE_DIRECTION COL2ROW
|
||||
|
||||
/*
|
||||
* Split Keyboard specific options, make sure you have 'SPLIT_KEYBOARD = yes' in your rules.mk, and define SOFT_SERIAL_PIN.
|
||||
*/
|
||||
#define SOFT_SERIAL_PIN D0 // or D1, D2, D3, E6
|
||||
#define LED_CAPS_LOCK_PIN B4
|
||||
#define LED_PIN_ON_STATE 0
|
||||
|
||||
#define BACKLIGHT_PIN B7
|
||||
#ifdef BACKLIGHT_PIN
|
||||
|
@ -14,48 +14,3 @@
|
||||
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
#include "kbdpad_mk2.h"
|
||||
|
||||
void matrix_init_kb(void) {
|
||||
|
||||
// Num Lock LED = B4
|
||||
// Sinking setup (5V -> LED/Res -> Pin)
|
||||
|
||||
setPinOutput(B4);
|
||||
|
||||
matrix_init_user();
|
||||
}
|
||||
|
||||
void led_set_kb(uint8_t usb_led) {
|
||||
|
||||
// Sinking setup. Write HIGH to turn OFF, LOW to turn ON.
|
||||
|
||||
if (IS_LED_ON(usb_led, USB_LED_NUM_LOCK)) {
|
||||
writePinLow(B4);
|
||||
} else {
|
||||
writePinHigh(B4);
|
||||
}
|
||||
|
||||
led_set_user(usb_led);
|
||||
}
|
||||
|
||||
// Optional override functions below.
|
||||
// You can leave any or all of these undefined.
|
||||
// These are only required if you want to perform custom actions.
|
||||
|
||||
/*
|
||||
|
||||
void matrix_scan_kb(void) {
|
||||
// put your looping keyboard code here
|
||||
// runs every cycle (a lot)
|
||||
|
||||
matrix_scan_user();
|
||||
}
|
||||
|
||||
bool process_record_kb(uint16_t keycode, keyrecord_t *record) {
|
||||
// put your per-action keyboard code here
|
||||
// runs for every action, just before processing by the firmware
|
||||
|
||||
return process_record_user(keycode, record);
|
||||
}
|
||||
|
||||
*/
|
||||
|
Loading…
Reference in New Issue
Block a user