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

📄 main.lst

📁 a gps program
💻 LST
字号:
C51 COMPILER V7.09   MAIN                                                                  11/19/2006 16:03:10 PAGE 1   


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

line level    source

   1          #include "includes.h"
   2          #include "isr.h"
   3          #include "uart.h"
   4          #include "key.h"
   5          #include "display.h"
   6          #include "eeprom.h"
   7          
   8          sbit MPH1 = P1^2;
   9          sbit MPM1 = P1^3;
  10          sbit GPS_OFF = P3^6;
  11          sbit CD_U17 = P1^5;
  12          
  13          bit FlagStart = 0, FlagStop = 0, FlagSYN, FlagType;
  14          uchar idata Time[6], Date[6], Longitude[10], Latitude[9];
  15          uchar idata GetCoun = 0;
  16          
  17          uchar idata Year, Month, Day, Hour, Minute, Second, Week;
  18          uchar idata Planet[2];
  19          
  20          bit FlagAC;
  21          uchar idata ACData[6];
  22          uint idata Frequency = 0;
  23          uchar idata ACCoun = 0;
  24          uchar idata Timer_20, MS20;
  25          ulong idata SecAC, Sec;
  26          
  27          char MenuCoun = 0;
  28          
  29          char idata Set[8], FlagSet = 0;
  30          uchar DisCoun = 0, Flash = 1;
  31          
  32          //主函数
  33          
  34          void main (void)
  35          {
  36   1          char i;
  37   1          int coun;
  38   1          float fre;
  39   1          uchar ms20;
  40   1      
  41   1          DelayMs(200);
  42   1              if (0x77 == read(0x30)) {
  43   2                  for (i = 0; i < 8; i++) {
  44   3                          DelayMs(50);
  45   3                  Set[i] = read(i);
  46   3                  }
  47   2              }
  48   1              else {
  49   2                  memset(Set, 0, 8);
  50   2                      for (i = 0; i < 8; i++)
  51   2                  write(i, Set[i]);
  52   2                      write(0x30, 0x77);
  53   2              }
  54   1          CPUInit();
  55   1          DisplayInit();
C51 COMPILER V7.09   MAIN                                                                  11/19/2006 16:03:10 PAGE 2   

  56   1              SetBaud(9600);
  57   1          GPS_OFF = 0;
  58   1      
  59   1          while (1) {
  60   2              //采样次数够,可以计算频率
  61   2              if (FlagAC == 1) {
  62   3                  coun = 0;
  63   3                  for (i = 0; i < 5; i++) {
  64   4                      coun += ACData[i];
  65   4                  }
  66   3                  fre = coun / 1.032 / 5;
  67   3                  Frequency = (uint)fre;
  68   3                  ACCoun = 0;
  69   3                  FlagAC = 0;
  70   3              }
  71   2              //数据收全
  72   2              if (FlagStart == 1 && FlagStop == 1) {
  73   3                  if (FlagType == 0) {
  74   4                      ComputeDate();
  75   4                      SendData0();
  76   4                      Display();
  77   4                  }
  78   3                              GetCoun = 0;
  79   3                  FlagStart = 0;
  80   3                  FlagStop = 0;
  81   3              }
  82   2      
  83   2              if (Clock0 > 100) {
  84   3                  KeyScan();
  85   3                              DisCoun++;
  86   3                  Clock0 = 0;
  87   3              }
  88   2      
  89   2                      if (Clock1 > 250) {
  90   3                              if (ms20 != MS20) {
  91   4                                  ms20 = MS20;
  92   4                              }
  93   3                              else {
  94   4                                  Sec = 0;
  95   4                                      SecAC = 0;
  96   4                                      MS20 = 0;
  97   4                              }
  98   3                              Clock1 = 0;
  99   3                      }
 100   2      
 101   2                      if (FlagSet) {
 102   3                              if (DisCoun > 20) {
 103   4                                  Display();
 104   4                                      Flash = !Flash;
 105   4                                      DisCoun = 0;
 106   4                              }
 107   3                  }
 108   2          }
 109   1      }


MODULE INFORMATION:   STATIC OVERLAYABLE
   CODE SIZE        =    319    ----
   CONSTANT SIZE    =   ----    ----
   XDATA SIZE       =   ----    ----
   PDATA SIZE       =   ----    ----
   DATA SIZE        =      3       2
C51 COMPILER V7.09   MAIN                                                                  11/19/2006 16:03:10 PAGE 3   

   IDATA SIZE       =     69    ----
   BIT SIZE         =      5    ----
END OF MODULE INFORMATION.


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

⌨️ 快捷键说明

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