📄 sn8_usb_ep1.asm
字号:
;***********************************************************************
; USB Endpoint 1 function
;=======================================================================
;This file is for Endpoint 1.
;EP1 FIFO address 0x08 ~ 0x17
;***********************************************************************
EP1_FUNCTION:
WRITE_EP1:
EP1_WR_RAM_addr_set #0x08 ;ep1 FIFO address
EP1_WR_RAM_data #0x1
EP1_WR_RAM_addr_set #0x09 ;FIFO address + 1
EP1_WR_RAM_data MOUSE_X_AXIS
EP1_WR_RAM_addr_set #0x0A
EP1_WR_RAM_data MOUSE_Y_AXIS
EP1_WR_RAM_addr_set #0x0B
EP1_WR_RAM_data #0x0 ; Z AXIS
EP1_WR_RAM_addr_set #0x0C
EP1_WR_RAM_data #0X0
EP1_WR_RAM_addr_set #0x0D
EP1_WR_RAM_data #0X0
EP1_WR_RAM_addr_set #0x0E
EP1_WR_RAM_data #0x0
EP1_WR_RAM_addr_set #0x0F
EP1_WR_RAM_data #0X0
mov a, #0x0
cmprs a, HALT1
jmp _ep1_stall
jmp _ep1_normal
_ep1_normal:
mov a, #10100100b ;1.keep enable ep1 (bit7 = 1)
;2.counter = 4 ; send 4 byte to host
;3.ACK response
b0mov UE1R, a
ret
_ep1_stall:
mov a, #11000000b ;EP1 STALL
b0mov UE1R, a
ret
//==============================================================//
// End of EP1 function //
//==============================================================//
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -