/*
 * hal_Keyboard.h
 *
 *  Created on: Nov 5, 2011
 *      Author: RomanM
 */

#ifndef HAL_KEYBOARD_H_
#define HAL_KEYBOARD_H_

#include <stdint.h>

#define	KB_X_PORT	GPIOB
#define KB_X_CLOCK	RCC_APB2Periph_GPIOB
#define	KB_X_1		GPIO_Pin_4
#define	KB_X_2		GPIO_Pin_5
#define	KB_X_3		GPIO_Pin_6
#define KB_X_ALL	(KB_X_1 | KB_X_2 | KB_X_3)

#define	KB_Y_PORT	GPIOC
#define KB_Y_CLOCK	RCC_APB2Periph_GPIOC
#define	KB_Y_1		GPIO_Pin_3
#define	KB_Y_2		GPIO_Pin_2
#define	KB_Y_3		GPIO_Pin_1
#define	KB_Y_4		GPIO_Pin_0
#define KB_Y_ALL	(KB_Y_1 | KB_Y_2 | KB_Y_3 | KB_Y_4)

void hal_Keyboard_Init(void);
void hal_Keyboard_Set_Col(uint8_t col);
uint8_t hal_Keyboard_Read_Row(void);

#endif /* HAL_KEYBOARD_H_ */
