diff options
author | arnstadm <45672752+arnstadm@users.noreply.github.com> | 2021-08-12 15:59:07 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2021-08-12 06:59:07 -0700 |
commit | ac92f4b72197145c86a2ea0da461d398cfaa1130 (patch) | |
tree | 553ef7264cf4cd83402c3434bfa4a7a77228bec5 /keyboards/edda/edda.c | |
parent | 6a5c07680cc80a5fde62307ca1b651e228b2073e (diff) |
[Keyboard] Add Edda Keyboard (#13953)
Co-authored-by: Joel Challis <git@zvecr.com>
Co-authored-by: Ryan <fauxpark@gmail.com>
Diffstat (limited to 'keyboards/edda/edda.c')
-rw-r--r-- | keyboards/edda/edda.c | 50 |
1 files changed, 50 insertions, 0 deletions
diff --git a/keyboards/edda/edda.c b/keyboards/edda/edda.c new file mode 100644 index 0000000000..a04f3cc4c1 --- /dev/null +++ b/keyboards/edda/edda.c @@ -0,0 +1,50 @@ +/* +Copyright 2021 Martin Arnstad +This program is free software: you can redistribute it and/or modify +it under the terms of the GNU General Public License as published by +the Free Software Foundation, either version 2 of the License, or +(at your option) any later version. +This program is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +GNU General Public License for more details. +You should have received a copy of the GNU General Public License +along with this program. If not, see <http://www.gnu.org/licenses/>. +*/ +#include "edda.h" + +void keyboard_pre_init_kb(void) { + // Call the keyboard pre init code. + keyboard_pre_init_user(); + + // Set our LED pins as output + setPinOutput(B2); + setPinOutput(B1); + setPinOutput(B0); +} + +__attribute__((weak)) layer_state_t layer_state_set_user(layer_state_t state) { + switch (get_highest_layer(state)) { + case 1: + writePin(B2, 1); + writePin(B1, 0); + writePin(B0, 0); + break; + case 2: + writePin(B2, 1); + writePin(B1, 1); + writePin(B0, 0); + break; + case 3: + writePin(B2, 1); + writePin(B1, 1); + writePin(B0, 1); + break; + default: // for any other layers, or the default layer + writePin(B2, 0); + writePin(B1, 0); + writePin(B0, 0); + break; + } + return state; +} |