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

📄 exam.lst

📁 单片机软件仿真 中断的应用 单片机软件仿真 中断的应用
💻 LST
字号:
C51 COMPILER V6.12  EXAM                                                                   03/08/2009 00:20:35 PAGE 1   


C51 COMPILER V6.12, COMPILATION OF MODULE EXAM
OBJECT MODULE PLACED IN .\exam.OBJ
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE .\exam.c DEBUG OBJECTEXTEND CODE

stmt level    source

   1          #include<reg51.h>  //52单片机头文件
   2          #include <intrins.h> //包含有左右循环移位子函数的库
   3          #define uint unsigned int    //宏定义
   4          #define uchar unsigned char  //宏定义
   5          sbit dula=P2^6;       //数码管段选锁存端
   6          sbit wela=P2^7;       ////数码管位选锁存端
   7          uchar num,tt,iled;
   8          uchar code table[]={
   9          0x3f,0x06,0x5b,0x4f,
  10          0x66,0x6d,0x7d,0x07,
  11          0x7f,0x6f,0x77,0x7c,
  12          0x39,0x5e,0x79,0x71};
  13          void main()
  14          {
  15   1      	num=0;
  16   1      	tt=0;
  17   1      	iled=0xfe;
  18   1      	TMOD=0x01;//设置定时器0为工作方式1
  19   1      	TH0=(65536-5000)/256;
  20   1      	TL0=(65536-5000)%256;
  21   1      	EA=1;//开总中断
  22   1      	ET0=1;//开定时器0中断
  23   1      	TR0=1;//启动定时器0
  24   1      	dula=1;
  25   1      	P0=0x3f;  //给段开始送显示0。
  26   1      	dula=0;//关闭段选锁存端,防止开始时出现乱码。
  27   1      	wela=1;//11101010
  28   1      	P0=0x00; // 打开六个数码管位选
  29   1      	wela=0;
  30   1      	while(1)
  31   1      	{
  32   2      		if(tt==1)   //每进入10次中断即为500ms,执行一次显示变化。
  33   2      		   {
  34   3      		   		
  35   3      				tt=0;
  36   3      				
  37   3      				if(num==8)
  38   3      				num=0;
  39   3      			//	dula=1;
  40   3      				P0=0xff;
  41   3      			//	dula=0;
  42   3      				wela=1;
  43   3      				P0=iled;
  44   3      				wela=0;
  45   3      				iled=_crol_(iled,1);
  46   3      				
  47   3      
  48   3      				dula=1;
  49   3      				P0=table[num];
  50   3      				num++;
  51   3      				dula=0;	
  52   3      
  53   3      				
  54   3      			}
  55   2      	}
C51 COMPILER V6.12  EXAM                                                                   03/08/2009 00:20:35 PAGE 2   

  56   1      }
  57          
  58          
  59          void exter0() interrupt 1    // 定时器0中断
  60          {
  61   1      	TH0=(65536-5000)/256;
  62   1      	TL0=(65536-5000)%256;
  63   1      	tt++;
  64   1      }
C51 COMPILER V6.12  EXAM                                                                   03/08/2009 00:20:35 PAGE 3   

ASSEMBLY LISTING OF GENERATED OBJECT CODE


             ; FUNCTION main (BEGIN)
                                           ; SOURCE LINE # 13
                                           ; SOURCE LINE # 14
                                           ; SOURCE LINE # 15
0000 E4                CLR     A
0001 F500        R     MOV     num,A
                                           ; SOURCE LINE # 16
0003 F500        R     MOV     tt,A
                                           ; SOURCE LINE # 17
0005 7500FE      R     MOV     iled,#0FEH
                                           ; SOURCE LINE # 18
0008 758901            MOV     TMOD,#01H
                                           ; SOURCE LINE # 19
000B 758CEC            MOV     TH0,#0ECH
                                           ; SOURCE LINE # 20
000E 758A78            MOV     TL0,#078H
                                           ; SOURCE LINE # 21
0011 D2AF              SETB    EA
                                           ; SOURCE LINE # 22
0013 D2A9              SETB    ET0
                                           ; SOURCE LINE # 23
0015 D28C              SETB    TR0
                                           ; SOURCE LINE # 24
0017 D2A6              SETB    dula
                                           ; SOURCE LINE # 25
0019 75803F            MOV     P0,#03FH
                                           ; SOURCE LINE # 26
001C C2A6              CLR     dula
                                           ; SOURCE LINE # 27
001E D2A7              SETB    wela
                                           ; SOURCE LINE # 28
0020 F580              MOV     P0,A
                                           ; SOURCE LINE # 29
0022 C2A7              CLR     wela
0024         ?C0001:
                                           ; SOURCE LINE # 30
                                           ; SOURCE LINE # 31
                                           ; SOURCE LINE # 32
0024 E500        R     MOV     A,tt
0026 B401FB            CJNE    A,#01H,?C0001
                                           ; SOURCE LINE # 33
                                           ; SOURCE LINE # 35
0029 E4                CLR     A
002A F500        R     MOV     tt,A
                                           ; SOURCE LINE # 37
002C E500        R     MOV     A,num
002E B40803            CJNE    A,#08H,?C0004
                                           ; SOURCE LINE # 38
0031 E4                CLR     A
0032 F500        R     MOV     num,A
0034         ?C0004:
                                           ; SOURCE LINE # 40
0034 7580FF            MOV     P0,#0FFH
                                           ; SOURCE LINE # 42
0037 D2A7              SETB    wela
                                           ; SOURCE LINE # 43
0039 850080      R     MOV     P0,iled
                                           ; SOURCE LINE # 44
003C C2A7              CLR     wela
C51 COMPILER V6.12  EXAM                                                                   03/08/2009 00:20:35 PAGE 4   

                                           ; SOURCE LINE # 45
003E AF00        R     MOV     R7,iled
0040 7801              MOV     R0,#01H
0042 EF                MOV     A,R7
0043 08                INC     R0
0044 8001              SJMP    ?C0008
0046         ?C0007:
0046 23                RL      A
0047         ?C0008:
0047 D8FD              DJNZ    R0,?C0007
0049 F500        R     MOV     iled,A
                                           ; SOURCE LINE # 48
004B D2A6              SETB    dula
                                           ; SOURCE LINE # 49
004D E500        R     MOV     A,num
004F 900000      R     MOV     DPTR,#table
0052 93                MOVC    A,@A+DPTR
0053 F580              MOV     P0,A
                                           ; SOURCE LINE # 50
0055 0500        R     INC     num
                                           ; SOURCE LINE # 51
0057 C2A6              CLR     dula
                                           ; SOURCE LINE # 54
                                           ; SOURCE LINE # 55
0059 80C9              SJMP    ?C0001
             ; FUNCTION main (END)

             ; FUNCTION exter0 (BEGIN)
                                           ; SOURCE LINE # 59
                                           ; SOURCE LINE # 61
0000 758CEC            MOV     TH0,#0ECH
                                           ; SOURCE LINE # 62
0003 758A78            MOV     TL0,#078H
                                           ; SOURCE LINE # 63
0006 0500        R     INC     tt
                                           ; SOURCE LINE # 64
0008 32                RETI    
             ; FUNCTION exter0 (END)



MODULE INFORMATION:   STATIC OVERLAYABLE
   CODE SIZE        =    100    ----
   CONSTANT SIZE    =     16    ----
   XDATA SIZE       =   ----    ----
   PDATA SIZE       =   ----    ----
   DATA SIZE        =      3    ----
   IDATA SIZE       =   ----    ----
   BIT SIZE         =   ----    ----
END OF MODULE INFORMATION.


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

⌨️ 快捷键说明

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