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

📄 020_smbus.lst

📁 基于C8051F020单片机的
💻 LST
📖 第 1 页 / 共 5 页
字号:
C51 COMPILER V7.50   020_SMBUS                                                             05/07/2007 10:34:34 PAGE 1   


C51 COMPILER V7.50, COMPILATION OF MODULE 020_SMBUS
OBJECT MODULE PLACED IN 020_SMBus.OBJ
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE 020_SMBus.c BROWSE DEBUG OBJECTEXTEND CODE LISTINCLUDE SYMBOLS

line level    source

   1          #include "020_SmBus.h"
   1      =1  #ifndef _020_SMBUS_H_
   2      =1  #define _020_SMBUS_H_
   3      =1  
   4      =1  extern bit                       GBV_smbus_wr;                                  //读写控制位
   5      =1  extern unsigned char GCV_slave_addr;                            //从机地址
   6      =1  extern unsigned char GCV_slave_subaddr_num;                     //从机子地址数
   7      =1  extern unsigned  int GIV_slave_subaddr;                         //从机子地址
   8      =1  extern unsigned char GCV_slave_data_num;                        //从机数据长度
   9      =1  extern unsigned char xdata *GPV_slave_data_array;       //读写数据指针
  10      =1  
  11      =1  void fram_wr_fun(bit               B_wr,                        //读写控制位
  12      =1                                   unsigned int  subaddr,                 //读写从地址
  13      =1                                   unsigned char length_of_data,  //数据长度
  14      =1                                   unsigned char *P_to_wr_array); //读写指针
  15      =1  
  16      =1  //读写WDT_RTC函数
  17      =1  void wdt_rtc_wr_fun(bit                   B_wr,                         //读写控制位
  18      =1                                          unsigned int  subaddr,                  //读写从地址
  19      =1                                          unsigned char length_of_data,   //数据长度
  20      =1                                          unsigned char *P_to_wr_array);  //读写指针
  21      =1  
  22      =1  #endif//_020_SMBUS_H_
   2          #include "C8051F020.H"
   1      =1  /*---------------------------------------------------------------------------
   2      =1  ;       Copyright (C) 2001 CYGNAL INTEGRATED PRODUCTS, INC.
   3      =1  ;       All rights reserved.
   4      =1  ;
   5      =1  ;
   6      =1  ;       FILE NAME       : C8051F020.H 
   7      =1  ;       TARGET MCUs     : C8051F020, 'F021, 'F022, 'F023 
   8      =1  ;       DESCRIPTION     : Register/bit definitions for the C8051F02x product family.  
   9      =1  ;
  10      =1  ;       REVISION 1.1    
  11      =1  ;
  12      =1  ;---------------------------------------------------------------------------*/
  13      =1  #ifndef _C8051F020_H_
  14      =1  #define _C8051F020_H_
  15      =1  /*  BYTE Registers  */
  16      =1  sfr P0       =  0x80;   /* PORT 0                                                  */   
  17      =1  sfr SP       =  0x81;   /* STACK POINTER                                           */
  18      =1  sfr DPL      =  0x82;   /* DATA POINTER - LOW BYTE                                 */
  19      =1  sfr DPH      =  0x83;   /* DATA POINTER - HIGH BYTE                                */
  20      =1  sfr P4       =  0x84;   /* PORT 4                                                                                                  */
  21      =1  sfr P5       =  0x85;   /* PORT 5                                                  */
  22      =1  sfr P6       =  0x86;   /* PORT 6                                                                                                  */                                                                                                   
  23      =1  sfr PCON     =  0x87;   /* POWER CONTROL                                           */
  24      =1  sfr TCON     =  0x88;   /* TIMER CONTROL                                           */
  25      =1  sfr TMOD     =  0x89;   /* TIMER MODE                                              */
  26      =1  sfr TL0      =  0x8A;   /* TIMER 0 - LOW BYTE                                      */
  27      =1  sfr TL1      =  0x8B;   /* TIMER 1 - LOW BYTE                                      */
  28      =1  sfr TH0      =  0x8C;   /* TIMER 0 - HIGH BYTE                                     */   
  29      =1  sfr TH1      =  0x8D;   /* TIMER 1 - HIGH BYTE                                     */
  30      =1  sfr CKCON    =  0x8E;   /* CLOCK CONTROL                                           */
  31      =1  sfr PSCTL    =  0x8F;   /* PROGRAM STORE R/W CONTROL                               */
C51 COMPILER V7.50   020_SMBUS                                                             05/07/2007 10:34:34 PAGE 2   

  32      =1  sfr P1       =  0x90;   /* PORT 1                                                  */
  33      =1  sfr TMR3CN   =  0x91;   /* TIMER 3 CONTROL                                         */
  34      =1  sfr TMR3RLL  =  0x92;   /* TIMER 3 RELOAD REGISTER - LOW BYTE                      */
  35      =1  sfr TMR3RLH  =  0x93;   /* TIMER 3 RELOAD REGISTER - HIGH BYTE                     */
  36      =1  sfr TMR3L    =  0x94;   /* TIMER 3 - LOW BYTE                                      */
  37      =1  sfr TMR3H    =  0x95;   /* TIMER 3 - HIGH BYTE                                     */
  38      =1  sfr P7           =  0x96;   /* PORT 7                                                  */
  39      =1  sfr SCON0    =  0x98;   /* SERIAL PORT 0 CONTROL                                   */
  40      =1  sfr SBUF0    =  0x99;   /* SERIAL PORT 0 BUFFER                                    */
  41      =1  sfr SPI0CFG  =  0x9A;   /* SERIAL PERIPHERAL INTERFACE 0 CONFIGURATION             */
  42      =1  sfr SPI0DAT  =  0x9B;   /* SERIAL PERIPHERAL INTERFACE 0 DATA                      */
  43      =1  sfr ADC1     =  0x9C;   /* ADC 1 DATA                                              */
  44      =1  sfr SPI0CKR  =  0x9D;   /* SERIAL PERIPHERAL INTERFACE 0 CLOCK RATE CONTROL        */
  45      =1  sfr CPT0CN   =  0x9E;   /* COMPARATOR 0 CONTROL                                    */
  46      =1  sfr CPT1CN   =  0x9F;   /* COMPARATOR 1 CONTROL                                    */
  47      =1  sfr P2       =  0xA0;   /* PORT 2                                                  */
  48      =1  sfr EMI0TC   =  0xA1;   /* EMIF TIMING CONTROL                                     */
  49      =1  sfr EMI0CF   =  0xA3;   /* EXTERNAL MEMORY INTERFACE (EMIF) CONFIGURATION          */
  50      =1  sfr P0MDOUT  =  0xA4;   /* PORT 0 OUTPUT MODE CONFIGURATION                        */
  51      =1  sfr P1MDOUT  =  0xA5;   /* PORT 1 OUTPUT MODE CONFIGURATION                        */
  52      =1  sfr P2MDOUT  =  0xA6;   /* PORT 2 OUTPUT MODE CONFIGURATION                        */
  53      =1  sfr P3MDOUT  =  0xA7;   /* PORT 3 OUTPUT MODE CONFIGURATION                        */
  54      =1  sfr IE       =  0xA8;   /* INTERRUPT ENABLE                                        */
  55      =1  sfr SADDR0   =  0xA9;   /* SERIAL PORT 0 SLAVE ADDRESS                             */
  56      =1  sfr ADC1CN   =  0xAA;   /* ADC 1 CONTROL                                           */
  57      =1  sfr ADC1CF   =  0xAB;   /* ADC 1 ANALOG MUX CONFIGURATION                          */
  58      =1  sfr AMX1SL   =  0xAC;   /* ADC 1 ANALOG MUX CHANNEL SELECT                         */
  59      =1  sfr P3IF     =  0xAD;   /* PORT 3 EXTERNAL INTERRUPT FLAGS                         */
  60      =1  sfr SADEN1   =  0xAE;   /* SERIAL PORT 1 SLAVE ADDRESS MASK                        */
  61      =1  sfr EMI0CN   =  0xAF;   /* EXTERNAL MEMORY INTERFACE CONTROL                       */
  62      =1  sfr P3       =  0xB0;   /* PORT 3                                                  */
  63      =1  sfr OSCXCN   =  0xB1;   /* EXTERNAL OSCILLATOR CONTROL                             */
  64      =1  sfr OSCICN   =  0xB2;   /* INTERNAL OSCILLATOR CONTROL                             */
  65      =1  sfr P74OUT   =  0xB5;   /* PORTS 4 - 7 OUTPUT MODE                                 */
  66      =1  sfr FLSCL    =  0xB6;   /* FLASH MEMORY TIMING PRESCALER                           */
  67      =1  sfr FLACL    =  0xB7;   /* FLASH ACESS LIMIT                                       */
  68      =1  sfr IP       =  0xB8;   /* INTERRUPT PRIORITY                                      */
  69      =1  sfr SADEN0   =  0xB9;   /* SERIAL PORT 0 SLAVE ADDRESS MASK                        */
  70      =1  sfr AMX0CF   =  0xBA;   /* ADC 0 MUX CONFIGURATION                                 */
  71      =1  sfr AMX0SL   =  0xBB;   /* ADC 0 MUX CHANNEL SELECTION                             */
  72      =1  sfr ADC0CF   =  0xBC;   /* ADC 0 CONFIGURATION                                     */
  73      =1  sfr P1MDIN   =  0xBD;   /* PORT 1 INPUT MODE                                       */
  74      =1  sfr ADC0L    =  0xBE;   /* ADC 0 DATA - LOW BYTE                                   */
  75      =1  sfr ADC0H    =  0xBF;   /* ADC 0 DATA - HIGH BYTE                                  */
  76      =1  sfr SMB0CN   =  0xC0;   /* SMBUS 0 CONTROL                                         */
  77      =1  sfr SMB0STA  =  0xC1;   /* SMBUS 0 STATUS                                          */
  78      =1  sfr SMB0DAT  =  0xC2;   /* SMBUS 0 DATA                                            */
  79      =1  sfr SMB0ADR  =  0xC3;   /* SMBUS 0 SLAVE ADDRESS                                   */
  80      =1  sfr ADC0GTL  =  0xC4;   /* ADC 0 GREATER-THAN REGISTER - LOW BYTE                  */
  81      =1  sfr ADC0GTH  =  0xC5;   /* ADC 0 GREATER-THAN REGISTER - HIGH BYTE                 */
  82      =1  sfr ADC0LTL  =  0xC6;   /* ADC 0 LESS-THAN REGISTER - LOW BYTE                     */
  83      =1  sfr ADC0LTH  =  0xC7;   /* ADC 0 LESS-THAN REGISTER - HIGH BYTE                    */
  84      =1  sfr T2CON    =  0xC8;   /* TIMER 2 CONTROL                                         */
  85      =1  sfr T4CON    =  0xC9;   /* TIMER 4 CONTROL                                         */
  86      =1  sfr RCAP2L   =  0xCA;   /* TIMER 2 CAPTURE REGISTER - LOW BYTE                     */
  87      =1  sfr RCAP2H   =  0xCB;   /* TIMER 2 CAPTURE REGISTER - HIGH BYTE                    */
  88      =1  sfr TL2      =  0xCC;   /* TIMER 2 - LOW BYTE                                      */
  89      =1  sfr TH2      =  0xCD;   /* TIMER 2 - HIGH BYTE                                     */
  90      =1  sfr SMB0CR   =  0xCF;   /* SMBUS 0 CLOCK RATE                                      */
  91      =1  sfr PSW      =  0xD0;   /* PROGRAM STATUS WORD                                     */
  92      =1  sfr REF0CN   =  0xD1;   /* VOLTAGE REFERENCE 0 CONTROL                             */
  93      =1  sfr DAC0L    =  0xD2;   /* DAC 0 REGISTER - LOW BYTE                               */
C51 COMPILER V7.50   020_SMBUS                                                             05/07/2007 10:34:34 PAGE 3   

  94      =1  sfr DAC0H    =  0xD3;   /* DAC 0 REGISTER - HIGH BYTE                              */
  95      =1  sfr DAC0CN   =  0xD4;   /* DAC 0 CONTROL                                           */
  96      =1  sfr DAC1L    =  0xD5;   /* DAC 1 REGISTER - LOW BYTE                               */
  97      =1  sfr DAC1H    =  0xD6;   /* DAC 1 REGISTER - HIGH BYTE                              */
  98      =1  sfr DAC1CN   =  0xD7;   /* DAC 1 CONTROL                                           */
  99      =1  sfr PCA0CN   =  0xD8;   /* PCA 0 COUNTER CONTROL                                   */
 100      =1  sfr PCA0MD   =  0xD9;   /* PCA 0 COUNTER MODE                                      */
 101      =1  sfr PCA0CPM0 =  0xDA;   /* CONTROL REGISTER FOR PCA 0 MODULE 0                     */
 102      =1  sfr PCA0CPM1 =  0xDB;   /* CONTROL REGISTER FOR PCA 0 MODULE 1                     */
 103      =1  sfr PCA0CPM2 =  0xDC;   /* CONTROL REGISTER FOR PCA 0 MODULE 2                     */
 104      =1  sfr PCA0CPM3 =  0xDD;   /* CONTROL REGISTER FOR PCA 0 MODULE 3                     */
 105      =1  sfr PCA0CPM4 =  0xDE;   /* CONTROL REGISTER FOR PCA 0 MODULE 4                     */
 106      =1  sfr ACC      =  0xE0;   /* ACCUMULATOR                                             */
 107      =1  sfr XBR0     =  0xE1;   /* DIGITAL CROSSBAR CONFIGURATION REGISTER 0               */
 108      =1  sfr XBR1     =  0xE2;   /* DIGITAL CROSSBAR CONFIGURATION REGISTER 1               */
 109      =1  sfr XBR2     =  0xE3;   /* DIGITAL CROSSBAR CONFIGURATION REGISTER 2               */
 110      =1  sfr RCAP4L   =  0xE4;   /* TIMER 4 CAPTURE REGISTER - LOW BYTE                     */
 111      =1  sfr RCAP4H   =  0xE5;   /* TIMER 4 CAPTURE REGISTER - HIGH BYTE                    */
 112      =1  sfr EIE1     =  0xE6;   /* EXTERNAL INTERRUPT ENABLE 1                             */
 113      =1  sfr EIE2     =  0xE7;   /* EXTERNAL INTERRUPT ENABLE 2                             */
 114      =1  sfr ADC0CN   =  0xE8;   /* ADC 0 CONTROL                                           */   
 115      =1  sfr PCA0L    =  0xE9;   /* PCA 0 TIMER - LOW BYTE                                  */   
 116      =1  sfr PCA0CPL0 =   0xEA;   /* CAPTURE/COMPARE REGISTER FOR PCA 0 MODULE 0 - LOW BYTE  */
 117      =1  sfr PCA0CPL1 =   0xEB;   /* CAPTURE/COMPARE REGISTER FOR PCA 0 MODULE 1 - LOW BYTE  */
 118      =1  sfr PCA0CPL2 =   0xEC;   /* CAPTURE/COMPARE REGISTER FOR PCA 0 MODULE 2 - LOW BYTE  */
 119      =1  sfr PCA0CPL3 =   0xED;   /* CAPTURE/COMPARE REGISTER FOR PCA 0 MODULE 3 - LOW BYTE  */
 120      =1  sfr PCA0CPL4 =   0xEE;   /* CAPTURE/COMPARE REGISTER FOR PCA 0 MODULE 4 - LOW BYTE  */
 121      =1  sfr RSTSRC   =   0xEF;   /* RESET SOURCE                                            */
 122      =1  sfr B        =   0xF0;   /* B REGISTER                                              */
 123      =1  sfr SCON1    =  0xF1;   /* SERIAL PORT 1 CONTROL                                   */
 124      =1  sfr SBUF1    =  0xF2;   /* SERAIL PORT 1 DATA                                      */
 125      =1  sfr SADDR1   =  0xF3;   /* SERAIL PORT 1                                           */ 
 126      =1  sfr TL4      =  0xF4;   /* TIMER 4 DATA - LOW BYTE                                 */
 127      =1  sfr TH4      =  0xF5;   /* TIMER 4 DATA - HIGH BYTE                                */
 128      =1  sfr EIP1     =   0xF6;   /* EXTERNAL INTERRUPT PRIORITY REGISTER 1                  */
 129      =1  sfr EIP2     =   0xF7;   /* EXTERNAL INTERRUPT PRIORITY REGISTER 2                  */
 130      =1  sfr SPI0CN   =   0xF8;   /* SERIAL PERIPHERAL INTERFACE 0 CONTROL                   */  
 131      =1  sfr PCA0H    =   0xF9;          /* PCA 0 TIMER - HIGH BYTE                                 */
 132      =1  sfr PCA0CPH0 =   0xFA;          /* CAPTURE/COMPARE REGISTER FOR PCA 0 MODULE 0 - HIGH BYTE */
 133      =1  sfr PCA0CPH1 =   0xFB;          /* CAPTURE/COMPARE REGISTER FOR PCA 0 MODULE 1 - HIGH BYTE */
 134      =1  sfr PCA0CPH2 =   0xFC;          /* CAPTURE/COMPARE REGISTER FOR PCA 0 MODULE 2 - HIGH BYTE */
 135      =1  sfr PCA0CPH3 =   0xFD;          /* CAPTURE/COMPARE REGISTER FOR PCA 0 MODULE 3 - HIGH BYTE */
 136      =1  sfr PCA0CPH4 =   0xFE;          /* CAPTURE/COMPARE REGISTER FOR PCA 0 MODULE 4 - HIGH BYTE */   
 137      =1  sfr WDTCN    =   0xFF;          /* WATCHDOG TIMER CONTROL                                  */
 138      =1          
 139      =1  
 140      =1  /*  BIT Registers  */
 141      =1  
 142      =1  /*  TCON  0x88 */
 143      =1  sbit TF1   = TCON ^ 7;              /* TIMER 1 OVERFLOW FLAG      */
 144      =1  sbit TR1   = TCON ^ 6;              /* TIMER 1 ON/OFF CONTROL     */
 145      =1  sbit TF0   = TCON ^ 5;              /* TIMER 0 OVERFLOW FLAG      */
 146      =1  sbit TR0   = TCON ^ 4;              /* TIMER 0 ON/OFF CONTROL     */
 147      =1  sbit IE1   = TCON ^ 3;              /* EXT. INTERRUPT 1 EDGE FLAG */
 148      =1  sbit IT1   = TCON ^ 2;              /* EXT. INTERRUPT 1 TYPE      */
 149      =1  sbit IE0   = TCON ^ 1;              /* EXT. INTERRUPT 0 EDGE FLAG */
 150      =1  sbit IT0   = TCON ^ 0;              /* EXT. INTERRUPT 0 TYPE      */
 151      =1  
 152      =1  /*  SCON0  0x98 */
 153      =1  sbit SM00  = SCON0 ^ 7;             /* SERIAL MODE CONTROL BIT 0           */   
 154      =1  sbit SM10  = SCON0 ^ 6;             /* SERIAL MODE CONTROL BIT 1           */
 155      =1  sbit SM20  = SCON0 ^ 5;             /* MULTIPROCESSOR COMMUNICATION ENABLE */
C51 COMPILER V7.50   020_SMBUS                                                             05/07/2007 10:34:34 PAGE 4   

 156      =1  sbit REN0  = SCON0 ^ 4;             /* RECEIVE ENABLE                      */
 157      =1  sbit TB80  = SCON0 ^ 3;             /* TRANSMIT BIT 8                      */
 158      =1  sbit RB80  = SCON0 ^ 2;             /* RECEIVE BIT 8                       */
 159      =1  sbit TI0   = SCON0 ^ 1;             /* TRANSMIT INTERRUPT FLAG             */
 160      =1  sbit RI0   = SCON0 ^ 0;             /* RECEIVE INTERRUPT FLAG              */
 161      =1  
 162      =1  /*  IE  0xA8 */
 163      =1  sbit EA    = IE ^ 7;                /* GLOBAL INTERRUPT ENABLE      */  
 164      =1  sbit ET2   = IE ^ 5;                /* TIMER 2 INTERRUPT ENABLE     */
 165      =1  sbit ES0   = IE ^ 4;                /* UART0 INTERRUPT ENABLE       */
 166      =1  sbit ET1   = IE ^ 3;                /* TIMER 1 INTERRUPT ENABLE     */
 167      =1  sbit EX1   = IE ^ 2;                /* EXTERNAL INTERRUPT 1 ENABLE  */
 168      =1  sbit ET0   = IE ^ 1;                /* TIMER 0 INTERRUPT ENABLE     */
 169      =1  sbit EX0   = IE ^ 0;                /* EXTERNAL INTERRUPT 0 ENABLE  */
 170      =1  
 171      =1  /*  IP  0xB8 */
 172      =1  sbit PT2   = IP ^ 5;                /* TIMER 2 PRIORITY                                 */      

⌨️ 快捷键说明

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