1
0
Fork 0

Add RP2040 SCRAMBLE v2 (#19489)

This commit is contained in:
Jay Greco 2023-01-27 00:03:57 -08:00 committed by GitHub
parent 6e42b58549
commit b3dca4bb36
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
13 changed files with 288 additions and 51 deletions

View file

@ -0,0 +1,36 @@
/*
Copyright 2021 Jay Greco
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/>.
*/
/* NOTE: This config file is specific to AVR builds. */
#pragma once
#include "config_common.h"
/* key matrix size */
#define MATRIX_ROWS 2
#define MATRIX_COLS 3
#define DIRECT_PINS {{D4,D5,B1}, {C3,C2,C1}}
/* Set 0 if debouncing isn't needed */
#define DEBOUNCE 10
/* Optional encoder pins */
#define ENCODERS_PAD_A { D6 }
#define ENCODERS_PAD_B { D7 }
#define TAP_CODE_DELAY 10

View file

@ -0,0 +1,21 @@
# NOTE: This file is specific to AVR builds.
# MCU name
MCU = atmega328p
# Bootloader selection
BOOTLOADER = usbasploader
# Build Options
# change yes to no to disable
#
BOOTMAGIC_ENABLE = no # Enable Bootmagic Lite
MOUSEKEY_ENABLE = yes # Mouse keys
EXTRAKEY_ENABLE = yes # Audio control and System control
CONSOLE_ENABLE = no # Console for debug
COMMAND_ENABLE = no # Commands for debug and configuration
NKRO_ENABLE = no # Enable N-Key Rollover
BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow
AUDIO_ENABLE = no # Audio output
ENCODER_ENABLE = yes # Use rotary encoder

View file

@ -0,0 +1,25 @@
// Copyright 2022 Jay Greco
// SPDX-License-Identifier: GPL-2.0-or-later
#include "v1.h"
void set_scramble_LED(uint8_t mode) {
switch(mode) {
case LED_ON:
setPinOutput(PIN_LED);
writePin(PIN_LED, GPIO_STATE_HIGH);
break;
case LED_DIM:
setPinInput(PIN_LED);
break;
case LED_OFF:
setPinOutput(PIN_LED);
writePin(PIN_LED, GPIO_STATE_LOW);
break;
default:
break;
}
}

View file

@ -0,0 +1,18 @@
// Copyright 2022 Jay Greco
// SPDX-License-Identifier: GPL-2.0-or-later
#pragma once
#include "scramble.h"
// Indication LED settings
#define LED_ON 2
#define LED_DIM 1
#define LED_OFF 0
#define GPIO_STATE_LOW 0
#define GPIO_STATE_HIGH 1
#define PIN_LED B2
void set_scramble_LED(uint8_t mode);