FreeCalypso > hg > tcs211-l1-reconst
diff chipsetsw/drivers/drv_app/kpd/kpd_scan_functions.h @ 0:509db1a7b7b8
initial import: leo2moko-r1
author | Space Falcon <falcon@ivan.Harhan.ORG> |
---|---|
date | Mon, 01 Jun 2015 03:24:05 +0000 |
parents | |
children |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/chipsetsw/drivers/drv_app/kpd/kpd_scan_functions.h Mon Jun 01 03:24:05 2015 +0000 @@ -0,0 +1,138 @@ +/** + * @file kpd_scan_functions.h + * + * Declaration of keypad interface functions. + * + * @author Laurent Sollier (l-sollier@ti.com) + * @version 0.1 + */ + +/* + * History: + * + * Date Author Modification + * ---------------------------------------- + * 10/10/2001 L Sollier Create + * + * + * (C) Copyright 2001 by Texas Instruments Incorporated, All Rights Reserved + */ + +#ifndef _KPD_SCAN_FUNCTIONS_H_ +#define _KPD_SCAN_FUNCTIONS_H_ + +#include "kpd/kpd_i.h" + +#include "rv/rv_general.h" + + +/* For Windows environment */ +#ifdef _WINDOWS + #ifdef __cplusplus + extern "C" + { + #endif +#endif + +/** + * @name Internal functions + * + */ +/*@{*/ + + + +#if (CHIPSET == 12) + +/** + * function: kpd_init_ctrl_reg + * Initialize the Control register + */ +void kpd_init_ctrl_reg(const UINT8 software_nreset, + const T_KPD_Nsoftware_mode nsoftware_mode, + const T_KPD_PTV ptv, + const T_KPD_EnableDetection long_key_process_en, + const T_KPD_EnableDetection time_out_empty_en, + const T_KPD_EnableDetection time_out_long_key_en, + const T_KPD_EnableDetection repeat_mode_en); + + +/** + * function: kpd_software_reset + * + * Reset software + */ +void kpd_software_reset(void); + +#endif + +/** + * function: kpd_initialize_keypad_hardware + * + * Hardware initialization (Not implemented on Riviera tool). + */ +void kpd_initialize_keypad_hardware(void); + +/** + * function: kpd_acknowledge_key_pressed + * + * Unmask keypad interrupt (Not implemented on Riviera tool). + */ +void kpd_acknowledge_key_pressed(void); + +/** + * function: kpd_key_pressed + * + * This function send the message T_KPD_KEY_PRESSED_MSG with the value of key pressed. + * + * @param value Physical key identification. + */ +void kpd_key_pressed(UINT8 value); + + +/** + * function: kpd_scan_keypad + * + * This function returns the physical key Id for the pressed key, or + * KPD_KEY_NULL if no key is pressed. + * + * @return Physical key identification. + */ +T_KPD_PHYSICAL_KEY_ID kpd_scan_keypad(void); + + +#ifdef _WINDOWS + + /** + * function: kpd_key_handler + * + * This function is called when a key is pressed (Interrupt process). + * + */ + void kpd_key_handler(void); + + + /** + * function: kpd_key_released + * + * This function send the message T_KPD_KEY_PRESSED_MSG with the value of key=KPD_PKEY_NULL. + * + */ + void kpd_key_released(void); + + /** + * function: kpd_set_key_value + * + * This function set the key identification. + * + * @param value Physical key identification. + */ + void kpd_set_key_value(T_KPD_PHYSICAL_KEY_ID value); + + #ifdef __cplusplus + } + #endif +#endif + +/*@}*/ +#endif /* #ifndef _KPD_SCAN_FUNCTIONS_H_ */ \ No newline at end of file