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 */ | /* COL2ROW or ROW2COL */ | ||||||
| #define DIODE_DIRECTION COL2ROW | #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_PIN B7
 | ||||||
| // #define BACKLIGHT_BREATHING
 | // #define BACKLIGHT_BREATHING
 | ||||||
| // #define BACKLIGHT_LEVELS 3
 | // #define BACKLIGHT_LEVELS 3
 | ||||||
|  | |||||||
| @ -1,51 +1 @@ | |||||||
| #include "kitten_paw.h" | #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" | #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.
 | // This a shortcut to help you visually see your layout.
 | ||||||
| // The first section contains all of the arguements
 | // The first section contains all of the arguements
 | ||||||
| // The second converts the arguments into a two-dimensional array
 | // 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 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 */ | /* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */ | ||||||
| #define DEBOUNCE 5 | #define DEBOUNCE 5 | ||||||
| 
 | 
 | ||||||
|  | |||||||
| @ -1,63 +1 @@ | |||||||
| #include "tiger_lily.h" | #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 */ | /* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */ | ||||||
| #define DEBOUNCE 5 | #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 if matrix has ghost (lacks anti-ghosting diodes) */ | ||||||
| //#define MATRIX_HAS_GHOST
 | //#define MATRIX_HAS_GHOST
 | ||||||
| 
 | 
 | ||||||
|  | |||||||
| @ -14,57 +14,3 @@ | |||||||
|  * along with this program.  If not, see <http://www.gnu.org/licenses/>.
 |  * along with this program.  If not, see <http://www.gnu.org/licenses/>.
 | ||||||
|  */ |  */ | ||||||
| #include "unloved_bastard.h" | #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*/ | /* COL2ROW, ROW2COL*/ | ||||||
| #define DIODE_DIRECTION COL2ROW | #define DIODE_DIRECTION COL2ROW | ||||||
| 
 | 
 | ||||||
| /*
 | #define LED_CAPS_LOCK_PIN E6 | ||||||
|  * Split Keyboard specific options, make sure you have 'SPLIT_KEYBOARD = yes' in your rules.mk, and define SOFT_SERIAL_PIN. | #define LED_PIN_ON_STATE 0 | ||||||
|  */ |  | ||||||
| #define SOFT_SERIAL_PIN D0 // or D1, D2, D3, E6
 |  | ||||||
| 
 | 
 | ||||||
| #define BACKLIGHT_PIN B7 | #define BACKLIGHT_PIN B7 | ||||||
| #define BACKLIGHT_BREATHING | #define BACKLIGHT_BREATHING | ||||||
|  | |||||||
| @ -14,36 +14,3 @@ | |||||||
|  * along with this program.  If not, see <http://www.gnu.org/licenses/>.
 |  * along with this program.  If not, see <http://www.gnu.org/licenses/>.
 | ||||||
|  */ |  */ | ||||||
| #include "space65.h" | #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 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 | #define RGB_DI_PIN E2 | ||||||
| #ifdef RGB_DI_PIN | #ifdef RGB_DI_PIN | ||||||
|     #define RGBLED_NUM 22 |     #define RGBLED_NUM 22 | ||||||
|  | |||||||
| @ -14,58 +14,3 @@ | |||||||
|  * along with this program.  If not, see <http://www.gnu.org/licenses/>.
 |  * along with this program.  If not, see <http://www.gnu.org/licenses/>.
 | ||||||
|  */ |  */ | ||||||
| #include "hotswap.h" | #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*/ | /* COL2ROW, ROW2COL*/ | ||||||
| #define DIODE_DIRECTION COL2ROW | #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 | #define BACKLIGHT_PIN B6 | ||||||
| #ifdef BACKLIGHT_PIN | #ifdef BACKLIGHT_PIN | ||||||
| #define BACKLIGHT_LEVELS 3 | #define BACKLIGHT_LEVELS 3 | ||||||
|  | |||||||
| @ -16,57 +16,3 @@ along with this program.  If not, see <http://www.gnu.org/licenses/>. | |||||||
| */ | */ | ||||||
| 
 | 
 | ||||||
| #include "kbd19x.h" | #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 "quantum.h" | ||||||
| #include "led.h" | #include "led.h" | ||||||
| 
 | 
 | ||||||
| inline void kbd19x_caps_led_on(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)   { DDRB &= ~(1<<0); PORTB &= ~(1<<0); } | 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_on(void)    { writePinHigh(LED_SCROLL_LOCK_PIN); } | ||||||
| inline void kbd19x_sclk_led_off(void)   { DDRB &= ~(1<<1); PORTB &= ~(1<<1); } | 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_on(void)    { writePinHigh(LED_NUM_LOCK_PIN); } | ||||||
| inline void kbd19x_nmlk_led_off(void)   { DDRB &= ~(1<<2); PORTB &= ~(1<<2); } | inline void kbd19x_nmlk_led_off(void)   { writePinLow(LED_NUM_LOCK_PIN); } | ||||||
| 
 | 
 | ||||||
| // readability
 | // readability
 | ||||||
| #define XXX KC_NO | #define XXX KC_NO | ||||||
|  | |||||||
| @ -48,6 +48,8 @@ along with this program.  If not, see <http://www.gnu.org/licenses/>. | |||||||
| /* COL2ROW, ROW2COL*/ | /* COL2ROW, ROW2COL*/ | ||||||
| #define DIODE_DIRECTION COL2ROW | #define DIODE_DIRECTION COL2ROW | ||||||
| 
 | 
 | ||||||
|  | #define LED_CAPS_LOCK_PIN B2 | ||||||
|  | 
 | ||||||
| #define BACKLIGHT_PIN B6 | #define BACKLIGHT_PIN B6 | ||||||
| #ifdef BACKLIGHT_PIN | #ifdef BACKLIGHT_PIN | ||||||
| #define BACKLIGHT_BREATHING | #define BACKLIGHT_BREATHING | ||||||
|  | |||||||
| @ -14,38 +14,3 @@ | |||||||
|  * along with this program.  If not, see <http://www.gnu.org/licenses/>.
 |  * along with this program.  If not, see <http://www.gnu.org/licenses/>.
 | ||||||
|  */ |  */ | ||||||
| #include "rev1.h" | #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*/ | /* COL2ROW, ROW2COL*/ | ||||||
| #define DIODE_DIRECTION COL2ROW | #define DIODE_DIRECTION COL2ROW | ||||||
|  | 
 | ||||||
|  | #define LED_CAPS_LOCK_PIN B6 | ||||||
|  | 
 | ||||||
| #define BACKLIGHT_PIN B7 | #define BACKLIGHT_PIN B7 | ||||||
| #ifdef BACKLIGHT_PIN | #ifdef BACKLIGHT_PIN | ||||||
| #define BACKLIGHT_BREATHING | #define BACKLIGHT_BREATHING | ||||||
|  | |||||||
| @ -14,36 +14,3 @@ | |||||||
|  * along with this program.  If not, see <http://www.gnu.org/licenses/>.
 |  * along with this program.  If not, see <http://www.gnu.org/licenses/>.
 | ||||||
|  */ |  */ | ||||||
| #include "kbd6x.h" | #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 */ | /* COL2ROW or ROW2COL */ | ||||||
| #define DIODE_DIRECTION COL2ROW | #define DIODE_DIRECTION COL2ROW | ||||||
| 
 | 
 | ||||||
|  | #define LED_CAPS_LOCK_PIN B2 | ||||||
|  | #define LED_PIN_ON_STATE 0 | ||||||
|  | 
 | ||||||
| /* number of backlight levels */ | /* number of backlight levels */ | ||||||
| #define BACKLIGHT_PIN B6 | #define BACKLIGHT_PIN B6 | ||||||
| #ifdef BACKLIGHT_PIN | #ifdef BACKLIGHT_PIN | ||||||
|  | |||||||
| @ -1,17 +1 @@ | |||||||
| #include "rev1.h" | #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" | #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*/ | /* COL2ROW, ROW2COL*/ | ||||||
| #define DIODE_DIRECTION COL2ROW | #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 | #define BACKLIGHT_PIN B6 | ||||||
| #ifdef BACKLIGHT_PIN | #ifdef BACKLIGHT_PIN | ||||||
| #define BACKLIGHT_BREATHING | #define BACKLIGHT_BREATHING | ||||||
|  | |||||||
| @ -15,58 +15,3 @@ | |||||||
|  */ |  */ | ||||||
| 
 | 
 | ||||||
| #include "kbd8x.h" | #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" | #include "led.h" | ||||||
| 
 | 
 | ||||||
| // Functions for setting LEDs on toggle keys
 | // Functions for setting LEDs on toggle keys
 | ||||||
| inline void caps_led_on(void)     { DDRB |=  (1<<3); PORTB &= ~(1<<3); } | inline void caps_led_on(void)     { writePinHigh(LED_CAPS_LOCK_PIN); } | ||||||
| inline void caps_led_off(void)    { DDRB &= ~(1<<3); PORTB &= ~(1<<3); } | 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_on(void)      { writePinHigh(LED_NUM_LOCK_PIN); } | ||||||
| inline void num_led_off(void)     { DDRB &= ~(1<<1); PORTB &= ~(1<<1); } | inline void num_led_off(void)     { writePinLow(LED_NUM_LOCK_PIN); } | ||||||
| 
 |  | ||||||
| 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 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 depicting all possible switch positions.
 | ||||||
| // LAYOUT_all supports ISO, split backspace and split left/right shift.
 | // 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*/ | /* COL2ROW, ROW2COL*/ | ||||||
| #define DIODE_DIRECTION COL2ROW | #define DIODE_DIRECTION COL2ROW | ||||||
| 
 | 
 | ||||||
| /*
 | #define LED_CAPS_LOCK_PIN E6 | ||||||
|  * Split Keyboard specific options, make sure you have 'SPLIT_KEYBOARD = yes' in your rules.mk, and define SOFT_SERIAL_PIN. | #define LED_SCROLL_LOCK_PIN B2 | ||||||
|  */ | #define LED_PIN_ON_STATE 0 | ||||||
| #define SOFT_SERIAL_PIN D0 // or D1, D2, D3, E6
 | 
 | ||||||
| #define BACKLIGHT_PIN B7 | #define BACKLIGHT_PIN B7 | ||||||
| #ifdef BACKLIGHT_PIN | #ifdef BACKLIGHT_PIN | ||||||
| #define BACKLIGHT_BREATHING | #define BACKLIGHT_BREATHING | ||||||
|  | |||||||
| @ -14,58 +14,3 @@ | |||||||
|  * along with this program.  If not, see <http://www.gnu.org/licenses/>.
 |  * along with this program.  If not, see <http://www.gnu.org/licenses/>.
 | ||||||
|  */ |  */ | ||||||
| #include "kbd8x_mk2.h" | #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*/ | /* COL2ROW, ROW2COL*/ | ||||||
| #define DIODE_DIRECTION COL2ROW | #define DIODE_DIRECTION COL2ROW | ||||||
| 
 | 
 | ||||||
| /*
 | #define LED_CAPS_LOCK_PIN B4 | ||||||
|  * Split Keyboard specific options, make sure you have 'SPLIT_KEYBOARD = yes' in your rules.mk, and define SOFT_SERIAL_PIN. | #define LED_PIN_ON_STATE 0 | ||||||
|  */ |  | ||||||
| #define SOFT_SERIAL_PIN D0 // or D1, D2, D3, E6
 |  | ||||||
| 
 | 
 | ||||||
| #define BACKLIGHT_PIN B7 | #define BACKLIGHT_PIN B7 | ||||||
| #ifdef BACKLIGHT_PIN | #ifdef BACKLIGHT_PIN | ||||||
|  | |||||||
| @ -14,48 +14,3 @@ | |||||||
|  * along with this program.  If not, see <http://www.gnu.org/licenses/>.
 |  * along with this program.  If not, see <http://www.gnu.org/licenses/>.
 | ||||||
|  */ |  */ | ||||||
| #include "kbdpad_mk2.h" | #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…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user