diff options
Diffstat (limited to 'src')
| -rw-r--r-- | src/cortexelf-v1/Makefile | 1 | ||||
| -rw-r--r-- | src/cortexelf-v1/ao_pins.h | 53 | 
2 files changed, 48 insertions, 6 deletions
| diff --git a/src/cortexelf-v1/Makefile b/src/cortexelf-v1/Makefile index 65f16c2c..b491c2e4 100644 --- a/src/cortexelf-v1/Makefile +++ b/src/cortexelf-v1/Makefile @@ -57,6 +57,7 @@ ALTOS_SRC = \  	ao_exti_stm.c \  	ao_i2c_stm.c \  	ao_as1107.c \ +	ao_matrix.c \  	ao_vga.c \  	ao_blt.c \  	ao_copy.c \ diff --git a/src/cortexelf-v1/ao_pins.h b/src/cortexelf-v1/ao_pins.h index 9721c56d..034c2d5a 100644 --- a/src/cortexelf-v1/ao_pins.h +++ b/src/cortexelf-v1/ao_pins.h @@ -127,10 +127,11 @@  /* Buttons */ -#define AO_EVENT	1 +#define AO_EVENT		1  #define AO_BUTTON_COUNT		4  #define AO_BUTTON_MODE		AO_EXTI_MODE_PULL_DOWN +#define AO_BUTTON_INVERTED	0  /* INPUT */  #define AO_BUTTON_0_PORT	(&stm_gpioc) @@ -153,11 +154,11 @@  /* Set the hex digits up for decode, leave the extra leds alone */ -#define AO_AS1107_DECODE	((1 << 7) | \ -				 (1 << 6) | \ -				 (1 << 4) | \ -				 (1 << 3) | \ -				 (1 << 1) | \ +#define AO_AS1107_DECODE	((1 << 7) |	\ +				 (1 << 6) |	\ +				 (1 << 4) |	\ +				 (1 << 3) |	\ +				 (1 << 1) |	\  				 (1 << 0))  #define AO_AS1107_SPI_INDEX	AO_SPI_2_PD1_PD3_PD4 @@ -165,4 +166,44 @@  #define AO_AS1107_CS_PORT	(&stm_gpiod)  #define AO_AS1107_CS_PIN	0 +/* Hex keypad */ + +#define AO_MATRIX_ROWS	4 +#define AO_MATRIX_COLS	4 + +#define AO_MATRIX_KEYCODES {			\ +		{ 0x0, 0x1, 0x2, 0x3 },		\ +		{ 0x4, 0x5, 0x6, 0x7 },		\ +		{ 0x8, 0x9, 0xa, 0xb },		\ +		{ 0xc, 0xd, 0xe, 0xf }		\ +	} + +#include <ao_matrix.h> + +#define AO_TIMER_HOOK	ao_matrix_poll() + +#define AO_MATRIX_ROW_0_PORT	(&stm_gpioc) +#define AO_MATRIX_ROW_0_PIN	4 + +#define AO_MATRIX_ROW_1_PORT	(&stm_gpioc) +#define AO_MATRIX_ROW_1_PIN	1 + +#define AO_MATRIX_ROW_2_PORT	(&stm_gpioc) +#define AO_MATRIX_ROW_2_PIN	7 + +#define AO_MATRIX_ROW_3_PORT	(&stm_gpioc) +#define AO_MATRIX_ROW_3_PIN	0 + +#define AO_MATRIX_COL_0_PORT	(&stm_gpioc) +#define AO_MATRIX_COL_0_PIN	2 + +#define AO_MATRIX_COL_1_PORT	(&stm_gpioc) +#define AO_MATRIX_COL_1_PIN	3 + +#define AO_MATRIX_COL_2_PORT	(&stm_gpioc) +#define AO_MATRIX_COL_2_PIN	5 + +#define AO_MATRIX_COL_3_PORT	(&stm_gpioc) +#define AO_MATRIX_COL_3_PIN	6 +  #endif /* _AO_PINS_H_ */ | 
