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

📄 chap_9.lst

📁 usblab usb程序开发实验 一个实例
💻 LST
📖 第 1 页 / 共 2 页
字号:
C51 COMPILER V8.01   CHAP_9                                                                04/24/2006 19:23:08 PAGE 1   


C51 COMPILER V8.01, COMPILATION OF MODULE CHAP_9
OBJECT MODULE PLACED IN CHAP_9.OBJ
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE CHAP_9.C BROWSE DEBUG OBJECTEXTEND

line level    source

   1          /*
   2             //************************************************************************* //
   3             //                  
   4             //
   5             //           COPYRIGHT (c)   2006 BY FOSHAN LX.
   6             //                     --  ALL RIGHTS RESERVED  --
   7             //
   8             // File Name:        CHAP_9.C
   9             // Author:           guobin
  10             // Created:          2006/04/20
  11             // Modified:
  12             // Revision:         2.0
  13             //
  14             //*************************************************************************
  15          */
  16          
  17          #include <stdio.h>
  18          #include <string.h>
  19          
  20          #include "hardware.h"
  21          
  22          #include "d12ci.h"
  23          #include "mainloop.h"
  24          #include "usb100.h"
  25          #include "chap_9.h"
  26          
  27          #if 0
              #define NUM_ENDPOINTS   2
              
              #define CONFIG_DESCRIPTOR_LENGTH    sizeof(USB_CONFIGURATION_DESCRIPTOR) \
                                                                                      + sizeof(USB_INTERFACE_DESCRIPTOR) \
                                                                                      + (NUM_ENDPOINTS * sizeof(USB_ENDPOINT_DESCRIPTOR))
              
              extern CONTROL_XFER ControlData;
              extern EPPFLAGS bEPPflags;
              
              code USB_DEVICE_DESCRIPTOR DeviceDescr =
              {
                      sizeof(USB_DEVICE_DESCRIPTOR),
                      USB_DEVICE_DESCRIPTOR_TYPE,
                      SWAP(0x0100),
                      USB_CLASS_CODE_TEST_CLASS_DEVICE,
                      0, 0,
                      EP0_PACKET_SIZE,
                      SWAP(0x0471),
                      SWAP(0xFFFF),
                      SWAP(0x0100),
                      0, 0, 0,
                      1
              };
              
              code USB_CONFIGURATION_DESCRIPTOR ConfigDescr =
              {
                      sizeof(USB_CONFIGURATION_DESCRIPTOR),
                      USB_CONFIGURATION_DESCRIPTOR_TYPE,
C51 COMPILER V8.01   CHAP_9                                                                04/24/2006 19:23:08 PAGE 2   

                      SWAP(CONFIG_DESCRIPTOR_LENGTH),
                      1,
                      1,
                      0,
                      0x60,
                      0x1
              };
              
              code USB_INTERFACE_DESCRIPTOR InterfaceDescr =
              {
                      sizeof(USB_INTERFACE_DESCRIPTOR),
                      USB_INTERFACE_DESCRIPTOR_TYPE,
                      0,
                      0,
                      NUM_ENDPOINTS,
                      USB_CLASS_CODE_TEST_CLASS_DEVICE,
                      USB_SUBCLASS_CODE_TEST_CLASS_D12,
                      USB_PROTOCOL_CODE_TEST_CLASS_D12,
                      0
              };
              
              
              code USB_ENDPOINT_DESCRIPTOR EP1_TXDescr =
              {
                      sizeof(USB_ENDPOINT_DESCRIPTOR),
                      USB_ENDPOINT_DESCRIPTOR_TYPE,
                      0x81,
                      USB_ENDPOINT_TYPE_INTERRUPT,
                      SWAP(EP1_PACKET_SIZE),
                      0
              };
              
              code USB_ENDPOINT_DESCRIPTOR EP1_RXDescr =
              {
                      sizeof(USB_ENDPOINT_DESCRIPTOR),
                      USB_ENDPOINT_DESCRIPTOR_TYPE,
                      0x1,
                      USB_ENDPOINT_TYPE_INTERRUPT,
                      SWAP(EP1_PACKET_SIZE),
                      0
              };
              
              code USB_ENDPOINT_DESCRIPTOR EP2_TXDescr =
              {
                      sizeof(USB_ENDPOINT_DESCRIPTOR),
                      USB_ENDPOINT_DESCRIPTOR_TYPE,
                      0x82,
                      USB_ENDPOINT_TYPE_BULK,
                      SWAP(EP2_PACKET_SIZE),
                      10
              };
              
              code USB_ENDPOINT_DESCRIPTOR EP2_RXDescr =
              {
                      sizeof(USB_ENDPOINT_DESCRIPTOR),
                      USB_ENDPOINT_DESCRIPTOR_TYPE,
                      0x2,
                      USB_ENDPOINT_TYPE_BULK,
                      SWAP(EP2_PACKET_SIZE),
                      10
              };
              #else
C51 COMPILER V8.01   CHAP_9                                                                04/24/2006 19:23:08 PAGE 3   

 118          #define NUM_ENDPOINTS   4
 119          
 120          #define CONFIG_DESCRIPTOR_LENGTH    sizeof(USB_CONFIGURATION_DESCRIPTOR) \
 121                                                                                  + sizeof(USB_INTERFACE_DESCRIPTOR) \
 122                                                                                  + (NUM_ENDPOINTS * sizeof(USB_ENDPOINT_DESCRIPTOR))
 123          
 124          extern CONTROL_XFER ControlData;
 125          extern EPPFLAGS bEPPflags;
 126          
 127          code USB_DEVICE_DESCRIPTOR DeviceDescr =
 128          {
 129                  sizeof(USB_DEVICE_DESCRIPTOR),
 130              USB_DEVICE_DESCRIPTOR_TYPE,
 131              SWAP(0x0100),
 132              USB_CLASS_CODE_TEST_CLASS_DEVICE,
 133              0, 0,
 134                  EP0_PACKET_SIZE,
 135                  SWAP(0x0471),
 136                  SWAP(0x0888),
 137                  SWAP(0x0100),
 138              0, 0, 0,
 139                  1
 140          };
 141          
 142          code USB_CONFIGURATION_DESCRIPTOR ConfigDescr =
 143          {
 144              sizeof(USB_CONFIGURATION_DESCRIPTOR),
 145              USB_CONFIGURATION_DESCRIPTOR_TYPE,
 146              SWAP(CONFIG_DESCRIPTOR_LENGTH),
 147                  1,
 148                  1,
 149              0,
 150              0x60,//0x9F,   //   0x80,
 151                  0xC8//0x32
 152          };
 153          
 154          code USB_INTERFACE_DESCRIPTOR InterfaceDescr =
 155          {
 156              sizeof(USB_INTERFACE_DESCRIPTOR),
 157              USB_INTERFACE_DESCRIPTOR_TYPE,
 158              0,
 159              0,
 160                  NUM_ENDPOINTS,
 161                  USB_CLASS_CODE_TEST_CLASS_DEVICE,
 162                  USB_SUBCLASS_CODE_TEST_CLASS_D12,
 163                  USB_PROTOCOL_CODE_TEST_CLASS_D12,
 164                  0
 165          };
 166          
 167          code USB_ENDPOINT_DESCRIPTOR EP1_TXDescr =
 168          {
 169                  sizeof(USB_ENDPOINT_DESCRIPTOR),
 170                  USB_ENDPOINT_DESCRIPTOR_TYPE,
 171                  0x81,
 172                  USB_ENDPOINT_TYPE_INTERRUPT,
 173                  SWAP(EP1_PACKET_SIZE),
 174                  10
 175          };
 176          
 177          code USB_ENDPOINT_DESCRIPTOR EP1_RXDescr =
 178          {
 179                  sizeof(USB_ENDPOINT_DESCRIPTOR),
C51 COMPILER V8.01   CHAP_9                                                                04/24/2006 19:23:08 PAGE 4   

 180                  USB_ENDPOINT_DESCRIPTOR_TYPE,
 181                  0x1,
 182                  USB_ENDPOINT_TYPE_INTERRUPT,
 183                  SWAP(EP1_PACKET_SIZE),
 184                  10
 185          };
 186          
 187          code USB_ENDPOINT_DESCRIPTOR EP2_TXDescr =
 188          {

⌨️ 快捷键说明

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