亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? emb_f.asm

?? mcs51,2051,x86系列MCU
?? ASM
?? 第 1 頁 / 共 5 頁
字號:
##82930H USB#200#
##82930H EMB#200#

;**************************************************************************
;**                                                                      **
;**                  I N T E L   P R O P R I E T A R Y                   **
;**                                                                      **
;**     COPYRIGHT (c)  1996, 1997 BY  INTEL  CORPORATION.  ALL RIGHTS    **
;**     RESERVED.                                                        **
;**$Modtime:   19 Dec 1996 14:42:24  $
;**$Revision:   1.3  $
;***************************************************************************

;$INCLUDE (8x930AX.INC)  ;  you may need to change this file and use
                        ;  the one provided by the tool vendor you
                        ;  are using.
;$INCLUDE (ONE_OH.INC)   ; This file is provided by Intel

INCLUDE 8x930ax.inc      ;  Select the other format if assembling for
INCLUDE ONE_OH.INC       ;  Intel Compatibility



FIFO_SIZE             equ     008h
GET_COMMAND           equ     080h
EP1_TX_FIFO_SIZE      equ     0$$EP1TXGAR$h
EP1_RX_FIFO_SIZE      equ     0$$EP1RXGAR$h
EP2_TX_FIFO_SIZE      equ     0$$EP2TXGAR$h
EP3_TX_FIFO_SIZE      equ     0$$EP3TXGAR$h
EP1_TX_LOOP_BACK_FIFO_SIZE    equ  0$$EP1TXGAR$h
EP1_RX_LOOP_BACK_FIFO_SIZE    equ  0$$EP1RXGAR$h
EP2_TX_LOOP_BACK_FIFO_SIZE    equ  0$$EP2TXGAR$h
EP2_RX_LOOP_BACK_FIFO_SIZE    equ  0$$EP2RXGAR$h
EP3_TX_LOOP_BACK_FIFO_SIZE    equ  0$$EP3TXGAR$h
EP3_RX_LOOP_BACK_FIFO_SIZE    equ  0$$EP3RXGAR$h


SETUP_PHASE           equ     000h
DATA_PHASE            equ     001h
STATUS_PHASE          equ     002h


EP0_MAX_PACKET_SIZE     equ     0$$MAXPACKET$h
NULL_DATA_PACKET        equ     000h


public   FUNCTION_ISR
public   InitilizeEmbeddedFunction
$$IF$ (EPATT11 == 1) || (EPATT12 == 1) || (EPATT13 == 1) || (EPATT14 == 1) || (EPATT15 == 1) || (EPATT16 == 1)
public   EmbeddedFunctionSofRoutine
$$END$
public   FUNCTION_SUSPEND_ROUTINE,FUNCTION_RESUME_ROUTINE
public   FbRequest
public   STACK_DATA
public   FifoWatchDog


DEFINE EMBEDDED_CODE_SEGMENT, SPACE=CODE

SEGMENT EMBEDDED_CODE_SEGMENT

;MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
;M---------------------------------------------------------------------M
;M                   MAIN                                              M
;M---------------------------------------------------------------------M
;MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM


InitilizeEmbeddedFunction:


        Call    INIT_VARIABLES             ; Initialize the RAM space as required
        Call    INIT_FUNCTION_EP0

        ret



;AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
;A---------------------------------------------------------------------A
;A                  ACTIVE LOOP                                        A
;A---------------------------------------------------------------------A
;AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA

;COMMENT *------------------------------------------------------------
;ISR Registers
;IF the user makes this into an ISR, they will need to save certain registers
;upon entry into this code.  The firmware has been writen such that the
;only registers which are modified in this code are A, R0, R1 & EPINDEX.
;While DPX is used within the code, it is saved locally only when needed.
;This will allow the ISR to run slightly faster.
;--------------------------------------------------------------------*


;----------------------------------------------------------------
;SSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSS
;SS                 FUNCTION SUSPEND ROUTINE
;SSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSS
;----------------------------------------------------------------
FUNCTION_SUSPEND_ROUTINE:
        ret
;----------------------------------------------------------------
;RRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRR
;RR                 FUNCTION RESUME ROUTINE
;RRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRR
;----------------------------------------------------------------
FUNCTION_RESUME_ROUTINE:
        ret

$$IF$ (EPATT11 == 1) || (EPATT12 == 1) || (EPATT13 == 1) || (EPATT14 == 1) || (EPATT15 == 1) || (EPATT16 == 1)
;----------------------------------------------------------------
;SSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSS
;SS                 SOF ISR
;SSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSS
;----------------------------------------------------------------
;COMMENT *------------------------------------------------------------
;Function name     : SOF_ISR
;Brief Description : Service the SOF_ISR Interrupt
;                  : This routine simply displays the upper three bytes of the
;                  : SOF in the lower three bits of the LEDs on P1.
;                  : It does not affect the other LEDS.  Very usefull
;                  : in determining when the function is receiveing SOFs
;Regs preserved    : Reg. A is saved
;--------------------------------------------------------------------*
;SCOPE

SOF_ISR:
EmbeddedFunctionSofRoutine:


        jnb     ASOF,   ExitSofIsr              ; If this ASOF bit not set, the ISR could be a HUB.  Go Check.

        clr     ASOF
        push    ACC
        mov     A,      P1
        anl     A,      #0F8h
        mov     P1,     A


        mov     A,      SOFH
        anl     A,      #07h
        orl     P1,     A

        pop     ACC

ExitSofIsr:

        ret
$$END$

;----------------------------------------------------------------
;FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
;FF                 FUNCTION ISR
;FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
;----------------------------------------------------------------
;COMMENT *------------------------------------------------------------
;Function name     : FUNCTION_ISR
;Brief Description : Service the FUNCTION_ISR Interrupt
;                  : This routine scans the interrupt pending bits in order
;                  : and branches to any routines that have pending interrupts.
;                  : After finishing the routine jumps back to the top of
;                  : the scanning loop to preserve interrupt priority.
;                  :
;                  : NOTE: The order of precidence is set by the order in which the
;                  : user places the checks.
;                  :
;Regs preserved    : Reg. A, B  & EPINDEX are saved
;--------------------------------------------------------------------*
;SCOPE

FUNCTION_ISR:
         push   PSW
         push   PSW1
         push   ACC
         push   B
         push   EPINDEX


ProcessFunctionEndpoints:

;----------------------------------------------------------------
;-- NOTE: Priority of the check sequence determines priority.  --
;----------------------------------------------------------------

F_EP0:
        mov     A,   FIFLG                  ; First check to see if this is EP0 Command
        anl     A,   #03h                   ; As they require extra overhead. Mask off all but EP0 Interrupts
        jz      NonEp0ISR

                                             ;----------------------------------------------------------------
                                             ;-- Process the EP0 COmmand in the correct order
                                             ;----------------------------------------------------------------

                                            ; If this an EP0 command then we need to process TX & RX
                                            ; ISRs in the correct order if, for whatever reason they occurred
                                            ; back to back.  This happens in OHCI systems.
        mov     A, gbSetupSeqTX
        cjne    A, #SETUP_PHASE, CheckDataStatusStage
        jmp     DoRxFirst                   ; If the status stage is Setup then check the RX First.

CheckDataStatusStage:
                                            ; Now check to see what stage the TX is in.
                                            ; If it is in the data stage then check it first.
                                            ; If it's in the status stage then check the RX first.

        cjne    A, #DATA_PHASE, DoRxFirst   ; If current stage a data stage->a control read
                                            ; and we should process TX before RX ISR

                                            ;----------------------------------------------------------------
                                            ;-- Process the TX FIFO first
                                            ;----------------------------------------------------------------

DoTxFirst:
F_EP0_TXA:
        jnb     FTXD0,  F_EP0_RXA
        mov     EPINDEX,#00
        lCall   ProcessInToken              ; 82930 has sent a packet to HC
        ljmp     ProcessFunctionEndpoints    ; Look at all Interrupt flags again

F_EP0_RXA:
        jnb     FRXD0,  NonEp0ISR
        mov     EPINDEX,#00
        lCall   ProcessOutToken             ; 82930 has received a packet from HC
        ljmp     ProcessFunctionEndpoints    ; Look at all Interrupt flags again

;--------------------------------------------------------------------------------

DoRxFirst:
                                            ;----------------------------------------------------------------
                                            ;-- Process the RX FIFO first
                                            ;----------------------------------------------------------------
F_EP0_RXB:
        jnb     FRXD0,  F_EP0_TXB
        mov     EPINDEX,#00
        lCall   ProcessOutToken             ; 82930 has received a packet from HC
        ljmp     ProcessFunctionEndpoints    ; Look at all Interrupt flags again

F_EP0_TXB:
        jnb     FTXD0,  NonEp0ISR
        mov     EPINDEX,#00
        lCall   ProcessInToken              ; 82930 has sent a packet to HC
        ljmp     ProcessFunctionEndpoints    ; Look at all Interrupt flags again


;--------------------------------------------------------------------------------
;--------------------------------------------------------------------------------

                                            ;----------------------------------------------------------------
                                            ;-- Process the Other EPs next
                                            ;----------------------------------------------------------------

NonEp0ISR:
F_EP1_TX:
$$IF$ (BENCFG11 == 1)
$$IF$ (EPADDR11 == 129)
$$IFN$ (EPATT11 == 1)

        jnb     FTXD1,  F_EP1_RX
        mov     EPINDEX,#01

        lcall   Ep1TxLoopBack
        jb      RXFIF0, GetEp1RxData        ; If data is pending in the FIFOs go get it.
        jb      RXFIF1, GetEp1RxData        ; This is quicker than calling the routines.
        ljmp     F_EP1_RX                    ; Look at all Interrupt flags again
GetEp1RxData:
        lCall   Ep1RxLoopBack               ; 82930 has received a packet from HC
$$END$
$$END$
$$END$
$$IF$ (BENCFG12 == 1)
$$IF$ (EPADDR12 == 129)
$$IFN$ (EPATT12 == 1)

        jnb     FTXD1,  F_EP1_RX
        mov     EPINDEX,#01

        lcall   Ep1TxLoopBack
        jb      RXFIF0, GetEp1RxData        ; If data is pending in the FIFOs go get it.
        jb      RXFIF1, GetEp1RxData        ; This is quicker than calling the routines.
        ljmp     F_EP1_RX                    ; Look at all Interrupt flags again
GetEp1RxData:
        lCall   Ep1RxLoopBack               ; 82930 has received a packet from HC
$$END$
$$END$
$$END$
$$IF$ (BENCFG13 == 1)
$$IF$ (EPADDR13 == 129)
$$IFN$ (EPATT13 == 1)

        jnb     FTXD1,  F_EP1_RX
        mov     EPINDEX,#01

        lcall   Ep1TxLoopBack
        jb      RXFIF0, GetEp1RxData        ; If data is pending in the FIFOs go get it.
        jb      RXFIF1, GetEp1RxData        ; This is quicker than calling the routines.
        ljmp     F_EP1_RX                    ; Look at all Interrupt flags again
GetEp1RxData:
        lCall   Ep1RxLoopBack               ; 82930 has received a packet from HC
$$END$
$$END$
$$END$
$$IF$ (BENCFG14 == 1)
$$IF$ (EPADDR14 == 129)
$$IFN$ (EPATT14 == 1)

        jnb     FTXD1,  F_EP1_RX
        mov     EPINDEX,#01

        lcall   Ep1TxLoopBack
        jb      RXFIF0, GetEp1RxData        ; If data is pending in the FIFOs go get it.
        jb      RXFIF1, GetEp1RxData        ; This is quicker than calling the routines.
        ljmp     F_EP1_RX                    ; Look at all Interrupt flags again
GetEp1RxData:
        lCall   Ep1RxLoopBack               ; 82930 has received a packet from HC
$$END$
$$END$
$$END$
$$IF$ (BENCFG15 == 1)
$$IF$ (EPADDR15 == 129)
$$IFN$ (EPATT15 == 1)

        jnb     FTXD1,  F_EP1_RX
        mov     EPINDEX,#01

        lcall   Ep1TxLoopBack
        jb      RXFIF0, GetEp1RxData        ; If data is pending in the FIFOs go get it.
        jb      RXFIF1, GetEp1RxData        ; This is quicker than calling the routines.
        ljmp     F_EP1_RX                    ; Look at all Interrupt flags again
GetEp1RxData:
        lCall   Ep1RxLoopBack               ; 82930 has received a packet from HC
$$END$
$$END$
$$END$

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美一区二区视频在线观看2020| 国产美女娇喘av呻吟久久| 久久精品男人天堂av| 欧美一区二区三区播放老司机| 欧美高清www午色夜在线视频| 欧美精品v日韩精品v韩国精品v| 精品视频全国免费看| 欧美美女一区二区| 日韩精品中文字幕在线一区| 精品剧情v国产在线观看在线| 久久综合av免费| 国产片一区二区| 亚洲图片激情小说| 亚洲综合丝袜美腿| 日本亚洲最大的色成网站www| 综合婷婷亚洲小说| 午夜欧美大尺度福利影院在线看| 蜜臀av性久久久久蜜臀aⅴ| 久久91精品国产91久久小草| 成人黄色小视频| 在线观看www91| 日韩一区二区高清| 国产女人aaa级久久久级| 一区二区三区在线视频免费观看| 亚洲www啪成人一区二区麻豆| 久久精品二区亚洲w码| 成人app在线观看| 91丨九色丨蝌蚪富婆spa| 欧美日韩大陆一区二区| 国产日韩欧美不卡| 亚洲一区二区三区国产| 久久精品国产精品亚洲综合| 国产精品羞羞答答xxdd| 色综合中文字幕| 555www色欧美视频| 久久新电视剧免费观看| 17c精品麻豆一区二区免费| 香蕉影视欧美成人| 九九**精品视频免费播放| jlzzjlzz国产精品久久| 日韩精品中文字幕在线不卡尤物| 亚洲免费观看高清| 国产自产高清不卡| 欧美日韩一区 二区 三区 久久精品 | 精品第一国产综合精品aⅴ| 中文字幕一区二区三区视频| 精品一区二区三区蜜桃| 欧美日韩mp4| 亚洲三级在线观看| 国产精品一区免费视频| 91精品国产综合久久精品麻豆| 国产精品热久久久久夜色精品三区 | 欧美日韩午夜在线| 国产精品国产三级国产aⅴ入口| 蜜臀av性久久久久蜜臀aⅴ四虎 | 欧美日本一区二区三区四区| 综合在线观看色| 懂色av中文一区二区三区| 日韩女优电影在线观看| 天天综合天天综合色| 在线免费观看视频一区| 亚洲免费观看高清完整版在线观看| 国产精品一区二区久久精品爱涩 | 91精品国产手机| 亚洲午夜精品在线| 91国模大尺度私拍在线视频| 中文字幕一区二区5566日韩| 国产超碰在线一区| 国产三级一区二区| 成人综合在线视频| 国产午夜亚洲精品羞羞网站| 国产美女在线观看一区| 久久先锋资源网| 国产精品一区二区你懂的| 国产婷婷色一区二区三区在线| 国产在线日韩欧美| 久久精品免视看| 99在线热播精品免费| 亚洲欧洲日韩在线| 91精品办公室少妇高潮对白| 一区二区三区欧美| 制服丝袜中文字幕一区| 三级欧美在线一区| 337p粉嫩大胆色噜噜噜噜亚洲| 国产在线不卡视频| 中文字幕在线一区| 日本精品一级二级| 午夜精品久久久久久久99樱桃| 日韩三级电影网址| 国产福利一区二区三区视频在线 | 制服丝袜在线91| 久久99国产精品麻豆| 国产亚洲欧洲一区高清在线观看| 国产a级毛片一区| 一区二区三区资源| 91精品国产综合久久久久久久| 国产一区二区三区蝌蚪| 国产精品你懂的| 欧美日韩一区二区欧美激情| 狠狠狠色丁香婷婷综合激情| 国产精品毛片久久久久久久| 在线观看一区二区视频| 免费观看日韩电影| 国产精品欧美一区喷水| 欧美欧美欧美欧美| 视频一区二区中文字幕| 一区二区免费视频| 色噜噜狠狠色综合欧洲selulu| 亚洲狠狠爱一区二区三区| 欧美一二三四在线| 久久这里都是精品| 精品99999| 日本丶国产丶欧美色综合| 三级欧美在线一区| 国产精品麻豆网站| 91精品国产全国免费观看| 国产精品性做久久久久久| 亚洲国产wwwccc36天堂| 亚洲国产岛国毛片在线| 91麻豆精品国产91久久久| 成人av免费网站| 国产在线不卡视频| 亚洲国产日韩综合久久精品| 亚洲国产精品二十页| 91精品国产91热久久久做人人| 91网站在线播放| 国产毛片精品国产一区二区三区| 亚洲第一搞黄网站| 国产精品高潮久久久久无| xf在线a精品一区二区视频网站| 91丨国产丨九色丨pron| 国产91精品一区二区麻豆亚洲| 日日夜夜精品视频免费| 中文字幕精品一区二区三区精品| 欧美巨大另类极品videosbest | 麻豆91免费观看| 亚洲一区欧美一区| 欧美高清在线视频| 久久久久久影视| 精品久久国产老人久久综合| 欧美精品乱码久久久久久按摩 | 日韩一区二区三区四区| 日本丶国产丶欧美色综合| eeuss鲁片一区二区三区| 国产毛片一区二区| 久久草av在线| 精品一区二区影视| 久久国产欧美日韩精品| 天天影视色香欲综合网老头| 亚洲一区二区三区视频在线播放 | 亚洲精品老司机| 国产精品美女久久久久久2018 | 欧美精品一二三区| 欧洲精品一区二区| 色综合天天综合| 一本大道综合伊人精品热热| 色综合久久久久综合体| 色婷婷综合五月| 一本色道久久综合狠狠躁的推荐| 99精品国产91久久久久久 | 日韩国产在线一| 爽好多水快深点欧美视频| 日韩综合一区二区| 日韩国产欧美三级| 美国欧美日韩国产在线播放| 国产一区999| 成人免费va视频| 不卡av电影在线播放| 日本乱人伦aⅴ精品| 97精品国产97久久久久久久久久久久| 91蜜桃网址入口| 欧美日韩你懂的| 日韩美女一区二区三区四区| 久久综合色一综合色88| 色婷婷国产精品| 国产精品久久久99| 亚洲一区二区三区四区在线免费观看 | 精品一区二区三区免费观看| 成人综合日日夜夜| 欧美在线观看视频在线| 555www色欧美视频| 欧美国产激情一区二区三区蜜月| 亚洲欧洲制服丝袜| 日韩综合一区二区| 国产成人小视频| 在线中文字幕一区二区| 精品少妇一区二区三区日产乱码| 国产午夜精品一区二区三区嫩草| 亚洲自拍偷拍网站| 蜜臀av性久久久久蜜臀aⅴ| 成人福利视频在线| 在线不卡一区二区| 国产精品久久久久久久久久久免费看| 依依成人综合视频| 国产一区二区三区四区五区入口 | 欧美成人aa大片| 亚洲私人黄色宅男| 精品一区二区三区香蕉蜜桃 | 日韩精品自拍偷拍| 一区二区三区在线影院|