cursada_mc2
Base de control de temperatura para EDU-CIAA-NXP
Loading...
Searching...
No Matches
keyboard_driver.c File Reference
#include "keyboard_driver.h"
#include <string.h>
+ Include dependency graph for keyboard_driver.c:

Go to the source code of this file.

Macros

#define KEYBOARD_MAX_ROWS   4
 
#define KEYBOARD_MAX_COLUMNS   3
 
#define FILA0_IRQ_HANDLER   GPIO4_IRQHandler
 
#define FILA1_IRQ_HANDLER   GPIO5_IRQHandler
 
#define FILA2_IRQ_HANDLER   GPIO6_IRQHandler
 
#define FILA3_IRQ_HANDLER   GPIO7_IRQHandler
 

Functions

void board_keyboard_init (void)
 Inicializa los pines del teclado matricial.
 
void board_keyboard_int_enable (void)
 Habilita las interrupciones asociadas al teclado matricial.
 
int board_keyboard_read_cell (uint8_t fila, uint8_t columna)
 Lee el estado de una celda puntual de la matriz.
 
void board_keyboard_read_matrix (uint8_t *matrix_p[KEYBOARD_MAX_COLUMNS])
 Lee el estado completo de la matriz de teclado.
 
char board_keyboard_get_last_char ()
 Devuelve el ultimo caracter detectado por el teclado.
 
void read_row (uint8_t row)
 

Variables

uint8_t state_matrix [KEYBOARD_MAX_ROWS][KEYBOARD_MAX_COLUMNS]
 
uint8_t last_char = 0xFF
 

Macro Definition Documentation

◆ FILA0_IRQ_HANDLER

void FILA0_IRQ_HANDLER (   void)    GPIO4_IRQHandler

Definition at line 143 of file keyboard_driver.c.

◆ FILA1_IRQ_HANDLER

void FILA1_IRQ_HANDLER (   void)    GPIO5_IRQHandler

Definition at line 152 of file keyboard_driver.c.

◆ FILA2_IRQ_HANDLER

void FILA2_IRQ_HANDLER (   void)    GPIO6_IRQHandler

Definition at line 161 of file keyboard_driver.c.

◆ FILA3_IRQ_HANDLER

void FILA3_IRQ_HANDLER (   void)    GPIO7_IRQHandler

Definition at line 170 of file keyboard_driver.c.

◆ KEYBOARD_MAX_COLUMNS

#define KEYBOARD_MAX_COLUMNS   3

Definition at line 18 of file keyboard_driver.c.

◆ KEYBOARD_MAX_ROWS

#define KEYBOARD_MAX_ROWS   4

Definition at line 17 of file keyboard_driver.c.

Function Documentation

◆ board_keyboard_get_last_char()

char board_keyboard_get_last_char ( void  )
Returns
Codigo del ultimo caracter leido.

Definition at line 104 of file keyboard_driver.c.

References last_char.

◆ board_keyboard_init()

void board_keyboard_init ( void  )

Definition at line 30 of file keyboard_driver.c.

◆ board_keyboard_int_enable()

void board_keyboard_int_enable ( void  )

Definition at line 60 of file keyboard_driver.c.

◆ board_keyboard_read_cell()

int board_keyboard_read_cell ( uint8_t  column,
uint8_t  row 
)
Parameters
columnIndice de columna.
rowIndice de fila.
Returns
Estado leido para la celda indicada.

Definition at line 92 of file keyboard_driver.c.

References state_matrix.

◆ board_keyboard_read_matrix()

void board_keyboard_read_matrix ( uint8_t *  matrix_p[KEYBOARD_MAX_COLUMNS])
Parameters
matrix_pVector de punteros donde se deposita el estado de cada columna.

Definition at line 95 of file keyboard_driver.c.

References KEYBOARD_MAX_COLUMNS, KEYBOARD_MAX_ROWS, and state_matrix.

◆ read_row()

void read_row ( uint8_t  row)

Definition at line 112 of file keyboard_driver.c.

References last_char, and state_matrix.

Variable Documentation

◆ last_char

uint8_t last_char = 0xFF

Definition at line 27 of file keyboard_driver.c.

Referenced by board_keyboard_get_last_char(), and read_row().

◆ state_matrix

uint8_t state_matrix[KEYBOARD_MAX_ROWS][KEYBOARD_MAX_COLUMNS]