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

📄 d12ci.lst

📁 飞利浦usb D12芯片fireware 源程序
💻 LST
📖 第 1 页 / 共 5 页
字号:
C51 COMPILER V8.02   D12CI                                                                 07/27/2007 11:10:49 PAGE 1   


C51 COMPILER V8.02, COMPILATION OF MODULE D12CI
OBJECT MODULE PLACED IN D12CI.OBJ
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE D12CI.C LARGE BROWSE DEBUG OBJECTEXTEND CODE LISTINCLUDE SYMBOLS

line level    source

   1          /*
   2             //*************************************************************************
   3             //
   4             //                  P H I L I P S   P R O P R I E T A R Y
   5             //
   6             //           COPYRIGHT (c)   1997 BY PHILIPS SINGAPORE.
   7             //                     --  ALL RIGHTS RESERVED  --
   8             //
   9             // File Name:        D12CI.C
  10             // Author:           Wenkai Du
  11             // Created:          8 Jun 98
  12             // Modified:
  13             // Revision:         2.2
  14             //
  15             //*************************************************************************
  16             //
  17             // 98/11/27      I/O mode Main endpoints read/write update (WK)
  18             // 98/12/2       Added D12_ReadMainEndpoint (WK)
  19             //*************************************************************************
  20             */
  21          #ifdef __C51__
  22          #include <reg51.h>                /* special function register declarations   */
   1      =1  /*--------------------------------------------------------------------------
   2      =1  REG51.H
   3      =1  
   4      =1  Header file for generic 80C51 and 80C31 microcontroller.
   5      =1  Copyright (c) 1988-2002 Keil Elektronik GmbH and Keil Software, Inc.
   6      =1  All rights reserved.
   7      =1  --------------------------------------------------------------------------*/
   8      =1  
   9      =1  #ifndef __REG51_H__
  10      =1  #define __REG51_H__
  11      =1  
  12      =1  /*  BYTE Register  */
  13      =1  sfr P0   = 0x80;
  14      =1  sfr P1   = 0x90;
  15      =1  sfr P2   = 0xA0;
  16      =1  sfr P3   = 0xB0;
  17      =1  sfr PSW  = 0xD0;
  18      =1  sfr ACC  = 0xE0;
  19      =1  sfr B    = 0xF0;
  20      =1  sfr SP   = 0x81;
  21      =1  sfr DPL  = 0x82;
  22      =1  sfr DPH  = 0x83;
  23      =1  sfr PCON = 0x87;
  24      =1  sfr TCON = 0x88;
  25      =1  sfr TMOD = 0x89;
  26      =1  sfr TL0  = 0x8A;
  27      =1  sfr TL1  = 0x8B;
  28      =1  sfr TH0  = 0x8C;
  29      =1  sfr TH1  = 0x8D;
  30      =1  sfr IE   = 0xA8;
  31      =1  sfr IP   = 0xB8;
  32      =1  sfr SCON = 0x98;
  33      =1  sfr SBUF = 0x99;
C51 COMPILER V8.02   D12CI                                                                 07/27/2007 11:10:49 PAGE 2   

  34      =1  
  35      =1  
  36      =1  /*  BIT Register  */
  37      =1  /*  PSW   */
  38      =1  sbit CY   = 0xD7;
  39      =1  sbit AC   = 0xD6;
  40      =1  sbit F0   = 0xD5;
  41      =1  sbit RS1  = 0xD4;
  42      =1  sbit RS0  = 0xD3;
  43      =1  sbit OV   = 0xD2;
  44      =1  sbit P    = 0xD0;
  45      =1  
  46      =1  /*  TCON  */
  47      =1  sbit TF1  = 0x8F;
  48      =1  sbit TR1  = 0x8E;
  49      =1  sbit TF0  = 0x8D;
  50      =1  sbit TR0  = 0x8C;
  51      =1  sbit IE1  = 0x8B;
  52      =1  sbit IT1  = 0x8A;
  53      =1  sbit IE0  = 0x89;
  54      =1  sbit IT0  = 0x88;
  55      =1  
  56      =1  /*  IE   */
  57      =1  sbit EA   = 0xAF;
  58      =1  sbit ES   = 0xAC;
  59      =1  sbit ET1  = 0xAB;
  60      =1  sbit EX1  = 0xAA;
  61      =1  sbit ET0  = 0xA9;
  62      =1  sbit EX0  = 0xA8;
  63      =1  
  64      =1  /*  IP   */ 
  65      =1  sbit PS   = 0xBC;
  66      =1  sbit PT1  = 0xBB;
  67      =1  sbit PX1  = 0xBA;
  68      =1  sbit PT0  = 0xB9;
  69      =1  sbit PX0  = 0xB8;
  70      =1  
  71      =1  /*  P3  */
  72      =1  sbit RD   = 0xB7;
  73      =1  sbit WR   = 0xB6;
  74      =1  sbit T1   = 0xB5;
  75      =1  sbit T0   = 0xB4;
  76      =1  sbit INT1 = 0xB3;
  77      =1  sbit INT0 = 0xB2;
  78      =1  sbit TXD  = 0xB1;
  79      =1  sbit RXD  = 0xB0;
  80      =1  
  81      =1  /*  SCON  */
  82      =1  sbit SM0  = 0x9F;
  83      =1  sbit SM1  = 0x9E;
  84      =1  sbit SM2  = 0x9D;
  85      =1  sbit REN  = 0x9C;
  86      =1  sbit TB8  = 0x9B;
  87      =1  sbit RB8  = 0x9A;
  88      =1  sbit TI   = 0x99;
  89      =1  sbit RI   = 0x98;
  90      =1  
  91      =1  #endif
  23          #else
              #include <dos.h>
              #endif
  26          
C51 COMPILER V8.02   D12CI                                                                 07/27/2007 11:10:49 PAGE 3   

  27          #include "epphal.h"
   1      =1  /*
   2      =1     //*************************************************************************
   3      =1     //
   4      =1     //                  P H I L I P S   P R O P R I E T A R Y
   5      =1     //
   6      =1     //           COPYRIGHT (c)   1997 BY PHILIPS SINGAPORE.
   7      =1     //                     --  ALL RIGHTS RESERVED  --
   8      =1     //
   9      =1     // File Name:        EPPHAL.H
  10      =1     // Author:           Wenkai Du
  11      =1     // Created:          19 Dec 97
  12      =1     // Modified:
  13      =1     // Revision:         2.1
  14      =1     //
  15      =1     //*************************************************************************
  16      =1     //
  17      =1     // 98/11/27                  Move part of defination from D12CI.H (WK)
  18      =1     //*************************************************************************
  19      =1     */
  20      =1  
  21      =1  
  22      =1  #ifndef __EPPHAL_H__
  23      =1  #define __EPPHAL_H__
  24      =1  
  25      =1  #ifndef __C51__
           =1 
           =1         #define portbase 0x368
           =1 
           =1 
           =1         #define D12_COMMAND (portbase + 1)
           =1         #define D12_DATA portbase
           =1         #define D12_EVAL_PORT_I (portbase + 2)
           =1         #define D12_EVAL_PORT_O (portbase + 3)
           =1 
           =1         unsigned char D12Eval_inportb(void);
           =1         void D12Eval_outportb(unsigned char val, unsigned char mask);
           =1 
           =1         #define DISABLE disable()
           =1         #define ENABLE  enable()
           =1 
           =1 #else
  42      =1  
  43      =1          #define portbase 2
  44      =1  
  45      =1          #define D12_COMMAND (portbase + 1)
  46      =1          #define D12_DATA portbase
  47      =1  
  48      =1          #define CPLD_CNT0 0x00
  49      =1          #define CPLD_CNT1 0x01
  50      =1  
  51      =1          #define COUNT_L   0x00
  52      =1          #define COUNT_H   0x00
  53      =1          #define EPP_PORT  P1
  54      =1          #define DATA_BUS  P0
  55      =1  
  56      =1  
  57      =1          sbit MCU_HOSTDREQ = P2^0;
  58      =1          sbit MCU_HOSTDACK = P2^1;
  59      =1          sbit MCU_EPPINIT  = P2^2;
  60      =1          sbit MCU_WHICH_PW = P2^3;
  61      =1          sbit MCU_DMARD_WR = P2^4;
C51 COMPILER V8.02   D12CI                                                                 07/27/2007 11:10:49 PAGE 4   

  62      =1          sbit MCU_SWM1     = P2^5;
  63      =1          sbit MCU_SWM2     = P2^6;
  64      =1          sbit MCU_ALE1     = P2^7;
  65      =1  
  66      =1          sbit EPP_WRITE    = P1^0;
  67      =1          sbit EPP_DSTROBE  = P1^1;
  68      =1          sbit EPP_ASTROBE  = P1^2;
  69      =1          sbit EPP_WAIT     = P1^3;
  70      =1          sbit EPP_INTR     = P1^4;
  71      =1          sbit EPP_PE       = P1^5;
  72      =1          sbit EPP_ERROR    = P1^6;
  73      =1          sbit EPP_SELECT   = P1^7;
  74      =1  
  75      =1          sbit MCU_LED0     = P3^4;
  76      =1          sbit MCU_LED1     = P3^5;
  77      =1  
  78      =1          #define DISABLE         EA=0
  79      =1          #define ENABLE          EA=1
  80      =1  
  81      =1          void outportb(unsigned char port, unsigned char val);
  82      =1          unsigned char inportb(unsigned char port);
  83      =1  
  84      =1  #endif
  85      =1  
  86      =1  #endif
  28          #include "mainloop.h"
   1      =1  /*
   2      =1     //*************************************************************************
   3      =1     //
   4      =1     //                  P H I L I P S   P R O P R I E T A R Y
   5      =1     //
   6      =1     //           COPYRIGHT (c)   1997 BY PHILIPS SINGAPORE.
   7      =1     //                     --  ALL RIGHTS RESERVED  --
   8      =1     //
   9      =1     // File Name:        MAINLOOP.H
  10      =1     // Author:           Wenkai Du
  11      =1     // Created:          19 Dec 97
  12      =1     // Modified:
  13      =1     // Revision:                 2.1
  14      =1     //
  15      =1     //*************************************************************************
  16      =1     //
  17      =1     // 98/11/25                  Added DMA disable bit. (WK)
  18      =1     //*************************************************************************
  19      =1     */
  20      =1  
  21      =1  
  22      =1  #ifndef __MAINLOOP_H__
  23      =1  #define __MAINLOOP_H__
  24      =1  
  25      =1  
  26      =1  /*
  27      =1     //*************************************************************************
  28      =1     // basic #defines
  29      =1     //*************************************************************************
  30      =1     */
  31      =1  #define MAX_ENDPOINTS      (unsigned char)0x3
  32      =1  
  33      =1  #define EP0_TX_FIFO_SIZE   16
  34      =1  #define EP0_RX_FIFO_SIZE   16
  35      =1  #define EP0_PACKET_SIZE    16
  36      =1  
C51 COMPILER V8.02   D12CI                                                                 07/27/2007 11:10:49 PAGE 5   

  37      =1  #define EP1_TX_FIFO_SIZE   16
  38      =1  #define EP1_RX_FIFO_SIZE   16
  39      =1  #define EP1_PACKET_SIZE    16
  40      =1  
  41      =1  #define EP2_TX_FIFO_SIZE   64
  42      =1  #define EP2_RX_FIFO_SIZE   64
  43      =1  #define EP2_PACKET_SIZE    64
  44      =1  
  45      =1  
  46      =1  #define USB_IDLE           0
  47      =1  #define USB_TRANSMIT       1
  48      =1  #define USB_RECEIVE        2
  49      =1  
  50      =1  #define USB_CLASS_CODE_TEST_CLASS_DEVICE                    0xdc
  51      =1  #define USB_SUBCLASS_CODE_TEST_CLASS_D12                    0xA0
  52      =1  #define USB_PROTOCOL_CODE_TEST_CLASS_D12                    0xB0
  53      =1  
  54      =1  /*
  55      =1     //*************************************************************************
  56      =1     // masks
  57      =1     //*************************************************************************
  58      =1  */
  59      =1  
  60      =1  #define USB_RECIPIENT            (unsigned char)0x1F
  61      =1  #define USB_RECIPIENT_DEVICE     (unsigned char)0x00
  62      =1  #define USB_RECIPIENT_INTERFACE  (unsigned char)0x01
  63      =1  #define USB_RECIPIENT_ENDPOINT   (unsigned char)0x02
  64      =1  
  65      =1  #define USB_REQUEST_TYPE_MASK    (unsigned char)0x60
  66      =1  #define USB_STANDARD_REQUEST     (unsigned char)0x00
  67      =1  #define USB_CLASS_REQUEST        (unsigned char)0x20
  68      =1  #define USB_VENDOR_REQUEST       (unsigned char)0x40
  69      =1  
  70      =1  #define USB_REQUEST_MASK         (unsigned char)0x0F
  71      =1  
  72      =1  #define DEVICE_ADDRESS_MASK      0x7F
  73      =1  
  74      =1  /*
  75      =1     //*************************************************************************
  76      =1     // macros
  77      =1     //*************************************************************************
  78      =1  */
  79      =1  #ifdef __C51__
  80      =1          #define SWAP(x)   ((((x) & 0xFF) << 8) | (((x) >> 8) & 0xFF))
  81      =1  #else
           =1         #define SWAP(x)   (x)
           =1         #define code
           =1         #define idata
           =1 #endif

⌨️ 快捷键说明

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