⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 ram.h

📁 HID规范和一个基于CYPRESS FX2 的例子
💻 H
字号:
;========================================
;
;	Ram
;
;========================================

suspend_count:		equ	20h		; counter for suspend/resume
ep1_data_toggle:	equ	21h		; data toggle for INs on endpoint one
ep0_data_toggle: 	equ	22h		; data toggle for INs on endpoint zero
data_start:		equ	23h		; address of request response data, as an offset
data_count:		equ	24h		; number of bytes to send back to the host
maximum_data_count:	equ	25h		; request response size
data_pending_flag:	equ	26h
configuration:		equ	27h
ep1_stall:		equ	28h
idle:			equ	29h
protocol:		equ	2Ah
ep0_count_tmp:		equ	2Bh		; temporary register
pending_data:		equ	2Ch
int_temp:		equ	2Dh
idle_timer:		equ	2Eh
idle_prescaler:		equ	2Fh
ep0_transtype:		equ	30h
data_byte_0:		equ	31h
data_byte_1:		equ	32h

new_task:		equ	33h
task_number:		equ	34h
Dpad_debounce:		equ	35h
new_y:			equ	37h
new_x:			equ	38h
old_x:			equ	39h
old_y:			equ	3Ah
old_buttons:		equ	3Ch

;========================================
;	
;	Application Specific aliases
;	
;========================================

Button_Port:		equ	Port0
Dpad_Port:		equ	Port1
DPAD_BITS:		equ	0fh
Y_BITS:			equ	03h
BUTTON_BITS:		equ	ffh
EP1_REPORT_LENGTH:	equ	03h

; STATE MACHINE CONSTANTS
;EP0 IN TRANSACTIONS
EP0_IN_IDLE:		equ	00h
CONTROL_READ_DATA:	equ	02h
NO_DATA_STATUS:		equ	04h
EP0_IN_STALL:		equ	06h

;******* FLAG CONSTANTS
NO_CHANGE_PENDING:		equ	00h
ADDRESS_CHANGE_PENDING:		equ	01h

; RESPONSE SIZES
DEVICE_STATUS_LENGTH:		equ	2
DEVICE_CONFIG_LENGTH:		equ	1
ENDPOINT_STALL_LENGTH:		equ	2
INTERFACE_STATUS_LENGTH:	equ	2
INTERFACE_ALTERNATE_LENGTH:	equ	1
INTERFACE_PROTOCOL_LENGTH:	equ	1


;***** TRANSACTION TYPES

DONE_TRANSACTION:		equ	00h
CONTROL_READ_TRANSACTION:	equ	02h
CONTROL_WRITE_TRANSACTION:	equ	04h
NO_DATA_CONTROL_TRANSACTION:	equ	06h




;**********************************************************
; USB Descriptor and Request constants
;	source p172,,175 USB specification
;**********************************************************


;	Characterists of bmRequest Value
;
; D7	Data transfer direction
;	0 = Host to device
;	1 = Device to host
;
; D6..5	Type
;	0 = Standard
;	1 = Class
;	2 = Vendor
;	3 = Reserved
;
; D4..0	Recipient
;	0 = Device
;	1 = Interface
;	2 = Endpoint
;	3 = Other
;	4..31 = Reserved


;***** bmRequestType
HOSTTODEVICE:			equ	00h
DEVICETOHOST:			equ	80h

STANDARD_TYPE:			equ	00h
CLASS_TYPE:			equ	20h
VENDOR_TYPE:			equ	40h
RESERVED_TYPE:			equ	60h

DEVICE_RECIPIENT:		equ	00h
INTERFACE_RECIPIENT:		equ	01h
ENDPOINT_RECIPIENT:		equ	02h
OTHER_RECIPIENT:		equ	03h

;***** bRequest
GET_STATUS:			equ	00h
CLEAR_FEATURE:			equ	01h
SET_FEATURE:			equ	03h
SET_ADDRESS:			equ	05h
GET_DESCRIPTOR:			equ	06h
SET_DESCRIPTOR:			equ	07h
GET_CONFIGURATION:		equ	08h
SET_CONFIGURATION:		equ	09h
GET_INTERFACE:			equ	0Ah
SET_INTERFACE:			equ	0Bh
SYNCH_FRAME:			equ	0Ch

;***** Descriptor Types
DEVICE:				equ	01h
CONFIGURATION:			equ	02h
STRING:				equ	03h
INTERFACE:			equ	04h
ENDPOINT:			equ	05h

;***** Feature Selectors
DEVICE_REMOTE_WAKEUP:		equ	01h
ENDPOINT_STALL:			equ	00h

;***** HID Class Request Types
GET_REPORT:			equ	01h
GET_IDLE:			equ	02h
GET_PROTOCOL:			equ	03h
SET_REPORT:			equ	09h
SET_IDLE:			equ	0Ah
SET_PROTOCOL:			equ	0Bh

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -