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
						
					
					
						
							1.2 KiB
						
					
					
				
			
		
		
	
	
							50 lines
						
					
					
						
							1.2 KiB
						
					
					
				| /*
 | |
|  * upstream_hid.h
 | |
|  *
 | |
|  *  Created on: Jan 16, 2016
 | |
|  *      Author: Robert Fisk
 | |
|   *
 | |
|  * This Source Code Form is subject to the terms of the Mozilla Public
 | |
|  * License, v. 2.0. If a copy of the MPL was not distributed with this
 | |
|  * file, You can obtain one at https://mozilla.org/MPL/2.0/.
 | |
|  */
 | |
| 
 | |
| 
 | |
| #ifndef UPSTREAM_HID_H_
 | |
| #define UPSTREAM_HID_H_
 | |
| 
 | |
| 
 | |
| #include "stm32f4xx_hal.h"
 | |
| #include "upstream_spi.h"
 | |
| 
 | |
| 
 | |
| //These defines are duplicated in downstream_hid.h. Keep them in sync!
 | |
| #define HID_MOUSE_INPUT_DATA_LEN        4
 | |
| #define HID_MOUSE_OUTPUT_DATA_LEN       0
 | |
| #define HID_MOUSE_MAX_BUTTONS           3
 | |
| 
 | |
| #define HID_KEYBOARD_INPUT_DATA_LEN     8
 | |
| #define HID_KEYBOARD_OUTPUT_DATA_LEN    1
 | |
| #define HID_KEYBOARD_MAX_KEY            101
 | |
| #define HID_KEYBOARD_MAX_LED            3
 | |
| 
 | |
| 
 | |
| typedef enum
 | |
| {
 | |
|     KEYBOARD_OUT_STATE_IDLE,
 | |
|     KEYBOARD_OUT_STATE_DATA_READY,
 | |
|     KEYBOARD_OUT_STATE_BUSY
 | |
| } KeyboardOutStateTypeDef;
 | |
| 
 | |
| 
 | |
| typedef uint8_t (*UpstreamHidGetReportCallback)(uint8_t *report,
 | |
|                                                 uint16_t len);
 | |
| 
 | |
| void Upstream_HID_DeInit(void);
 | |
| void Upstream_HID_GetInterruptReport(UpstreamHidGetReportCallback callback);
 | |
| void Upstream_HID_RequestSendControlReport(UpstreamPacketTypeDef* packetToSend, uint8_t dataLength);
 | |
| 
 | |
| 
 | |
| 
 | |
| #endif /* UPSTREAM_HID_H_ */
 |