From 0137b0231957c0b2fde80ac0e2a769ba4cbd60e7 Mon Sep 17 00:00:00 2001 From: zvecr Date: Thu, 11 Apr 2019 19:51:55 +0100 Subject: Port DIRECT_PINS from split_common/matrix.c to matrix.c (#5091) * Port DIRECT_PINS from split_common/matrix.c to matrix.c * Reorder matrix.c to remove foward declaration and match split_common/matrix.c * Refactor nano to use DIRECT_PINS * Reorder matrix.c to remove foward declaration and match split_common/matrix.c * Add DIRECT_PINS documentation * Reorder matrix.c to remove foward declaration and match split_common/matrix.c - fix logic from inherited from split_common * Add DIRECT_PINS documentation - review comments --- docs/hardware_avr.md | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) (limited to 'docs/hardware_avr.md') diff --git a/docs/hardware_avr.md b/docs/hardware_avr.md index 12a0059c3..acf7088a3 100644 --- a/docs/hardware_avr.md +++ b/docs/hardware_avr.md @@ -93,6 +93,24 @@ Finally, you can specify the direction your diodes point. This can be `COL2ROW` #define DIODE_DIRECTION COL2ROW ``` +#### Direct Pin Matrix +To configure a keyboard where each switch is connected to a separate pin and ground instead of sharing row and column pins, use `DIRECT_PINS`. The mapping defines the pins of each switch in rows and columns, from left to right. Must conform to the sizes within `MATRIX_ROWS` and `MATRIX_COLS`, use `NO_PIN` to fill in blank spaces. Overrides the behaviour of `DIODE_DIRECTION`, `MATRIX_ROW_PINS` and `MATRIX_COL_PINS`. + +```c +// #define MATRIX_ROW_PINS { D0, D5 } +// #define MATRIX_COL_PINS { F1, F0, B0 } +#define DIRECT_PINS { \ + { F1, E6, B0, B2, B3 }, \ + { F5, F0, B1, B7, D2 }, \ + { F6, F7, C7, D5, D3 }, \ + { B5, C6, B6, NO_PIN, NO_PIN } \ +} +#define UNUSED_PINS + +/* COL2ROW, ROW2COL */ +//#define DIODE_DIRECTION +``` + ### Backlight Configuration By default QMK supports backlighting on pins `B5`, `B6`, and `B7`. If you are using one of those you can simply enable it here. For more details see the [Backlight Documentation](feature_backlight.md). -- cgit v1.2.3-24-g4f1b