📄 usblib.asm
字号:
include body.inc
include usbfifo.inc
extern wait_28us :near
extern wait_4us :near
extern FIFO_Type :byte
extern FIFO_OUT1 :byte
extern int_temp1 :byte
extern int_temp2 :byte
extern fifo_sendlen :byte
extern bwait_setup :bit
extern STALL :byte
FIFO_temp EQU int_temp1
fifo_no EQU int_temp2
START_VAR EQU 20H
RAM_NO EQU 224
USBlib .Section 'code'
;-------------------------------------------------------------------
Ram_init: ;clear RAM {20~FF}
mov a,start_var
mov mp0,a
mov a,RAM_NO
next_addr2:
clr wdt
clr r0
inc mp0
sdz acc
jmp next_addr2
set STALL
CLR ACC
set bwait_setup
ret
;----------------------------------------------------------------------------
;FIFO 0 ready to read ?
FIFO0_Rd_Check:
mov a,00000000b
jmp FIFO_Check
FIFO2_Rd_Check:
mov a,00010000b
jmp FIFO_Check
;----------------------------------------------------------------------------
;Len 0 ready to write ?
LEN0_Wr_Check:
;FIFO 0 ready to write ?
FIFO0_Wr_Check:
mov a,00000010b
jmp FIFO_Check
FIFO1_Wr_check:
mov a,00001010b
jmp FIFO_Check
FIFO2_Wr_check:
mov a,00010010b
jmp FIFO_Check
;set pipe bit & tx bit, and check ready flag
;z=1 not ready, z=0, ok
FIFO_Check:
mov FIFO_temp,a
MOV A,USB_MISC
MOV MP1,A
mov a,11100000b ; (2005-01-04)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -