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

📄 main.lst

📁 protues编的数字电压表
💻 LST
字号:
C51 COMPILER V8.02   MAIN                                                                  10/19/2008 10:42:27 PAGE 1   


C51 COMPILER V8.02, COMPILATION OF MODULE MAIN
OBJECT MODULE PLACED IN main.OBJ
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE main.c BROWSE DEBUG OBJECTEXTEND

line level    source

   1          #include <reg52.h>
   2          #define TIME_PER_SEC 480 //定义定时器定时频率
   3          #define CLOCK 12000000   //系统时钟
   4          #define LED_SEG_PORT P0  //定义数码管接口
   5          #define LED_BIT_PORT P2
   6          
   7          sbit key0 = P3^4;
   8          sbit key1 = P3^5;
   9          
  10          sbit wr = P3^6;
  11          sbit rd = P3^7;
  12          
  13          unsigned char beep_flag; 
  14          unsigned long int counter;
  15          
  16          extern delay(unsigned int);
  17          unsigned char segcode[]=
  18          {
  19            0x3F,0x06,0x5B,0x4F,0x66,0x6D,0x7D,0x07,0x7F,0x6F,
  20            0xBF,0x86,0xDB,0xCF,0xE6,0xED,0xFD,0x87,0xFF,0xEF,0
  21          
  22          };//共阴极
  23          unsigned char led_buf[]={0,0,0,0,0,0,0}; //6只数码管
  24          
  25          //定时器初始化
  26          void Init_Timer1(void)
  27          {
  28   1        TMOD = (TMOD & 0X0F) | 0X10; //定时器1工作在模式1,16Bit定时器模式 
  29   1        TH1 = 255-CLOCK/TIME_PER_SEC/12/256;
  30   1        TL1 = 255-CLOCK/TIME_PER_SEC/12%256; 
  31   1        TR1 = 1; 
  32   1        ET1 = 1;//开启定时器和中断
  33   1      }
  34          
  35          main()
  36          {       
  37   1              beep_flag=0;
  38   1              Init_Timer1();
  39   1              EX0 = 1;
  40   1              EX1 = 1;
  41   1              IT0 = 1;
  42   1              IT1 = 1;
  43   1              EA = 1;
  44   1              wr=1;
  45   1              rd=0;//ADC数据直接输出(一直输出)
  46   1              while(1)
  47   1              {
  48   2                      wr=0;
  49   2                      wr=1;//启动ADC
  50   2      
  51   2                      /***以下按十进制取模,更新显示缓冲区***/
  52   2                      led_buf[0] = counter%10;
  53   2                      led_buf[1] = (counter/10)%10;
  54   2                      led_buf[2] = (counter/100)%10+10;//+10就是加小数点              
  55   2                      led_buf[3] = 20;//熄灭
C51 COMPILER V8.02   MAIN                                                                  10/19/2008 10:42:27 PAGE 2   

  56   2                      led_buf[4] = 20;//熄灭
  57   2                      led_buf[5] = 20;//熄灭
  58   2                      /*************************************/
  59   2      
  60   2                      delay(1000);//延时等待ADC结束
  61   2                      counter = P1*2; //从P1口读数据
  62   2                              
  63   2              }
  64   1      }
  65          
  66          
  67          /*定时器中断,完成数码管显示刷新*/
  68          void time() interrupt 3
  69          {
  70   1         static unsigned char i=0;
  71   1         TH1 = 255-CLOCK/TIME_PER_SEC/12/256;
  72   1         TL1 = 255-CLOCK/TIME_PER_SEC/12%256;    
  73   1         i=++i%6;   
  74   1         LED_BIT_PORT = 0x0|beep_flag;  //关所有数码管
  75   1         LED_SEG_PORT = segcode[led_buf[i]];
  76   1         LED_BIT_PORT = (1<<i)|beep_flag;   
  77   1      }
  78          
  79          /*外部中断0函数*/
  80          void int_0() interrupt 0
  81          {
  82   1      
  83   1      }
  84          
  85          /*外部中断1函数*/
  86          void int_1() interrupt 2
  87          {
  88   1      
  89   1      }
  90          
  91          /*常用延时函数,t<65536*/
  92          delay(unsigned int t)
  93          {
  94   1              while(--t);
  95   1      }


MODULE INFORMATION:   STATIC OVERLAYABLE
   CODE SIZE        =    247    ----
   CONSTANT SIZE    =   ----    ----
   XDATA SIZE       =   ----    ----
   PDATA SIZE       =   ----    ----
   DATA SIZE        =     34    ----
   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 + -