📄 usb_proc.asm
字号:
include ht82k96e.inc
include usbrf.inc
include usbfifo.inc
start_var equ 20h
extern stall :byte
extern reportkbtime :byte
extern baltkbprotocol :bit
extern bwait_setup :bit
usbproc .section at 45fh 'code'
ram_init: ;clear ram {20~bf}
mov a,start_var
mov mp0,a
mov a,160
next_addr2:
clr wdt
clr r0
inc mp0
sdz acc
jmp next_addr2
set stall
mov a,125
mov reportkbtime,a
set baltkbprotocol
set bwait_setup
ret
start_timer:
clr intc.0
clr timer1_on
mov a,10000000b
mov tmr0c,a
mov a,10000000b
mov tmr1c,a
mov a,090h
mov tmr1l,a
mov a,0e8h
mov tmr1h,a ;about 4ms for 6mhz
mov a,00001011b
mov intc,a
set timer1_on
clr timer0_on
ret
config_usb:
mov a,01000000b ;6mhz
mov clk_ctrl_reg,a
mov a,00000000b ;switch to usb mode, internal adc reference voltage
mov int_reg,a ;clear all pipe interrupt
ret
public ram_init
public config_usb
public start_timer
end
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -