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

📄 gt.lst

📁 这是GPS全球卫星定位系统授时的下位机部分
💻 LST
📖 第 1 页 / 共 3 页
字号:
C51 COMPILER V7.50   GT                                                                    10/28/2005 21:31:12 PAGE 1   


C51 COMPILER V7.50, COMPILATION OF MODULE GT
OBJECT MODULE PLACED IN GT.OBJ
COMPILER INVOKED BY: D:\Keil750\C51\BIN\C51.EXE GT.c BROWSE DEBUG OBJECTEXTEND

line level    source

   1                  #include <head.h>
   2                  #include <iap_lite.h>
   3                  #define DDRAM_0 0x80
   4                  #define DDRAM_1 0x90
   5                  #define off_cursor 0x0c
   6                  #define GPSDATA0 0x1800
   7                  #define addrpllvl 0x1801
   8                  #define addrplla  0x1802
   9                  
  10                  sbit SID= P2^2;
  11                  sbit SCLK=P2^3;
  12                  sbit led1=P1^6;
  13                  sbit led2=P2^0;
  14                  sbit led3=P2^1;
  15                  sbit T_CLK = P0^6;            /*实时时钟时钟线引脚 */
  16                  sbit T_IO  = P0^7;            /*实时时钟数据线引脚 */
  17                  sbit T_RST = P2^7;            /*实时时钟复位线引脚 */
  18          
  19          /**********************************
  20          全局变量定义
  21          **********************************/
  22                  sbit isprst=P1^0;
  23                  sbit ispvcc=P1^1;
  24                  sbit ACC0 = ACC^0;
  25                  sbit ACC7 = ACC^7;
  26                  sbit a0=ACC^0;
  27                  sbit a7=ACC^7;
  28                  sbit ds_clk=P0^6;        /*1302时钟端*/
  29                  sbit ds_dat=P0^7;        /*1302数据端*/
  30                  sbit ds_rst=P2^7;        /*1302复位端*/
  31          
  32                  sbit ds1302_clk=P0^6;
  33                  sbit ds1302_dat=P0^7;
  34                  sbit ds1302_rst=P2^7;
  35          
  36                  sbit ACC_0 = ACC^0;
  37                  sbit ACC_1 = ACC^1;
  38                  sbit ACC_2 = ACC^2;
  39                  sbit ACC_3 = ACC^3;
  40                  sbit ACC_4 = ACC^4;
  41                  sbit ACC_5 = ACC^5;
  42                  sbit ACC_6 = ACC^6;
  43                  sbit ACC_7 = ACC^7;
  44                  uchar GPS_DATA[80];
  45                  uchar GPS_STATUS;
  46                  uchar GPS_DATA_POINT;
  47          
  48          void IoInit(void);                                      
  49          void IspInit(voidw);                                    
  50          void delay(uint delayms);
  51          void newdelay(void);
  52          void shortdelay(uchar i);
  53          void ispreset();
  54          void sendBYTE(char dat);
  55          void sendCMD(char dat);
C51 COMPILER V7.50   GT                                                                    10/28/2005 21:31:12 PAGE 2   

  56          void sendDAT(char dat);
  57          void display(char x_add,char dat,char dat1);
  58          void init_lcm(void);
  59          void send_title_up();
  60          void send_title_down();
  61          void   RTInputByte(uchar);       /* 输入 1Byte */
  62          uchar  RTOutputByte(void);       /* 输出 1Byte */
  63          void   W1302(uchar, uchar);
  64          uchar  R1302(uchar);
  65          void   Set1302(uchar *);         /* 设置时间 */
  66          void   Bcd2asc(uchar,uchar *);
  67          void   Get1302(uchar curtime[]); /* 读取1302当前时间 */
  68          unsigned char BCD2ASC(unsigned char);    
  69          void   init1302(void);
  70          void   hour24(void);
  71          void   hour12(void);
  72          
  73          
  74          
  75          /****************************************************/
  76          void shortdelay()
  77          {       uchar i;
  78   1              for(i=50;i>0;i--);
  79   1      }
  80          /****************************************************/
  81          void delay(uint delayms)
  82          {
  83   1              uchar i;
  84   1              uint delayint;
  85   1              for(delayint=0;delayint<delayms;delayint++)
  86   1                      for(i=0;i<255;i++);
  87   1              
  88   1      }
  89          
  90          //串口通讯,用于设置频率
  91          /*******************************************************************/   
  92          void uart_int(void) interrupt 4 
  93          {
  94   1              uchar recchar;
  95   1              uint  recint=0;
  96   1               
  97   1              if(RI)
  98   1              {
  99   2                      RI=0;
 100   2                      recchar=SBUF;
 101   2                      switch(recchar)
 102   2                      {
 103   3                              case 0xfe :     SBUF=0xfe;
 104   3                                      break;
 105   3                              default :
 106   3                                      switch(GPS_STATUS)
 107   3                                      {
 108   4                                              case 0:
 109   4                                                      if(recchar=='$')
 110   4                                                      {
 111   5                                                              GPS_STATUS=1;
 112   5                                                              GPS_DATA_POINT=1;
 113   5                                                              GPS_DATA[GPS_DATA_POINT]=recchar;
 114   5                                                      }
 115   4                                                      break;                                          
 116   4                                              case 1:
 117   4                                                      if(recchar=='G')
C51 COMPILER V7.50   GT                                                                    10/28/2005 21:31:12 PAGE 3   

 118   4                                                      {
 119   5                                                              GPS_STATUS=2;
 120   5                                                              GPS_DATA_POINT=2;
 121   5                                                              GPS_DATA[GPS_DATA_POINT]=recchar;
 122   5                                                      }
 123   4                                                      break;                                          
 124   4                                              case 2:
 125   4                                                      if(recchar=='P')
 126   4                                                      {
 127   5                                                              GPS_STATUS=3;
 128   5                                                              GPS_DATA_POINT=3;
 129   5                                                              GPS_DATA[GPS_DATA_POINT]=recchar;
 130   5                                                      }
 131   4                                                      break;                                          
 132   4                                              case 3:
 133   4                                                      if(recchar=='R')
 134   4                                                      {
 135   5                                                              GPS_STATUS=4;
 136   5                                                              GPS_DATA_POINT=4;
 137   5                                                              GPS_DATA[GPS_DATA_POINT]=recchar;
 138   5                                                      }
 139   4                                                      break;                                          
 140   4                                              case 4:
 141   4                                                      if(recchar=='M')
 142   4                                                      {
 143   5                                                              GPS_STATUS=5;
 144   5                                                              GPS_DATA_POINT=5;
 145   5                                                              GPS_DATA[GPS_DATA_POINT]=recchar;
 146   5                                                      }
 147   4                                                      break;                                          
 148   4                                              case 5:
 149   4                                                      if(recchar=='C')
 150   4                                                      {
 151   5                                                              GPS_STATUS=6;
 152   5                                                              GPS_DATA_POINT=6;
 153   5                                                              GPS_DATA[GPS_DATA_POINT]=recchar;
 154   5                                                      }
 155   4                                                      break;                                          
 156   4                                              default :
 157   4                                                      if(GPS_STATUS>=6)
 158   4                                                      {
 159   5                                                              if(recchar!=0x0a)
 160   5                                                              {
 161   6                                                                      GPS_STATUS=GPS_STATUS+1;
 162   6                                                                      GPS_DATA_POINT=GPS_DATA_POINT+1;
 163   6                                                                      GPS_DATA[GPS_DATA_POINT]=recchar;
 164   6                                                              }
 165   5                                                              else
 166   5                                                              {
 167   6                                                                      GPS_STATUS=999;
 168   6                                                              }
 169   5                                                      }
 170   4                                                      else
 171   4                                                      {
 172   5                                                              GPS_STATUS=0;
 173   5                                                      }
 174   4                                                      break;                                          
 175   4                                      }  
 176   3                      }
 177   2      /*                      while(!RI);
 178   2                              RI=0;
 179   2                              recchar=SBUF;
C51 COMPILER V7.50   GT                                                                    10/28/2005 21:31:12 PAGE 4   

 180   2                              if(recchar=='G')
 181   2                              {
 182   2                                      GPS_STATUS=2;
 183   2                                      GPS_DATA_POINT=2;
 184   2                                      GPS_DATA[GPS_DATA_POINT]=recchar;
 185   2                                      while(!RI);
 186   2                                      RI=0;
 187   2                                      recchar=SBUF;
 188   2                                      if(recchar=='P')
 189   2                                      {
 190   2                                              GPS_STATUS=3;
 191   2                                              GPS_DATA_POINT=3;
 192   2                                              GPS_DATA[GPS_DATA_POINT]=recchar;
 193   2                                              while(!RI);
 194   2                                              RI=0;
 195   2                                              recchar=SBUF;
 196   2                                              if(recchar=='R')
 197   2                                              {
 198   2                                                      GPS_STATUS=4;
 199   2                                                      GPS_DATA_POINT=4;
 200   2                                                      GPS_DATA[GPS_DATA_POINT]=recchar;
 201   2                                                      while(!RI);
 202   2                                                      RI=0;
 203   2                                                      recchar=SBUF;
 204   2                                                      if(recchar=='M')
 205   2                                                      {
 206   2                                                              GPS_STATUS=5;
 207   2                                                              GPS_DATA_POINT=5;
 208   2                                                              GPS_DATA[GPS_DATA_POINT]=recchar;
 209   2                                                              while(!RI);
 210   2                                                              RI=0;
 211   2                                                              recchar=SBUF;
 212   2                                                              if(recchar=='C')
 213   2                                                              {
 214   2                                                                      GPS_STATUS=6;
 215   2                                                                      GPS_DATA_POINT=6;
 216   2                                                                      GPS_DATA[GPS_DATA_POINT]=recchar;
 217   2                                                                      while(!RI);
 218   2                                                                      RI=0;
 219   2                                                                      recchar=SBUF;
 220   2                                                                      while((recchar!=0x0a)&&(GPS_DATA_POINT<=80))
 221   2                                                                      {
 222   2                                                                              GPS_STATUS=GPS_STATUS+1;
 223   2                                                                              GPS_DATA_POINT=GPS_DATA_POINT+1;
 224   2                                                                              GPS_DATA[GPS_DATA_POINT]=recchar;
 225   2                                                                              while(!RI);
 226   2                                                                              RI=0;
 227   2                                                                              recchar=SBUF;
 228   2                                                                      }
 229   2                                                              }
 230   2                                                      }
 231   2                                               }
 232   2                                       }
 233   2                              }
 234   2                      }*/

⌨️ 快捷键说明

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