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

📄 usbinit.asm

📁 mcs51,2051,x86系列MCU
💻 ASM
字号:
##82930H USB#
##82930H INIT#


;EndPoint Interrupt 0
;Mode              = $%tTXCON0.3$ISO ENABLED$ISO DISABLED$
;Receive Done Interrupt  = $%tFIE.1$ENABLED$DISABLED$
;Transmit Done Interrupt = $%tFIE.0$ENABLED$DISABLED$
$$IFN$ IPL1.0 &! IPH1.0
;Priority          =  0
$$END$
$$IF$ IPL1.0 &! IPH1.0
;Priority          =  1
$$END$
$$IF$ IPH1.0 &! IPL1.0
;Priority          =  2
$$END$
$$IF$ IPH1.0 && IPL1.0
;Priority          =  3
$$END$

;EndPoint Interrupt 1
;Mode              = $%tTXCON1.3$ISO ENABLED$ISO DISABLED$
;Receive Done Interrupt  = $%tFIE.3$ENABLED$DISABLED$
;Transmit Done Interrupt = $%tFIE.2$ENABLED$DISABLED$
$$IFN$ IPL1.1 &! IPH1.1
;Priority          =  0
$$END$
$$IF$ IPL1.1 &! IPH1.1
;Priority          =  1
$$END$
$$IF$ IPH1.1 &! IPL1.1
;Priority          =  2
$$END$
$$IF$ IPH1.1 && IPL1.1
;Priority          =  3
$$END$

;EndPoint Interrupt 2
;Mode              = $%tTXCON2.3$ISO ENABLED$ISO DISABLED$
;Receive Done Interrupt  = $%tFIE.5$ENABLED$DISABLED$
;Transmit Done Interrupt = $%tFIE.4$ENABLED$DISABLED$
$$IFN$ IPL1.2 &! IPH1.2
;Priority          =  0
$$END$
$$IF$ IPL1.2 &! IPH1.2
;Priority          =  1
$$END$
$$IF$ IPH1.2 &! IPL1.2
;Priority          =  2
$$END$
$$IF$ IPH1.2 && IPL1.2
;Priority          =  3
$$END$

;EndPoint Interrupt 3
;Mode              = $%tTXCON3.3$ISO ENABLED$ISO DISABLED$
;Receive Done Interrupt  = $%tFIE.7$ENABLED$DISABLED$
;Transmit Done Interrupt = $%tFIE.6$ENABLED$DISABLED$
$$IFN$ IPL1.3 &! IPH1.3
;Priority          =  0
$$END$
$$IF$ IPL1.3 &! IPH1.3
;Priority          =  1
$$END$
$$IF$ IPH1.3 &! IPL1.3
;Priority          =  2
$$END$
$$IF$ IPH1.3 && IPL1.3
;Priority          =  3
$$END$


; --------------
; Initialization
; --------------
init_usb:
   mov   EPINDEX, #80h          ; initialize hubEP0
   mov   TXCON, #0$$HTXCON$h
   mov   RXCON, #0$$HRXCON$h
   mov   HSTAT, #0$$HSTAT$h
   mov   HIE, #0$$HFIE$h
   mov   EPCON, #0$$HEPCON$h

   mov   EPINDEX, #00h          ; initialize EP0
   mov   TXCON, #0$$TXCON0$h
   mov   RXCON, #0$$RXCON0$h
   mov   EPCON, #0$$EPCON0$h

   mov   EPINDEX, #01h          ; initialize EP1
   mov   TXCON, #0$$TXCON1$h
   mov   RXCON, #0$$RXCON1$h
   mov   EPCON, #0$$EPCON1$h

   mov   EPINDEX, #02h          ; initialize EP2
   mov   TXCON, #0$$TXCON2$h
   mov   RXCON, #0$$RXCON2$h
   mov   EPCON, #0$$EPCON2$h

   mov   EPINDEX, #03h          ; initialize EP3
   mov   TXCON, #0$$TXCON3$h
   mov   RXCON, #0$$RXCON3$h
   mov   EPCON, #0$$EPCON3$h

   mov   IPL1, #0$$IPL1$h       ;init priority registers
   mov   IPH1, #0$$IPH1$h
   mov   IPL0, #0$$IPL0$h
   mov   IPH0, #0$$IPH0$h
   mov   FIE, #0$$FIE$h
   mov   IEN1, #0$$IEN1$h       ;init interrupt registers
   mov   IEN0, #0$$IEN0$h
   mov   SOFH, #0$$SOFH$h

   ret

⌨️ 快捷键说明

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