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

📄 d12setup.lis

📁 usb开发(基于D12)。。湖南大学计算机与通信学院同学毕业设计及源代码!!好的很啊
💻 LIS
📖 第 1 页 / 共 4 页
字号:
                       ;             case 0x02 :
                       ;                 //?XmtBuff.wrLength = sizeof(USBStringDescription2);
                       ;                 //?XmtBuff.p = USBStringDescription2;
                       ;                break;
 0314                 L67:
 0314                   .dbline 392
                       ;             default   :
                       ;                 void_function();
 0314 E7DE              rcall _void_function
 0316                   .dbline 393
                       ;                 return;
 0316 03C0              rjmp L47
 0318                 X5:
 0318                   .dbline 395
                       ;             }
                       ;             break;
 0318                 L49:
 0318                   .dbline 397
                       ;         default :
                       ;             void_function();
 0318 E5DE              rcall _void_function
 031A                   .dbline 398
                       ;             return;
 031A 01C0              rjmp L47
 031C                 L50:
 031C                   .dbline 400
                       ;     }
                       ;     USB_submit();
 031C 00D0              rcall _USB_submit
 031E                   .dbline -2
 031E                   .dbline 401
                       ; }
 031E                 L47:
 031E 00D0              rcall pop_gset1
 0320                   .dbline 0 ; func end
 0320 0895              ret
 0322                   .dbsym r i 20 i
 0322                   .dbfunc s get_configuration _get_configuration fI
                         .even
 0322                 _get_configuration::
 0322                   .dbline -1
 0322                   .dbline 426
                       ; /************************************************************
                       ; **工程名称:U盘固件程序开发
                       ; **编译器类型及版本:ICCAVR 6.26C
                       ; **日期:2004.4.30
                       ; **创建人:陈驰
                       ; **所属单位:湖南大学计算机与通信学院
                       ; 
                       ; **芯片类型:AT90S8515,PDIUSUD12,K9F5608U0A-YCB0
                       ; **时钟频率:8MHZ
                       ; 
                       ; **函数功能:标准设备请求
                       ; **函数输入参数及说明:无
                       ; 
                       ; **函数返回值:无
                       ; **在本函数以外定义的变量:D12_COMMAND,D12_DATA
                       ; **调用的函数说明:
                       ;   USB_submit();
                       ;   控制端点提交函数
                       ;   
                       ; **修改人:陈驰
                       ; **修改日期:2004.4.30
                       ; **修改说明:创建
                       ; *************************************************************/
                       ; void get_configuration(void)
                       ; {
 0322                   .dbline 427
                       ;     XmtBuff.b[0] = 1;//返回是否被配置(非 0 为配置)
 0322 81E0              ldi R24,1
 0324 80930000          sts _XmtBuff,R24
 0328                   .dbline 428
                       ;     XmtBuff.wrLength = 16;
 0328 80E1              ldi R24,16
 032A 90E0              ldi R25,0
 032C 90934100          sts _XmtBuff+64+1,R25
 0330 80934000          sts _XmtBuff+64,R24
 0334                   .dbline 429
                       ;     XmtBuff.p_p=0;
 0334 2224              clr R2
 0336 20924600          sts _XmtBuff+70,R2
 033A                   .dbline 430
                       ;     XmtBuff.p = XmtBuff.b;
 033A 80E0              ldi R24,<_XmtBuff
 033C 90E0              ldi R25,>_XmtBuff
 033E 90934500          sts _XmtBuff+68+1,R25
 0342 80934400          sts _XmtBuff+68,R24
 0346                   .dbline 431
                       ;     USB_submit();
 0346 00D0              rcall _USB_submit
 0348                   .dbline -2
 0348                   .dbline 432
                       ; }
 0348                 L74:
 0348                   .dbline 0 ; func end
 0348 0895              ret
 034A                   .dbfunc s set_configuration _set_configuration fI
                       ;              j -> R20
                         .even
 034A                 _set_configuration::
 034A 00D0              rcall push_gset1
 034C                   .dbline -1
 034C                   .dbline 457
                       ; /************************************************************
                       ; **工程名称:U盘固件程序开发
                       ; **编译器类型及版本:ICCAVR 6.26C
                       ; **日期:2004.4.30
                       ; **创建人:陈驰
                       ; **所属单位:湖南大学计算机与通信学院
                       ; 
                       ; **芯片类型:AT90S8515,PDIUSUD12,K9F5608U0A-YCB0
                       ; **时钟频率:8MHZ
                       ; 
                       ; **函数功能:标准设备请求
                       ; **函数输入参数及说明:无
                       ; 
                       ; **函数返回值:无
                       ; **在本函数以外定义的变量:D12_COMMAND,D12_DATA
                       ; **调用的函数说明:
                       ;   USB_submit();
                       ;   控制端点提交函数
                       ;   
                       ; **修改人:陈驰
                       ; **修改日期:2004.4.30
                       ; **修改说明:创建
                       ; *************************************************************/
                       ; void set_configuration(void)
                       ; {
 034C                   .dbline 459
                       ;     unsigned char j;
                       ;     if (XmtBuff.b[0] == 0x00)
 034C 20900000          lds R2,_XmtBuff
 0350 2220              tst R2
 0352 51F5              brne L79
 0354                   .dbline 460
                       ;     {
 0354                   .dbline 461
                       ;         XmtBuff.wrLength = 0;
 0354 2224              clr R2
 0356 3324              clr R3
 0358 30924100          sts _XmtBuff+64+1,R3
 035C 20924000          sts _XmtBuff+64,R2
 0360                   .dbline 462
                       ;         USB_submit();
 0360 00D0              rcall _USB_submit
 0362                   .dbline 463
                       ;         j = XmtBuff.b[2];
 0362 40910200          lds R20,_XmtBuff+2
 0366                   .dbline 464
                       ;         D12_COMMAND = 0xd8;
 0366 88ED              ldi R24,216
 0368 8093017C          sts 31745,R24
 036C                   .dbline 465
                       ;         if(j == 0x00)
 036C 4423              tst R20
 036E 21F4              brne L83
 0370                   .dbline 466
                       ;         {
 0370                   .dbline 467
                       ;             D12_DATA = 0x00;  // 停止普通/同步端点
 0370 2224              clr R2
 0372 2092007C          sts 31744,R2
 0376                   .dbline 468
 0376 15C0              rjmp L84
 0378                 L83:
 0378                   .dbline 468
                       ;         }else if(j == 0x01)
 0378 4130              cpi R20,1
 037A 99F4              brne L85
 037C                   .dbline 469
                       ;         {
 037C                   .dbline 470
                       ;             D12_DATA = 0x01;  // 使能普通/同步端点
 037C 81E0              ldi R24,1
 037E 8093007C          sts 31744,R24
 0382                   .dbline 471
                       ;             cwait;
 0382 0000              nop
 0384                   .dbline 472
                       ;             D12_COMMAND = 0x03;
 0384 83E0              ldi R24,3
 0386 8093017C          sts 31745,R24
 038A                   .dbline 473
                       ;             cwait;
 038A 0000              nop
 038C                   .dbline 474
                       ;             D12_COMMAND = 0xfa;// 设置 IN 缓冲区有效(满标志)
 038C 8AEF              ldi R24,250
 038E 8093017C          sts 31745,R24
 0392                   .dbline 475
                       ;             cwait;
 0392 0000              nop
 0394                   .dbline 476
                       ;             D12_COMMAND = 0x05;
 0394 85E0              ldi R24,5
 0396 8093017C          sts 31745,R24
 039A                   .dbline 477
                       ;             cwait;
 039A 0000              nop
 039C                   .dbline 478
                       ;             D12_COMMAND = 0xfa;// 设置 IN 缓冲区有效(满标志)
 039C 8AEF              ldi R24,250
 039E 8093017C          sts 31745,R24
 03A2                   .dbline 479
                       ;         }
 03A2                 L85:
 03A2                 L84:
 03A2                   .dbline 480
                       ;         csram;
 03A2 609301FC          sts 0xfc01,R22
 03A6                   .dbline 480
 03A6                   .dbline 481
                       ;    }
 03A6 01C0              rjmp L80
 03A8                 L79:
 03A8                   .dbline 483
 03A8 9DDE              rcall _void_function
 03AA                 L80:
 03AA                   .dbline -2
 03AA                   .dbline 484
                       ;     else
                       ;         void_function();
                       ; }
 03AA                 L78:
 03AA 00D0              rcall pop_gset1
 03AC                   .dbline 0 ; func end
 03AC 0895              ret
 03AE                   .dbsym r j 20 c
 03AE                   .dbfunc s get_interface _get_interface fI
                         .even
 03AE                 _get_interface::
 03AE                   .dbline -1
 03AE                   .dbline 509
                       ; /************************************************************
                       ; **工程名称:U盘固件程序开发
                       ; **编译器类型及版本:ICCAVR 6.26C
                       ; **日期:2004.4.30
                       ; **创建人:陈驰
                       ; **所属单位:湖南大学计算机与通信学院
                       ; 
                       ; **芯片类型:AT90S8515,PDIUSUD12,K9F5608U0A-YCB0
                       ; **时钟频率:8MHZ
                       ; 
                       ; **函数功能:标准设备请求
                       ; **函数输入参数及说明:无
                       ; 
                       ; **函数返回值:无
                       ; **在本函数以外定义的变量:传输结构体
                       ; **调用的函数说明:
                       ;   USB_submit();
                       ;   控制端点提交函数
                       ;   
                       ; **修改人:陈驰
                       ; **修改日期:2004.4.30
                       ; **修改说明:创建
                       ; *************************************************************/
                       ; void get_interface(void)
                       ; {
 03AE                   .dbline 510
                       ;     XmtBuff.b[0] = 0;
 03AE 2224              clr R2
 03B0 20920000          sts _XmtBuff,R2
 03B4                   .dbline 511
                       ;     XmtBuff.wrLength = 1;
 03B4 81E0              ldi R24,1
 03B6 90E0              ldi R25,0
 03B8 90934100          sts _XmtBuff+64+1,R25
 03BC 80934000          sts _XmtBuff+64,R24
 03C0                   .dbline 512
                       ;     XmtBuff.p_p=0;
 03C0 20924600          sts _XmtBuff+70,R2
 03C4                   .dbline 513
                       ;     XmtBuff.p = XmtBuff.b;
 03C4 80E0              ldi R24,<_XmtBuff
 03C6 90E0              ldi R25,>_XmtBuff
 03C8 90934500          sts _XmtBuff+68+1,R25
 03CC 80934400          sts _XmtBuff+68,R24
 03D0                   .dbline 514
                       ;     USB_submit();
 03D0 00D0              rcall _USB_submit
 03D2                   .dbline -2
 03D2                   .dbline 515
                       ; }
 03D2                 L87:
 03D2                   .dbline 0 ; func end
 03D2 0895              ret
 03D4                   .dbfunc s set_interface _set_interface fI
                         .even
 03D4                 _set_interface::
 03D4                   .dbline -1
 03D4                   .dbline 540
                       ; /************************************************************
                       ; **工程名称:U盘固件程序开发
                       ; **编译器类型及版本:ICCAVR 6.26C
                       ; **日期:2004.4.30
                       ; **创建人:陈驰
                       ; **所属单位:湖南大学计算机与通信学院
                       ; 
                       ; **芯片类型:AT90S8515,PDIUSUD12,K9F5608U0A-YCB0
                       ; **时钟频率:8MHZ
                       ; 
                       ; **函数功能:标准设备请求
                       ; **函数输入参数及说明:无
                       ; 
                       ; **函数返回值:无
                       ; **在本函数以外定义的变量:传输结构体
                       ; **调用的函数说明:
                       ;   USB_submit();
                       ;   控制端点提交函数
                       ;   
                       ; **修改人:陈驰
                       ; **修改日期:2004.4.30
                       ; **修改说明:创建
                       ; *************************************************************/
                       ; void set_interface(void)
                       ; {
 03D4                   .dbline 541
                       ;     XmtBuff.wrLength = 0;
 03D4 2224              clr R2
 03D6 3324              clr R3
 03D8 30924100          sts _XmtBuff+64+1,R3
 03DC 20924000          sts _XmtBuff+64,R2
 03E0                   .dbline 542
                       ;     USB_submit();
 03E0 00D0              rcall _USB_submit
 03E2                   .dbline -2
 03E2                   .dbline 543
                       ; }
 03E2                 L91:
 03E2                   .dbline 0 ; func end
 03E2 0895              ret
                         .area bss(ram, con, rel)
 0000                   .dbfile G:\source\D12Setup.c
 0000                 _XmtBuff::
 0000                   .blkb 71
 0047                   .dbsym s XmtBuff _XmtBuff X
                         .area func_lit
 0000 EA01            PL_set_interface: .word `_set_interface
 0002 D701            PL_get_interface: .word `_get_interface
 0004 A501            PL_set_configuration: .word `_set_configuration
 0006 9101            PL_get_configuration: .word `_get_configuration
 0008 2F01            PL_get_descriptor:    .word `_get_descriptor
 000A 1A01            PL_set_address:   .word `_set_address
 000C E700            PL_set_feature:   .word `_set_feature
 000E 7200            PL_void_function: .word `_void_function
 0010 B500            PL_clear_feature: .word `_clear_feature
 0012 8800            PL_get_status:    .word `_get_status

⌨️ 快捷键说明

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