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

📄 prog.lst

📁 基于远程遥控的挂钟,ds12c877 基于远程遥控的挂钟,ds12c8
💻 LST
字号:
C51 COMPILER V8.05a   PROG                                                                 10/08/2008 13:23:20 PAGE 1   


C51 COMPILER V8.05a, COMPILATION OF MODULE PROG
OBJECT MODULE PLACED IN D:\单片机软件\挂钟\PROG.OBJ
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE D:\单片机软件\挂钟\PROG.C DB SB OE

line level    source

   1           #include "reg51.h"
   2           #include "math.h"
   3           #include "string.h"
   4           #include "intrins.h"
   5           #define uchar unsigned char
   6           #define high  1/* 高电平 */
   7           #define low   0 /* 低电平 */
   8          //sbit  Dat4094=P1^4;/* 4094A数据*/
   9          // sbit  En=P1^5;     /* 使能 */
  10           sbit ESS=P1^6;//数据脚
  11           sbit clk=P1^3;//时钟
  12           sbit storge=P1^1;//锁存
  13           //uchar code LED_acess[10]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90};//LED段码0,1,2,3,4,5,6,7,8
             -,9
  14           uchar code LED_acess[10]={0x04,0x1f,0x22,0x0a,0x19,0x48,0x40,0x1e,0x00,0x08};//LED段码0,1,2,3,4,5,6,7,8,9
  15           uchar idata a[6];
  16           uchar time_NUM;
  17           //uchar s ;
  18           long int time_con;
  19           long int time_T;
  20           bit flag;
  21           //函数申明
  22           void Clock(void);
  23          // void Sclock(void);
  24           void Delay(uchar us);/*延时 us 微秒*/
  25           void SendDate(uchar  dat1);
  26           void Init(void);
  27           void show(void);
  28           void Delay(uchar us)/*延时函数*/
  29          {
  30   1        uchar time;
  31   1        for(time=us;time>0;time--);
  32   1      }
  33          
  34          void Clock(void)   /*时钟上升沿函数*/
  35          {
  36   1              clk=low;
  37   1              Delay(2);
  38   1              clk=high;
  39   1              Delay(2);
  40   1      }
  41          //void Sclock(void)     /*锁存时钟上升沿函数*/
  42          //{
  43          //  sclk=low;
  44           // Delay(2);
  45           // sclk=high;
  46          //  Delay(2);
  47          //}
  48          void SendData(uchar  dat1)       /*给74HC595发数据函数*/
  49          {
  50   1          uchar numBIT;
  51   1         for(numBIT=0;numBIT<8;numBIT++)
  52   1          {
  53   2           if(dat1&0x80)
  54   2                  ESS=low;
C51 COMPILER V8.05a   PROG                                                                 10/08/2008 13:23:20 PAGE 2   

  55   2      
  56   2           else
  57   2                  ESS=high;
  58   2           dat1= _crol_(dat1,1);
  59   2           Clock();
  60   2          }
  61   1       }
  62          
  63          
  64           void show(void)          /*调LED显屏显示函数*/
  65           {
  66   1               uchar num;
  67   1               storge=low;
  68   1               for(num=0;num<6;num++)
  69   1               {
  70   2                          if(flag)
  71   2                 SendData(LED_acess[a[num]]|0x80);
  72   2              else
  73   2                SendData(LED_acess[a[num]]);
  74   2         }
  75   1             storge=high;
  76   1       }
  77          void Time0(void) interrupt 1 using 0 /*定时器0中断*/
  78          {
  79   1       EA=0;
  80   1       TH0=0x3c;/*五十毫秒*/
  81   1       TL0=0xb0;
  82   1       time_NUM++;
  83   1       EA=1;
  84   1       
  85   1       }
  86          
  87          
  88           void Init(void)         /*初始化函数*/
  89          {
  90   1         //  WDTRST=0x1e;
  91   1          IE=IE|0x82;
  92   1          TMOD=TMOD|0x01;
  93   1         TH0=0x3c;/*五十毫秒*/
  94   1         TL0=0xb0;
  95   1         TR0=1;
  96   1         time_con=57600;
  97   1         show();
  98   1         P0=0Xfe;
  99   1      
 100   1       /*  CHPENR=0x87;
 101   1         CHPENR=0x59;
 102   1         CHPCON=CHPCON|0x10;
 103   1         CHPENR=0X00; 片外存储器使能*/
 104   1      
 105   1      
 106   1      }
 107          void mul_time(void)
 108          {
 109   1              time_con++;
 110   1        time_T=time_con;
 111   1        a[5]=time_T%10;
 112   1        time_T=time_T/10;
 113   1        a[4]=time_T%6;
 114   1        time_T=time_T/6;
 115   1        a[3]=time_T%10;
 116   1        time_T=time_T/10;
C51 COMPILER V8.05a   PROG                                                                 10/08/2008 13:23:20 PAGE 3   

 117   1        a[2]=time_T%6;
 118   1        time_T=time_T/6;
 119   1        a[1]=time_T%10;
 120   1        a[0]=time_T/10;
 121   1      }
 122          void main(void)   /*主函数*/
 123          {
 124   1                     Init();
 125   1               while(1)
 126   1              {
 127   2               if(time_NUM>=20)
 128   2                 {
 129   3                   time_NUM=0;
 130   3                   mul_time();
 131   3                   flag=!flag;
 132   3                 }
 133   2                show();
 134   2                }
 135   1      }
 136          
 137          
 138          
 139          
 140          
C51 COMPILER V8.05a   PROG                                                                 10/08/2008 13:23:20 PAGE 4   

NAME                                    CLASS   MSPACE  TYPE    OFFSET  SIZE
====                                    =====   ======  ====    ======  ====


P0 . . . . . . . . . . . . . . . . . .  SFR      DATA   U_CHAR   0080H  1
P1 . . . . . . . . . . . . . . . . . .  SFR      DATA   U_CHAR   0090H  1
time_NUM . . . . . . . . . . . . . . .  PUBLIC   DATA   U_CHAR   0000H  1
EA . . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00AFH  1
_SendData. . . . . . . . . . . . . . .  PUBLIC   CODE   PROC     0000H  -----
  dat1 . . . . . . . . . . . . . . . .  * REG *  DATA   U_CHAR   0006H  1
  numBIT . . . . . . . . . . . . . . .  * REG *  DATA   U_CHAR   0005H  1
IE . . . . . . . . . . . . . . . . . .  SFR      DATA   U_CHAR   00A8H  1
size_t . . . . . . . . . . . . . . . .  TYPEDEF  -----  U_INT    -----  2
Init . . . . . . . . . . . . . . . . .  PUBLIC   CODE   PROC     0000H  -----
storge . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      0091H  1
flag . . . . . . . . . . . . . . . . .  PUBLIC   DATA   BIT      0000H  1
main . . . . . . . . . . . . . . . . .  PUBLIC   CODE   PROC     0000H  -----
TMOD . . . . . . . . . . . . . . . . .  SFR      DATA   U_CHAR   0089H  1
clk. . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      0093H  1
Time0. . . . . . . . . . . . . . . . .  PUBLIC   CODE   PROC     0000H  -----
show . . . . . . . . . . . . . . . . .  PUBLIC   CODE   PROC     0000H  -----
  num. . . . . . . . . . . . . . . . .  * REG *  DATA   U_CHAR   0004H  1
LED_acess. . . . . . . . . . . . . . .  PUBLIC   CODE   ARRAY    0000H  10
TH0. . . . . . . . . . . . . . . . . .  SFR      DATA   U_CHAR   008CH  1
TL0. . . . . . . . . . . . . . . . . .  SFR      DATA   U_CHAR   008AH  1
time_con . . . . . . . . . . . . . . .  PUBLIC   DATA   LONG     0001H  4
TR0. . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      008CH  1
a. . . . . . . . . . . . . . . . . . .  PUBLIC   IDATA  ARRAY    0000H  6
mul_time . . . . . . . . . . . . . . .  PUBLIC   CODE   PROC     0000H  -----
time_T . . . . . . . . . . . . . . . .  PUBLIC   DATA   LONG     0005H  4
ESS. . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      0096H  1
Clock. . . . . . . . . . . . . . . . .  PUBLIC   CODE   PROC     0000H  -----
_Delay . . . . . . . . . . . . . . . .  PUBLIC   CODE   PROC     0000H  -----
  us . . . . . . . . . . . . . . . . .  * REG *  DATA   U_CHAR   0007H  1
  time . . . . . . . . . . . . . . . .  * REG *  DATA   U_CHAR   0007H  1


MODULE INFORMATION:   STATIC OVERLAYABLE
   CODE SIZE        =    394    ----
   CONSTANT SIZE    =     10    ----
   XDATA SIZE       =   ----    ----
   PDATA SIZE       =   ----    ----
   DATA SIZE        =      9    ----
   IDATA SIZE       =      6    ----
   BIT SIZE         =      1    ----
END OF MODULE INFORMATION.


C51 COMPILATION COMPLETE.  0 WARNING(S),  0 ERROR(S)

⌨️ 快捷键说明

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