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

📄 24c02.lst

📁 PLL的资料文档,包括资料
💻 LST
📖 第 1 页 / 共 3 页
字号:
  96      =1  #define KEY_VOL_DEC                     KEY_11
  97      =1  
  98      =1  #define KEY_BAND                        KEY_12
  99      =1  #define KEY_FF                          KEY_13
 100      =1  
 101      =1  #define KEY_FR                          KEY_14
 102      =1  
 103      =1  #define Kbd_key_pressed()   ((P1&0x1f) != 0x1f)
 104      =1   
 105      =1  /*----- Disp clock task states -----*/
 106      =1  #define DISP_IDLE             0
 107      =1  #define DISP_INIT             1
 108      =1  #define DISP_TICK0            2
 109      =1  #define DISP_TICK1            3
 110      =1  #define DISP_SEC              4
 111      =1  #define DISP_MIN              5
 112      =1  #define DISP_MS_BUSY          6
 113      =1  #define DISP_PRO                  7
 114      =1  
 115      =1  #define KBD_DEBOUNCE_TEMPO  20   /* debounce period: 8 ms */
 116      =1  #define KBD_DEBOUNCE_INIT   0 
 117      =1  #define SCHEDULER_TICK          10
 118      =1  
 119      =1  #define TIM_LOW                 0xf0
 120      =1  #define TIM_HIGH                0xd8
 121      =1  //#define T0_set_TMOD()         (TMOD = TMOD | 0x01)
 122      =1  
 123      =1  #define I2C_ID0                 0xa0
 124      =1  #define I2C_ID1                 0xa1
 125      =1  #define I2C_ADD                 0x00
 126      =1  
 127      =1  #define Mem_FerStart    0x10
 128      =1  
 129      =1  /*----- Volume Control Start -----*/
 130      =1  #define SC7313_ADD              0x88
 131      =1  #define RADIO_IN                0x5c
 132      =1  #define CD_IN                   0x59    //01011001
 133      =1  #define TAPE_IN                 0x5e
  14          #include "Driver\io_def.h"
   1      =1  /*H**************************************************************************
   2      =1  * NAME:         io_def.h         
   3      =1  *----------------------------------------------------------------------------
   4      =1  * Copyright (c) 2006 Atmel.
   5      =1  *----------------------------------------------------------------------------
   6      =1  * RELEASE:      C51 Sample      
   7      =1  * REVISION:     1.00     
   8      =1  *----------------------------------------------------------------------------
C51 COMPILER V8.01   24C02                                                                 07/31/2006 01:20:39 PAGE 6   

   9      =1  * PURPOSE:
  10      =1  *****************************************************************************/
  11      =1  
  12      =1  /*_____ I N C L U D E S ____________________________________________________*/
  13      =1  
  14      =1   
  15      =1  #define DTS_DOUT        P3_6
  16      =1  #define DTS_DIN         P3_4
  17      =1  #define DTS_CLK         P3_5
  18      =1  #define DTS_CE          P3_7
  19      =1  
  20      =1  #define MPOWER          P3_1
  21      =1  
  22      =1  #define LCD_DA          P0_0
  23      =1  #define LCD_RW          P0_1
  24      =1  #define LCD_CS          P0_2
  25      =1  
  26      =1  #define ISDA            P2_1
  27      =1  #define ISCL            P2_0
  28      =1  #define sda                     P2_1
  29      =1  #define scl                     P2_0
  15          #include "Driver\24c02.h"
   1      =1  /*H**************************************************************************
   2      =1  * NAME:         24c02.h         
   3      =1  *----------------------------------------------------------------------------
   4      =1  * Copyright (c) 2006 Atmel.
   5      =1  *----------------------------------------------------------------------------
   6      =1  * RELEASE:      C51 Sample      
   7      =1  * REVISION:     1.00     
   8      =1  *----------------------------------------------------------------------------
   9      =1  * PURPOSE:
  10      =1  *****************************************************************************/
  11      =1  
  12      =1  /*_____ I N C L U D E S ____________________________________________________*/
  13      =1  
  14      =1  Uchar x24c02_read(Uchar address);  //从24c02的地址address中读取一个字节数据
  15      =1  void x24c02_write(Uchar address,Uchar info);  //向24c02的address地址中写入一字节数据info
  16      =1  void x24c02_init();   //24c02初始化子程序
  17      =1  void delay1(Uchar x);
  18      =1  void flash();
  19      =1  void x24c01_init();
  20      =1  void start();
  21      =1  void stop();
  22      =1  void writex(Uchar j);
  23      =1  Uchar readx();
  24      =1  void clock();
  16          
  17          void delay1(Uchar x)
  18          {
  19   1         Uint16 i;
  20   1         for(i=0;i<x;i++);
  21   1         ;
  22   1      }
  23          void flash()
  24          {
  25   1              char i;
  26   1              for(i=0; i<2; i++){
  27   2                      ;
  28   2                      }
  29   1      }
  30          void x24c02_init()
  31          {
C51 COMPILER V8.01   24C02                                                                 07/31/2006 01:20:39 PAGE 7   

  32   1         scl=1; flash(); sda=1; flash();
  33   1      }
  34          void start()
  35          {
  36   1         sda=1; flash(); scl=1; flash(); sda=0; flash(); scl=0; flash();
  37   1      }
  38          void stop()
  39          {
  40   1         sda=0; flash(); scl=1; flash(); sda=1; flash();
  41   1      }
  42          void writex(Uchar j)
  43          {
  44   1         Uchar i,temp;
  45   1         temp=j;
  46   1         for (i=0;i<8;i++){
  47   2            temp=temp<<1;
  48   2                scl=0; 
  49   2                flash(); 
  50   2                sda=CY; 
  51   2                flash(); 
  52   2                scl=1; 
  53   2                flash();
  54   2         }
  55   1         scl=0; 
  56   1         flash(); 
  57   1         sda=1; 
  58   1         flash();
  59   1      }
  60          Uchar readx()
  61          {
  62   1         Uchar i,j,k=0;
  63   1         scl=0; flash(); sda=1;
  64   1         for (i=0;i<8;i++){
  65   2            flash(); scl=1; flash();
  66   2            if (sda==1) j=1;
  67   2            else j=0;
  68   2            k=(k<<1)|j; scl=0;
  69   2         }
  70   1         flash(); return(k);
  71   1      }
  72          void clock()
  73          {
  74   1         Uchar i=0;
  75   1         scl=1; flash();
  76   1         while ((sda==1)&&(i<255))i++;
  77   1         scl=0; flash();
  78   1      }
  79          
  80          Uchar x24c02_read(Uchar address)
  81          {
  82   1         Uchar i;
  83   1         start(); writex(0xa0);
  84   1         clock(); writex(address);
  85   1         clock(); start();
  86   1         writex(0xa1); clock();
  87   1         i=readx(); stop();
  88   1         delay1(10);
  89   1         return(i);
  90   1      }
  91          void x24c02_write(Uchar address,Uchar info)
  92          {
  93   1         EA=0;
C51 COMPILER V8.01   24C02                                                                 07/31/2006 01:20:39 PAGE 8   

  94   1         start(); writex(0xa0);
  95   1         clock(); writex(address);
  96   1         clock(); writex(info);
  97   1         clock(); stop();
  98   1         EA=1;
  99   1         delay1(50);
 100   1      }
 101          
 102          void x7313_write(Uchar info)
 103          {
 104   1         EA=0;
 105   1         start(); writex(0x88);
 106   1         //clock(); writex(address);
 107   1         clock(); writex(info);
 108   1         clock(); stop();
 109   1         EA=1;
 110   1         delay1(50);
 111   1      }
C51 COMPILER V8.01   24C02                                                                 07/31/2006 01:20:39 PAGE 9   

ASSEMBLY LISTING OF GENERATED OBJECT CODE


             ; FUNCTION _delay1 (BEGIN)
                                           ; SOURCE LINE # 17
;---- Variable 'x' assigned to Register 'R7' ----
                                           ; SOURCE LINE # 18
                                           ; SOURCE LINE # 20
;---- Variable 'i' assigned to Register 'R4/R5' ----
0000 E4                CLR     A
0001 FD                MOV     R5,A
0002 FC                MOV     R4,A
0003         ?C0001:
0003 EF                MOV     A,R7
0004 FB                MOV     R3,A
0005 C3                CLR     C
0006 ED                MOV     A,R5
0007 9B                SUBB    A,R3
0008 EC                MOV     A,R4
0009 9400              SUBB    A,#00H
000B 5007              JNC     ?C0004
000D 0D                INC     R5
000E BD0001            CJNE    R5,#00H,?C0028
0011 0C                INC     R4
0012         ?C0028:
0012 80EF              SJMP    ?C0001
                                           ; SOURCE LINE # 22
0014         ?C0004:
0014 22                RET     
             ; FUNCTION _delay1 (END)

             ; FUNCTION L?0031 (BEGIN)
0000         L?0032:
0000 120000      R     LCALL   flash
0003 D2A0              SETB    P2_0
             ; FUNCTION flash (BEGIN)
                                           ; SOURCE LINE # 23
                                           ; SOURCE LINE # 24
                                           ; SOURCE LINE # 26
;---- Variable 'i' assigned to Register 'R7' ----
0005 E4                CLR     A
0006 FF                MOV     R7,A
0007         ?C0005:
                                           ; SOURCE LINE # 28
0007 0F                INC     R7
0008 BF02FC            CJNE    R7,#02H,?C0005
                                           ; SOURCE LINE # 29
000B         ?C0008:
000B 22                RET     
             ; FUNCTION flash (END)

             ; FUNCTION x24c02_init (BEGIN)
                                           ; SOURCE LINE # 30
                                           ; SOURCE LINE # 31
                                           ; SOURCE LINE # 32
0000 D2A0              SETB    P2_0
0002 120000      R     LCALL   flash
0005 D2A1              SETB    P2_1
0007 020000      R     LJMP    flash
             ; FUNCTION x24c02_init (END)

             ; FUNCTION start (BEGIN)
C51 COMPILER V8.01   24C02                                                                 07/31/2006 01:20:39 PAGE 10  

                                           ; SOURCE LINE # 34
                                           ; SOURCE LINE # 35
                                           ; SOURCE LINE # 36
0000 D2A1              SETB    P2_1
0002 120000      R     LCALL   L?0031
0005 C2A1              CLR     P2_1
0007 120000      R     LCALL   flash
000A C2A0              CLR     P2_0
000C 020000      R     LJMP    flash
             ; FUNCTION start (END)

             ; FUNCTION stop (BEGIN)

⌨️ 快捷键说明

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