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

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

?? usb_drv.lis

?? 單片機USB接口模擬鍵盤,該程序可以控制PC機的PS/2鍵盤的NUM LOCK和SCROLL LOCK的燈,以此說明通訊正常
?? LIS
?? 第 1 頁 / 共 5 頁
字號:
 0012           ; Control Transfer Data Size
 0012           ;----------------------------------------------------------------------------
                EXPORT USB_TransferSize, _USB_TransferSize
 0012            USB_TransferSize:
 0012            _USB_TransferSize:                    BLK   2
 0014           ;----------------------------------------------------------------------------
 0014           ; Control Transfer Data Pointer
 0014           ;   Source for Control Read
 0014           ;   Destination for Control Write
 0014           ;----------------------------------------------------------------------------
                EXPORT USB_DataPtr, _USB_DataPtr
 0014            USB_DataPtr:
 0014            _USB_DataPtr:                         BLK   2
 0016           ;----------------------------------------------------------------------------
 0016           ; Transfer Completion Notification
 0016           ;----------------------------------------------------------------------------
                EXPORT USB_StatusBlockPtr, _USB_StatusBlockPtr
 0016            USB_StatusBlockPtr:
 0016            _USB_StatusBlockPtr:                  BLK   2
 0018           ;----------------------------------------------------------------------------
 0018           ; Control Transfer _TransferByteCount (Actually transfered)
 0018           ;----------------------------------------------------------------------------
 0018            USB_TransferByteCount:                 BLK   2
 001A           ;----------------------------------------------------------------------------
 001A           ; Control Endpoint Data toggle
                EXPORT USB_EPDataToggle
 001A            USB_EPDataToggle:
 001A            USB_EP0DataToggle:                     BLK   1
 001B           ;----------------------------------------------------------------------------
 001B           ; Control Endpoint Data Pending Flag
                EXPORT USB_fDataPending
 001B            USB_fDataPending:                      BLK   1
 001C           ;----------------------------------------------------------------------------
 001C           ; Control Endpoint Data Pending Flag
 001C           ;EXPORT USB_PendingData
 001C           ; USB_PendingData:                      BLK   1
 001C           ;----------------------------------------------------------------------------
 001C           ; Temporary Data registers
                EXPORT USB_t2, USB_t1, USB_t0
 001C            USB_t2:                                BLK   1    ; Temporary shared by the UM
 001D            USB_t1:                                BLK   1    ; Temporary shared by the UM
 001E            USB_t0:                                BLK   1    ; Temporary shared by the UM
 001F           ;----------------------------------------------------------------------------
 001F           ; Endpoint Transfer--API Status
 001F           ;----------------------------------------------------------------------------
                EXPORT USB_EndpointAPIStatus, _USB_EndpointAPIStatus
 001F            USB_EndpointAPIStatus:
 001F           _USB_EndpointAPIStatus:                 BLK   USB_NUM_ENDPOINTS    ; Endpoint Status
 0022           
                AREA UserModules (ROM, REL)
                ;-----------------------------------------------------------------------------
                ;  FUNCTION NAME: USB_EP0_ISR
                
                ;
                ;  DESCRIPTION:   The EPO ISR serves the control endpoint interrupts and
                ;                 dispaches all SETUP, IN, and OUT transfers to the proper
                ;                 dispatch routines for all supported USB requests.
                ;
                ;-----------------------------------------------------------------------------
                ;
                ;  ARGUMENTS:   n/a
                ;
                ;  RETURNS:     n/a
                ;
                ;  SIDE EFFECTS: REGISTERS ARE VOLATILE: THE A AND X REGISTERS MAY BE MODIFIED!
                ;
                ;  THEORY of OPERATION or PROCEDURE:
                ;
                ;-----------------------------------------------------------------------------
 0000            USB_EP0_ISR:
 0000           _USB_EP0_ISR:
 0000 08            PUSH    A                          ; Save the context
 0001 10            PUSH    X                          ;
 0002               ; Dispatch to setup/in/out handlers
                EXPORT  USB_mode_read
 0002           USB_mode_read:
 0002 5D44         MOV    A, REG[USB_EP0MODE]           ; Get the mode reg
 0004           
 0004           ; MSB is the SETUP bit, followed by IN, then OUT
 0004 64            asl    a                           ; Shift to the carry and jump if SETUP bit set
 0005 C011          jc      USB_EP0_Setup
 0007           
 0007 64            asl    a                           ; Shift to the carry and jump if IN bit set
 0008 C02E          jc      USB_EP0_IN
 000A           
 000A 64            asl    a                           ; Shift to the carry and jump if OUT bit set
 000B C037          jc     USB_EP0_OUT
 000D 8258          JMP    USB_Not_Supported_Local_Drv
 000F           ; ISR Exit Point to update the mode register
 000F           ;   mode and count have been pushed onto the stack
                EXPORT USB_EP0_UPD_MODE_EXIT
 000F           USB_EP0_UPD_MODE_EXIT:
 000F           
 000F 6041          MOV    REG[USB_EP0CNT], A          ; Update the count
 0011 5B            MOV    A, X                        ; Get the new mode
 0012 6044          MOV    REG[USB_EP0MODE], A         ; Update the node
 0014           
 0014           USB_EP0_ISR_EXIT:
 0014           
 0014 20            POP X                              ;
 0015 18            POP A                              ; Restore Context
 0016 7E            RETI
 0017           ;-----------------------------------------------------------------------------
 0017           ;  FUNCTION NAME: USB_EP0_Setup
 0017           ;
 0017           ;  DESCRIPTION:   Dispatch a USB SETUP
 0017           ;
 0017           ;-----------------------------------------------------------------------------
 0017            USB_EP0_Setup:
 0017           _USB_EP0_Setup:
 0017           ; Check the byte count and validity.  All SETUP are 8 bytes and 0 toggle
 0017 08            PUSH    A                          ; Save the mode register
 0018 5002          MOV     A, USB_XFER_PREMATURE      ; Return a Premature Completion?
 001A 91DA          CALL    USB_UpdateStatusBlock
 001C 18            POP     A                          ; Restore the mode register
 001D 5D41          MOV    A, REG[USB_EP0CNT]                ; Get the count reg
 001F 394A          CMP    A, (USB_CNT_VALID | 0x0A)
 0021 A003          JZ      .dispatch
 0023           
 0023 8242          JMP    USB_Not_Supported_Local_Drv
 0025           ;-----------------------------------------------------------------------------
 0025           ; Jump here to dispatch the request
 0025           ; The SETUP request is encoded in [bmRequestType]. Among the 8 bits in [bmRequestType], only bits
 0025           ; 7,6,5,1,0 determine what the request is. Bits [2:4] are default to zero. The below code
 0025           ; re-organizes [bmRequestType] to the following format:
 0025           ; ( Zero, Zero, Bit7, Bit6, Bit5, Bit1, Bit0, Zero ), and depending on the value of this
 0025           ; "re-organization", the firmware will jump to an appropriate table to handle the request.
 0025           ;-----------------------------------------------------------------------------
 0025           .dispatch:
 0025 5D50          MOV     A, REG[USB_EP0DATA+bmRequestType]   ; Get bmRequestType
 0027 21E3          AND     A, E3h                           ; clear bits 4-3-2, these unused for our purposes
 0029 08            PUSH    A                                ; store value on the stack
 002A 67            ASR     A                                ; move bits 7-6-5 into 4-3-2's place
 002B 67            ASR     A                                ; "asr" instruction shift all bits one place to the right.
 002C 67            ASR     A                                ; Bit7 remains the same.
 002D 531C          MOV     [USB_t2], A                      ; store shifted value
 002F 18            POP     A                                ; get original value
 0030 2A1C          OR      A, [USB_t2]                      ; or the two to get the 5-bit field
 0032 211F          AND     A, 1Fh                           ; clear bits 7-6-5 (asr wraps bit7)
 0034                                                        ; Bit0 is loaded with a Zero. This results in multiplying
 0034                                                        ; the accumulator by 2, and the reason to mutiply it by 2
 0034                                                        ; is that each "jmp" instruction in the tables is two bytes long.
 0034           
 0034 7D025D        LJMP USB_bmRequestType_Dispatch
 0037           ;-----------------------------------------------------------------------------
 0037           ;  FUNCTION NAME: USB_EP0_IN
 0037           ;
 0037           ;  DESCRIPTION:   Dispatch a USB IN
 0037           ;
 0037           ;-----------------------------------------------------------------------------
 0037            USB_EP0_IN:
 0037           _USB_EP0_IN:
 0037           
 0037 5108          MOV     A, [USB_TransferType]
 0039           USB_ControlInDispatch:
 0039 E001          JACC    USB_ControlInDispatchTable
 003B           USB_ControlInDispatchTable:
 003B 822A          JMP     USB_Not_Supported_Local_Drv  ; USB_TRANS_STATE_IDLE
 003D 8037          JMP     USB_ControlReadDataStage     ; USB_TRANS_STATE_CONTROL_READ
 003F 80AD          JMP     USB_ControlWriteStatusStage  ; USB_TRANS_STATE_CONTROL_WRITE
 0041 80B8          JMP     USB_NoDataControlStatusStage ; USB_TRANS_STATE_NO_DATA_CONTROL
 0043           ;-----------------------------------------------------------------------------
 0043           ;  FUNCTION NAME: USB_EP0_OUT
 0043           ;
 0043           ;  DESCRIPTION:   Dispatch a USB OUT
 0043           ;
 0043           ;-----------------------------------------------------------------------------
 0043            USB_EP0_OUT:
 0043           _USB_EP0_OUT:
 0043 5108          MOV     A, [USB_TransferType]
 0045 E001          JACC    USB_ControlOutDispatchTable
 0047           USB_ControlOutDispatchTable:
 0047 821E          JMP     USB_Not_Supported_Local_Drv  ; USB_TRANS_STATE_IDLE
 0049 802D          JMP     USB_ControlReadStatusStage   ; USB_TRANS_STATE_CONTROL_READ
 004B 805E          JMP     USB_ControlWriteDataStage    ; USB_TRANS_STATE_CONTROL_WRITE
 004D 80C6          JMP     USB_NoDataControlError       ; USB_TRANS_STATE_NO_DATA_CONTROL
 004F           ;-----------------------------------------------------------------------------
 004F           ;  FUNCTION NAME: USB_InitControlRead
 004F           ;
 004F           ;  DESCRIPTION:   This routine initializes a control read.  It must be JUMPed to,
 004F           ;                 not called.  It assumes a tranfer descriptor has been loaded
 004F           ;                 into the driver USB_CurrentTD data structure.
 004F           ;
 004F           ;-----------------------------------------------------------------------------
 004F            USB_InitControlRead:
 004F 5307          MOV     [USB_LastSize], A          ; Save the packet size?
 0051 91B9          CALL    USB_InitializeStatusBlock
 0053 550802        MOV     [USB_TransferType], USB_TRANS_STATE_CONTROL_READ
 0056           
 0056               ; Check the transfer size against the request size
 0056 5D57          MOV    A, REG[USB_EP0DATA+wLengthHi] ; MSB of wLength
 0058 3A12          CMP    A, [USB_TransferSize]
 005A B007          JNZ    .L1
 005C           
 005C 5D56          MOV    A, REG[USB_EP0DATA+wLengthLo] ; LSB of wLength
 005E 3A13          CMP    A, [USB_TransferSize+1]
 0060 A009          JZ     .L9
 0062           .L1:
 0062 D007          JNC    .L9
 0064           ;
 0064 5313          MOV    [USB_TransferSize+1], A     ;
 0066 5D57          MOV    A, REG[USB_EP0DATA+wLengthHi] ;
 

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
成人综合在线视频| 99国产一区二区三精品乱码| 国产乱对白刺激视频不卡| 91免费看片在线观看| 91精品国产高清一区二区三区蜜臀| 久久久91精品国产一区二区精品 | 丁香婷婷综合网| 91精品黄色片免费大全| 亚洲精品成人天堂一二三| 国产精品亚洲一区二区三区妖精| 欧美日韩aaaaaa| 一区二区三区中文在线观看| 丰满亚洲少妇av| 久久网站最新地址| 成人一级片在线观看| 91精品国产综合久久精品| 日韩伦理电影网| 成人毛片老司机大片| 久久久久久久性| 精品无人码麻豆乱码1区2区| 91麻豆精品国产91久久久久久久久| 亚洲欧美日韩一区| eeuss国产一区二区三区| 国产亚洲婷婷免费| 国产精品一卡二卡在线观看| 精品成人a区在线观看| 老司机精品视频导航| 日韩精品一区二| 精品一二三四区| 日韩精品一区二区在线观看| 久久精品国产成人一区二区三区 | 国产午夜一区二区三区| 久久精品99久久久| 精品国产污网站| 国产在线不卡视频| 久久久天堂av| 不卡电影一区二区三区| 亚洲欧美中日韩| 欧美视频中文字幕| 日本伊人色综合网| 国产三级精品在线| av亚洲精华国产精华精华| 亚洲日本护士毛茸茸| 欧美吞精做爰啪啪高潮| 首页亚洲欧美制服丝腿| 日韩女优av电影| 国产麻豆精品一区二区| 久草在线在线精品观看| 久久久亚洲精品一区二区三区| 国产成人在线免费观看| 国产精品伦理一区二区| 欧美四级电影在线观看| 免费一级片91| 久久久久久久网| 色诱亚洲精品久久久久久| 亚洲成av人片在线观看无码| 日韩欧美电影在线| 成人av在线资源网| 亚洲成av人在线观看| 久久影院视频免费| 日本高清不卡aⅴ免费网站| 亚洲第一福利一区| 26uuu欧美日本| 色综合一个色综合| 久草在线在线精品观看| 亚洲色欲色欲www| 91精品国产综合久久精品麻豆 | 国产三级精品三级在线专区| 91久久线看在观草草青青| 麻豆专区一区二区三区四区五区| 国产欧美日韩另类视频免费观看| 91久久精品一区二区| 国产一区二区免费视频| 一区二区免费看| 久久久久久久精| 欧美日韩国产影片| 成人av在线影院| 麻豆精品新av中文字幕| 亚洲啪啪综合av一区二区三区| 日韩欧美精品在线视频| 欧美性大战久久久久久久| 国v精品久久久网| 蜜乳av一区二区| 亚洲综合一区二区| 中文字幕亚洲在| 国产亚洲一区二区三区在线观看| 欧美日韩在线观看一区二区 | 国产美女精品一区二区三区| 亚洲电影视频在线| 亚洲免费色视频| 国产精品美女久久久久av爽李琼| 日韩网站在线看片你懂的| 在线视频一区二区三区| 成人av午夜影院| 国产另类ts人妖一区二区| 久久av中文字幕片| 蜜臀久久久99精品久久久久久| 亚洲精品成人在线| 亚洲美女在线国产| **性色生活片久久毛片| 国产精品午夜电影| 国产日韩欧美一区二区三区乱码| 精品国产电影一区二区| 日韩欧美的一区| 91精品国产黑色紧身裤美女| 91麻豆精品91久久久久久清纯| 欧美三级午夜理伦三级中视频| 一本到不卡免费一区二区| 国产伦精品一区二区三区视频青涩 | 一本色道久久综合精品竹菊| 成人黄色片在线观看| 国产99久久久国产精品潘金网站| 国内精品不卡在线| 国产一区二区三区电影在线观看| 激情综合色丁香一区二区| 麻豆91免费看| 国产一区二区三区精品欧美日韩一区二区三区| 首页亚洲欧美制服丝腿| 青青草一区二区三区| 视频一区免费在线观看| 91亚洲精品久久久蜜桃网站| 91蜜桃传媒精品久久久一区二区| 99国产精品久| 欧美亚洲丝袜传媒另类| 欧美伦理影视网| 日韩欧美国产精品| 欧美经典三级视频一区二区三区| 国产欧美精品一区二区色综合| 国产欧美一区二区精品性色| 亚洲欧洲韩国日本视频| 亚洲一区在线观看免费 | 一区二区三区日韩| 首页综合国产亚洲丝袜| 久久国产人妖系列| 成人激情午夜影院| 欧美日韩美少妇| 精品久久久网站| 亚洲日本在线观看| 午夜精品久久久久影视| 精品一区二区三区免费观看| 国产91丝袜在线观看| 欧美亚洲国产怡红院影院| 欧美一区二区精品在线| 国产欧美一区二区精品性色| 一区二区三区四区视频精品免费 | 精品日韩一区二区三区| 国产精品午夜免费| 天堂影院一区二区| 国产大陆a不卡| 在线观看中文字幕不卡| 精品国产1区2区3区| 亚洲黄一区二区三区| 另类小说图片综合网| 成人av在线一区二区| 51精品秘密在线观看| 亚洲欧洲精品一区二区精品久久久| 日韩精品一区第一页| 成人动漫视频在线| 日韩一区二区免费电影| 成人免费视频在线观看| 极品销魂美女一区二区三区| 在线免费观看不卡av| 国产片一区二区三区| 日日夜夜免费精品视频| 成人av网站大全| 亚洲精品一区在线观看| 亚洲一区视频在线| 床上的激情91.| 日韩一区二区在线观看| 一区二区三区美女视频| 国产91丝袜在线播放0| 日韩欧美国产一区二区在线播放| 伊人色综合久久天天| zzijzzij亚洲日本少妇熟睡| 日韩视频免费观看高清完整版| 一区二区三区在线观看视频| 成人性视频免费网站| www日韩大片| 久久不见久久见免费视频1| 欧美日本一区二区在线观看| 亚洲黄色av一区| 色综合色狠狠天天综合色| 中文字幕乱码日本亚洲一区二区| 视频一区国产视频| 欧美精品高清视频| 夜色激情一区二区| 99久久99久久精品免费观看 | 99re这里只有精品6| 国产精品午夜电影| 国产成人午夜精品5599| 欧美激情中文字幕一区二区| 国产一区二区三区视频在线播放| 日韩视频免费观看高清完整版| 日韩精品电影一区亚洲| 欧美日韩国产综合一区二区| 午夜视频一区在线观看| 777欧美精品| 麻豆精品视频在线观看视频| 日韩一区二区影院| 韩国一区二区三区|