Made Serial and I2C not include the Other

This saves 192 bytes
This commit is contained in:
IBNobody
2016-09-20 21:38:59 -05:00
parent f956802f29
commit 6631abc1cb
6 changed files with 36 additions and 14 deletions

View File

@ -28,14 +28,18 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#include "debug.h"
#include "util.h"
#include "matrix.h"
#include "i2c.h"
#include "serial.h"
#include "split_util.h"
#include "pro_micro.h"
#include "config.h"
#ifdef USE_I2C
# include "i2c.h"
#else // USE_SERIAL
# include "serial.h"
#endif
#ifndef DEBOUNCE
# define DEBOUNCE 5
# define DEBOUNCE 5
#endif
#define ERROR_DISCONNECT_COUNT 5
@ -145,6 +149,8 @@ uint8_t _matrix_scan(void)
return 1;
}
#ifdef USE_I2C
// Get rows from other half over i2c
int i2c_transaction(void) {
int slaveOffset = (isLeftHand) ? (ROWS_PER_HAND) : 0;
@ -176,7 +182,8 @@ i2c_error: // the cable is disconnceted, or something else went wrong
return 0;
}
#ifndef USE_I2C
#else // USE_SERIAL
int serial_transaction(void) {
int slaveOffset = (isLeftHand) ? (ROWS_PER_HAND) : 0;
@ -199,7 +206,7 @@ uint8_t matrix_scan(void)
#ifdef USE_I2C
if( i2c_transaction() ) {
#else
#else // USE_SERIAL
if( serial_transaction() ) {
#endif
// turn on the indicator led when halves are disconnected
@ -235,7 +242,7 @@ void matrix_slave_scan(void) {
/* i2c_slave_buffer[i] = matrix[offset+i]; */
i2c_slave_buffer[i] = matrix[offset+i];
}
#else
#else // USE_SERIAL
for (int i = 0; i < ROWS_PER_HAND; ++i) {
serial_slave_buffer[i] = matrix[offset+i];
}
@ -290,7 +297,7 @@ static void init_cols(void)
static matrix_row_t read_cols(void)
{
matrix_row_t result = 0;
for(int x = 0; x < MATRIX_COLS; x++) {
for(int x = 0; x < MATRIX_COLS; x++) {
result |= (_SFR_IO8(col_pins[x] >> 4) & _BV(col_pins[x] & 0xF)) ? 0 : (1 << x);
}
return result;
@ -298,7 +305,7 @@ static matrix_row_t read_cols(void)
static void unselect_rows(void)
{
for(int x = 0; x < ROWS_PER_HAND; x++) {
for(int x = 0; x < ROWS_PER_HAND; x++) {
_SFR_IO8((row_pins[x] >> 4) + 1) &= ~_BV(row_pins[x] & 0xF);
_SFR_IO8((row_pins[x] >> 4) + 2) |= _BV(row_pins[x] & 0xF);
}