1
0
Fork 0

new build method for macway

This commit is contained in:
tmk 2010-10-27 20:51:45 +09:00
parent 461e0d3d8c
commit 2f80e790c6
17 changed files with 432 additions and 227 deletions

View file

@ -1,10 +1,13 @@
/*
* scan matrix
*/
#include <stdint.h>
#include <stdbool.h>
#include <avr/io.h>
#include <util/delay.h>
#include "matrix.h"
#include "print.h"
#include "util.h"
// matrix is active low. (key on: 0/key off: 1)
//
@ -30,10 +33,6 @@ static uint8_t _matrix0[MATRIX_ROWS];
static uint8_t _matrix1[MATRIX_ROWS];
static bool matrix_has_ghost_in_row(int row);
static int bit_pop(uint8_t bits);
inline
int matrix_rows(void)
{
@ -122,9 +121,6 @@ void matrix_print(void)
for (int row = 0; row < matrix_rows(); row++) {
phex(row); print(": ");
pbin_reverse(matrix_get_row(row));
if (matrix_has_ghost_in_row(row)) {
print(" <ghost");
}
print("\n");
}
}
@ -133,22 +129,7 @@ int matrix_key_count(void)
{
int count = 0;
for (int i = 0; i < MATRIX_ROWS; i++) {
count += bit_pop(matrix[i]);
count += bitpop(matrix[i]);
}
return count;
}
inline
static bool matrix_has_ghost_in_row(int row)
{
return false;
}
inline
static int bit_pop(uint8_t bits)
{
int c;
for (c = 0; bits; c++)
bits &= bits -1;
return c;
}