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

📄 测电压.lst

📁 直交流电压表仿真程序加上仿真图
💻 LST
字号:
C51 COMPILER V9.50a   ______                                                               03/03/2013 13:35:57 PAGE 1   


C51 COMPILER V9.50a, COMPILATION OF MODULE ______
OBJECT MODULE PLACED IN 测电压.OBJ
COMPILER INVOKED BY: D:\程序\Keil For 51\C51\BIN\C51.EXE 测电压.c BROWSE DEBUG OBJECTEXTEND TABS(2)

line level    source

   1          #include "reg51.h"
   2          #include "lcd1602.c"
   3          sbit start=P2^0;
   4          sbit stop=P2^2;
   5          sbit OE=P2^1;
   6          sbit clk=P2^4;
   7          sbit key=P3^0;
   8          unsigned char flag;
   9          void timerint()
  10          {
  11   1        TMOD=0x11;//设置定时器0为工作方式1(为十六位计数)
  12   1        TH0=(65536-1000)/256;
  13   1        TL0=(65536-1000)%256;
  14   1        EA=1;//开总中断
  15   1        ET0=1;//开定时器0中断
  16   1        TR0=1;//启动定时器0
  17   1      }
  18          void main()
  19          {
  20   1       int temp,a,b,temp1;
  21   1       int  sum = 0;
  22   1       LCD_Initial();
  23   1       timerint();
  24   1       GotoXY(5,0);
  25   1       Print("   The Vol Is:");
  26   1       while(1)   
  27   1        { 
  28   2          OE=0;
  29   2          start=0;
  30   2          start=1;
  31   2          start=0;//下降沿,开始转换
  32   2          while(stop==0);//查询是否转换结束
  33   2          OE=1;
  34   2          if(flag==0)
  35   2          {   
  36   3              temp=P1;
  37   3              a = temp*(1000/51)*1.028;//1.032是修正系数
  38   3              temp=0;
  39   3              GotoXY(1,1);
  40   3              Print("DC");
  41   3              GotoXY(4,1);
  42   3              LCD_Write(1,a/1000+0x30);
  43   3              Print(".");
  44   3              LCD_Write(1,a%1000/100+'0');
  45   3              LCD_Write(1,a%100/10+'0');
  46   3              LCD_Write(1,a%10+'0');
  47   3              Print("V");
  48   3          }
  49   2          if(flag==1)
  50   2          {
  51   3            
  52   3            temp1=P1;
  53   3            b = temp1*(1000/51);
  54   3            if(b>1.5) b=b*1.491;
  55   3            if(b>1.0&&b<1.5) b=b*2;
C51 COMPILER V9.50a   ______                                                               03/03/2013 13:35:57 PAGE 2   

  56   3            GotoXY(1,1);
  57   3            Print("AC");
  58   3            GotoXY(4,1);
  59   3            LCD_Write(1,b/1000+0x30);
  60   3            Print(".");
  61   3            LCD_Write(1,b%1000/100+'0');
  62   3            LCD_Write(1,b%100/10+'0');
  63   3            LCD_Write(1,b%10+'0');
  64   3            Print("V");
  65   3        
  66   3          }
  67   2        
  68   2          OE=0;
  69   2          delay(1000);
  70   2          
  71   2          
  72   2        }
  73   1      }
  74          void time0() interrupt 1
  75          {
  76   1        TH0=(65536-1000)/256;
  77   1        TL0=(65536-1000)%256;
  78   1        clk=~clk;
  79   1        if(key==0)
  80   1        {
  81   2         flag++;
  82   2         while(key==0);
  83   2         if(flag==2) flag=0;
  84   2        }
  85   1      }
  86            


MODULE INFORMATION:   STATIC OVERLAYABLE
   CODE SIZE        =    648    ----
   CONSTANT SIZE    =     25    ----
   XDATA SIZE       =   ----    ----
   PDATA SIZE       =   ----    ----
   DATA SIZE        =      1      12
   IDATA SIZE       =   ----    ----
   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 + -