qmk_firmware

QMK firmware for my keyboards (Corne, Sweep Ferris) and trackball (Ploopy Adept)
Log | Files | Refs | Submodules | LICENSE

config.h (988B)


      1 // Copyright 2021 Ryan Skidmore (@ryanskidmore, rskeys@ryanskidmore.co.uk)
      2 // SPDX-License-Identifier: GPL-2.0-or-later
      3 
      4 #pragma once
      5 
      6 /* Key Matrix Sizes */
      7 #define MATRIX_ROWS 6
      8 #define MATRIX_COLS 24
      9 
     10 /* Rows */
     11 #define ROW_A  D4
     12 #define ROW_B  C6
     13 #define ROW_C  D7
     14 #define ROW_D  E6
     15 #define ROW_E  B4
     16 #define ROW_F  B5
     17 
     18 /* Columns 0 - 20 (24 with dummy columns for shift registers) */
     19 #define SHR_LATCH B2
     20 #define SHR_CLOCK B3
     21 #define SHR_DATA  B1
     22 #define SHR_COLS { 0x000001, 0x000002, 0x000004, 0x000008, 0x000010, 0x000020, 0x000040, 0x000080, 0x000100, 0x000200, 0x000400, 0x000800, 0x001000, 0x002000, 0x004000, 0x008000, 0x010000, 0x020000, 0x040000, 0x080000, 0x100000, 0x200000, 0x400000, 0x800000 }
     23 
     24 /* The shift registers on the matrix PCB output a signal on each column, which passes through the
     25  * switch and a diode towards the row. The row is then connected to the AVR as an input. This means
     26  * the diode direction is COL(umn) to ROW */
     27 #define DIODE_DIRECTION COL2ROW