You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
50 lines
1018 B
50 lines
1018 B
3 years ago
|
/*
|
||
|
* upstream_hid_botdetect.h
|
||
|
*
|
||
|
* Created on: Aug 17, 2017
|
||
|
* Author: Robert Fisk
|
||
|
*/
|
||
|
|
||
|
#ifndef INC_UPSTREAM_HID_BOTDETECT_H_
|
||
|
#define INC_UPSTREAM_HID_BOTDETECT_H_
|
||
|
|
||
|
|
||
|
#include "stm32f4xx_hal.h"
|
||
|
|
||
|
|
||
|
#define KEY_ROLLOVER 0x01 //Rollover means we hold the last reported key status
|
||
|
#define KEY_A 0x04
|
||
|
#define KEY_MODIFIER_BASE 0xE0 //First modifier key is L-Ctl
|
||
|
|
||
|
|
||
|
#define KEYBOARD_BOTDETECT_MAX_ACTIVE_KEYS 14 //This is here because it is not a tuneable parameter
|
||
|
|
||
|
|
||
|
|
||
|
typedef enum
|
||
|
{
|
||
|
LOCKOUT_STATE_INACTIVE = 0,
|
||
|
LOCKOUT_STATE_TEMPORARY_ACTIVE,
|
||
|
LOCKOUT_STATE_TEMPORARY_FLASHING,
|
||
|
LOCKOUT_STATE_PERMANENT_ACTIVE
|
||
|
}
|
||
|
LockoutStateTypeDef;
|
||
|
|
||
|
|
||
|
typedef struct
|
||
|
{
|
||
|
uint8_t KeyCode;
|
||
|
uint32_t KeyDownStart;
|
||
|
}
|
||
|
KeyTimerLogTypeDef;
|
||
|
|
||
|
|
||
|
|
||
|
void Upstream_HID_BotDetect_Systick(void);
|
||
|
void Upstream_HID_BotDetectKeyboard(uint8_t* keyboardInData);
|
||
|
void Upstream_HID_BotDetectMouse(uint8_t* mouseInData);
|
||
|
|
||
|
|
||
|
|
||
|
#endif /* INC_UPSTREAM_HID_BOTDETECT_H_ */
|