ansi_encoder.c (6194B)
1 /* Copyright 2023 @ Keychron (https://www.keychron.com) 2 * 3 * This program is free software: you can redistribute it and/or modify 4 * it under the terms of the GNU General Public License as published by 5 * the Free Software Foundation, either version 2 of the License, or 6 * (at your option) any later version. 7 * 8 * This program is distributed in the hope that it will be useful, 9 * but WITHOUT ANY WARRANTY; without even the implied warranty of 10 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 11 * GNU General Public License for more details. 12 * 13 * You should have received a copy of the GNU General Public License 14 * along with this program. If not, see <http://www.gnu.org/licenses/>. 15 */ 16 17 #include "quantum.h" 18 19 #ifdef RGB_MATRIX_ENABLE 20 const snled27351_led_t PROGMEM g_snled27351_leds[SNLED27351_LED_COUNT] = { 21 /* Refer to SNLED27351 manual for these locations 22 * driver 23 * | R location 24 * | | G location 25 * | | | B location 26 * | | | | */ 27 // {0, CB9_CA1, CB7_CA1, CB8_CA1} 28 {0, CB9_CA2, CB7_CA2, CB8_CA2}, // F13 29 {0, CB9_CA3, CB7_CA3, CB8_CA3}, // F14 30 {0, CB9_CA4, CB7_CA4, CB8_CA4}, // F15 31 {0, CB9_CA5, CB7_CA5, CB8_CA5}, // Esc 32 {0, CB9_CA6, CB7_CA6, CB8_CA6}, // F1 33 {0, CB9_CA7, CB7_CA7, CB8_CA7}, // F2 34 {0, CB9_CA8, CB7_CA8, CB8_CA8}, // F3 35 {0, CB9_CA9, CB7_CA9, CB8_CA9}, // F4 36 {0, CB9_CA10, CB7_CA10, CB8_CA10}, // F5 37 {0, CB9_CA11, CB7_CA11, CB8_CA11}, // F6 38 {0, CB9_CA12, CB7_CA12, CB8_CA12}, // F7 39 {0, CB9_CA13, CB7_CA13, CB8_CA13}, // F8 40 {0, CB9_CA14, CB7_CA14, CB8_CA14}, // F9 41 {0, CB9_CA15, CB7_CA15, CB8_CA15}, // F10 42 {0, CB9_CA16, CB7_CA16, CB8_CA16}, // F11 43 {0, CB12_CA16, CB10_CA16, CB11_CA16}, // F12 44 {0, CB12_CA15, CB10_CA15, CB11_CA15}, // DEL 45 {0, CB12_CA14, CB10_CA14, CB11_CA14}, // Light 46 47 48 {0, CB3_CA1, CB1_CA1, CB2_CA1}, // num_lock 49 {0, CB3_CA2, CB1_CA2, CB2_CA2}, // / 50 {0, CB3_CA3, CB1_CA3, CB2_CA3}, // * 51 {0, CB3_CA4, CB1_CA4, CB2_CA4}, // - 52 {0, CB3_CA5, CB1_CA5, CB2_CA5}, // ~` 53 {0, CB3_CA6, CB1_CA6, CB2_CA6}, // 1! 54 {0, CB3_CA7, CB1_CA7, CB2_CA7}, // 2@ 55 {0, CB3_CA8, CB1_CA8, CB2_CA8}, // 3# 56 {0, CB3_CA9, CB1_CA9, CB2_CA9}, // 4$ 57 {0, CB3_CA10, CB1_CA10, CB2_CA10}, // 5% 58 {0, CB3_CA11, CB1_CA11, CB2_CA11}, // 6^ 59 {0, CB3_CA12, CB1_CA12, CB2_CA12}, // 7& 60 {0, CB3_CA13, CB1_CA13, CB2_CA13}, // 8* 61 {0, CB3_CA14, CB1_CA14, CB2_CA14}, // 9( 62 {0, CB3_CA15, CB1_CA15, CB2_CA15}, // 0) 63 {0, CB3_CA16, CB1_CA16, CB2_CA16}, // -_ 64 {0, CB12_CA13, CB10_CA13, CB11_CA13}, // =+ 65 {0, CB12_CA12, CB10_CA12, CB11_CA12}, // BackSpace 66 {0, CB12_CA11, CB10_CA11, CB11_CA11}, // PgUp 67 68 {0, CB6_CA1, CB4_CA1, CB5_CA1}, // 7 69 {0, CB6_CA2, CB4_CA2, CB5_CA2}, // 8 70 {0, CB6_CA3, CB4_CA3, CB5_CA3}, // 9 71 {0, CB6_CA4, CB4_CA4, CB5_CA4}, // + 72 {0, CB6_CA5, CB4_CA5, CB5_CA5}, // TAB 73 {0, CB6_CA6, CB4_CA6, CB5_CA6}, // Q 74 {0, CB6_CA7, CB4_CA7, CB5_CA7}, // W 75 {0, CB6_CA8, CB4_CA8, CB5_CA8}, // E 76 {0, CB6_CA9, CB4_CA9, CB5_CA9}, // R 77 {0, CB6_CA10, CB4_CA10, CB5_CA10}, // T 78 {0, CB6_CA11, CB4_CA11, CB5_CA11}, // Y 79 {0, CB6_CA12, CB4_CA12, CB5_CA12}, // U 80 {0, CB6_CA13, CB4_CA13, CB5_CA13}, // I 81 {0, CB6_CA14, CB4_CA14, CB5_CA14}, // O 82 {0, CB6_CA15, CB4_CA15, CB5_CA15}, // P 83 {0, CB6_CA16, CB4_CA16, CB5_CA16}, // [ 84 {0, CB12_CA10, CB10_CA10, CB11_CA10}, // ] 85 {0, CB12_CA9, CB10_CA9, CB11_CA9}, // \| 86 {0, CB12_CA8, CB10_CA8, CB11_CA8}, // PgDn 87 88 {1, CB3_CA16, CB1_CA16, CB2_CA16}, // 4 89 {1, CB3_CA15, CB1_CA15, CB2_CA15}, // 5 90 {1, CB3_CA14, CB1_CA14, CB2_CA14}, // 6 91 // {0, CB6_CA4, CB4_CA4, CB5_CA4}, // + 92 {1, CB3_CA12, CB1_CA12, CB2_CA12}, // CapsLock 93 {1, CB3_CA11, CB1_CA11, CB2_CA11}, // A 94 {1, CB3_CA10, CB1_CA10, CB2_CA10}, // S 95 {1, CB3_CA9, CB1_CA9, CB2_CA9}, // D 96 {1, CB3_CA8, CB1_CA8, CB2_CA8}, // F 97 {1, CB3_CA7, CB1_CA7, CB2_CA7}, // G 98 {1, CB3_CA6, CB1_CA6, CB2_CA6}, // H 99 {1, CB3_CA5, CB1_CA5, CB2_CA5}, // J 100 {1, CB3_CA4, CB1_CA4, CB2_CA4}, // k 101 {1, CB3_CA3, CB1_CA3, CB2_CA3}, // l 102 {1, CB3_CA2, CB1_CA2, CB2_CA2}, // ; 103 {1, CB3_CA1, CB1_CA1, CB2_CA1}, // ' 104 {1, CB12_CA1, CB10_CA1, CB11_CA1}, // Enter 105 {1, CB12_CA2, CB10_CA2, CB11_CA2}, // Home 106 107 {1, CB9_CA16, CB7_CA16, CB8_CA16}, // 1 108 {1, CB9_CA15, CB7_CA15, CB8_CA15}, // 2 109 {1, CB9_CA14, CB7_CA14, CB8_CA14}, // 3 110 {1, CB9_CA13, CB7_CA13, CB8_CA13}, // Enter 111 {1, CB9_CA12, CB7_CA12, CB8_CA12}, //Shift_L 112 {1, CB9_CA10, CB7_CA10, CB8_CA10}, // Z 113 {1, CB9_CA9, CB7_CA9, CB8_CA9}, // X 114 {1, CB9_CA8, CB7_CA8, CB8_CA8}, // C 115 {1, CB9_CA7, CB7_CA7, CB8_CA7}, // V 116 {1, CB9_CA6, CB7_CA6, CB8_CA6}, // B 117 {1, CB9_CA5, CB7_CA5, CB8_CA5}, // N 118 {1, CB9_CA4, CB7_CA4, CB8_CA4}, // M 119 {1, CB9_CA3, CB7_CA3, CB8_CA3}, // , 120 {1, CB9_CA2, CB7_CA2, CB8_CA2}, // . 121 {1, CB9_CA1, CB7_CA1, CB8_CA1}, // ? 122 {1, CB12_CA3, CB10_CA3, CB11_CA3}, // Shift_R 123 {1, CB12_CA4, CB10_CA4, CB11_CA4}, // Up 124 125 {1, CB6_CA16, CB4_CA16, CB5_CA16}, // 0 126 {1, CB6_CA14, CB4_CA14, CB5_CA14}, // . 127 {1, CB6_CA12, CB4_CA12, CB5_CA12}, // Ctrl_L 128 {1, CB6_CA11, CB4_CA11, CB5_CA11}, // Win_L 129 {1, CB6_CA10, CB4_CA10, CB5_CA10}, // Alt_L 130 {1, CB6_CA6, CB4_CA6, CB5_CA6}, // Space 131 {1, CB6_CA3, CB4_CA3, CB5_CA3}, // Alt_R 132 {1, CB6_CA2, CB4_CA2, CB5_CA2}, // Fn 133 {1, CB6_CA1, CB4_CA1, CB5_CA1}, // Ctrl_R 134 {1, CB12_CA5, CB10_CA5, CB11_CA5}, // Left 135 {1, CB12_CA6, CB10_CA6, CB11_CA6}, // Down 136 {1, CB12_CA7, CB10_CA7, CB11_CA7}, // Right 137 }; 138 #endif