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

📄 90c58.lst

📁 STC90C58AD 程序
💻 LST
📖 第 1 页 / 共 2 页
字号:
 237   2        XBuffP++;
 238   2        if(XBuffP==8) XBuffP=0;
 239   2        triggle=1;
 240   2       }
 241   1       
C51 COMPILER V7.00  90C58                                                                  01/09/2011 14:26:43 PAGE 5   

 242   1       if(count == Q3SECTICKS)
 243   1       {
 244   2        cycles=3;
 245   2        for(i=0;i<8;i++)
 246   2        { 
 247   3         sbuff[4+i]=ticks[i][0]+ticks[i][1]+ticks[i][2]+ticks[i][3]; 
 248   3         ticks[i][cycles]=0;
 249   3        }
 250   2        if(X00) X0Buff[0]|=(1<<XBuffP);
 251   2        else X0Buff[0]&=~(1<<XBuffP);
 252   2        if(X01) X0Buff[1]|=(1<<XBuffP);
 253   2        else X0Buff[1]&=~(1<<XBuffP);
 254   2        if(X02) X0Buff[2]|=(1<<XBuffP);
 255   2        else X0Buff[2]&=~(1<<XBuffP);
 256   2        if(X03) X0Buff[3]|=(1<<XBuffP);
 257   2        else X0Buff[3]&=~(1<<XBuffP);
 258   2        if(X04) X0Buff[4]|=(1<<XBuffP);
 259   2        else X0Buff[4]&=~(1<<XBuffP);
 260   2        if(X05) X0Buff[5]|=(1<<XBuffP);
 261   2        else X0Buff[5]&=~(1<<XBuffP);
 262   2        if(X06) X0Buff[6]|=(1<<XBuffP);
 263   2        else X0Buff[6]&=~(1<<XBuffP);
 264   2        if(X07) X0Buff[7]|=(1<<XBuffP);
 265   2        else X0Buff[7]&=~(1<<XBuffP);
 266   2      
 267   2        if(X10) X1Buff[0]|=(1<<XBuffP);
 268   2        else X1Buff[0]&=~(1<<XBuffP);
 269   2        if(X11) X1Buff[1]|=(1<<XBuffP);
 270   2        else X1Buff[1]&=~(1<<XBuffP);
 271   2        if(X12) X1Buff[2]|=(1<<XBuffP);
 272   2        else X1Buff[2]&=~(1<<XBuffP);
 273   2        if(X13) X1Buff[3]|=(1<<XBuffP);
 274   2        else X1Buff[3]&=~(1<<XBuffP);
 275   2        if(X14) X1Buff[4]|=(1<<XBuffP);
 276   2        else X1Buff[4]&=~(1<<XBuffP);
 277   2        if(X15) X1Buff[5]|=(1<<XBuffP);
 278   2        else X1Buff[5]&=~(1<<XBuffP);
 279   2        if(X16) X1Buff[6]|=(1<<XBuffP);
 280   2        else X1Buff[6]&=~(1<<XBuffP);
 281   2        if(X17) X1Buff[7]|=(1<<XBuffP);
 282   2        else X1Buff[7]&=~(1<<XBuffP);
 283   2      
 284   2        if(X20) X2Buff[0]|=(1<<XBuffP);
 285   2        else X2Buff[0]&=~(1<<XBuffP);
 286   2        if(X21) X2Buff[1]|=(1<<XBuffP);
 287   2        else X2Buff[1]&=~(1<<XBuffP);
 288   2        if(X22) X2Buff[2]|=(1<<XBuffP);
 289   2        else X2Buff[2]&=~(1<<XBuffP);
 290   2        if(X23) X2Buff[3]|=(1<<XBuffP);
 291   2        else X2Buff[3]&=~(1<<XBuffP);
 292   2        if(X24) X2Buff[4]|=(1<<XBuffP);
 293   2        else X2Buff[4]&=~(1<<XBuffP);
 294   2        if(X25) X2Buff[5]|=(1<<XBuffP);
 295   2        else X2Buff[5]&=~(1<<XBuffP);
 296   2        if(X26) X2Buff[6]|=(1<<XBuffP);
 297   2        else X2Buff[6]&=~(1<<XBuffP);
 298   2        if(X27) X2Buff[7]|=(1<<XBuffP);
 299   2        else X2Buff[7]&=~(1<<XBuffP);
 300   2      
 301   2        XBuffP++;
 302   2        if(XBuffP==8) XBuffP=0;
 303   2        triggle=1;
C51 COMPILER V7.00  90C58                                                                  01/09/2011 14:26:43 PAGE 6   

 304   2       }
 305   1       
 306   1       if(count == SECTICKS)
 307   1       {
 308   2        count=0; 
 309   2        cycles=0;
 310   2        for(i=0;i<8;i++)
 311   2        { 
 312   3         sbuff[4+i]=ticks[i][0]+ticks[i][1]+ticks[i][2]+ticks[i][3]; 
 313   3         ticks[i][cycles]=0;
 314   3        }
 315   2        if(X00) X0Buff[0]|=(1<<XBuffP);
 316   2        else X0Buff[0]&=~(1<<XBuffP);
 317   2        if(X01) X0Buff[1]|=(1<<XBuffP);
 318   2        else X0Buff[1]&=~(1<<XBuffP);
 319   2        if(X02) X0Buff[2]|=(1<<XBuffP);
 320   2        else X0Buff[2]&=~(1<<XBuffP);
 321   2        if(X03) X0Buff[3]|=(1<<XBuffP);
 322   2        else X0Buff[3]&=~(1<<XBuffP);
 323   2        if(X04) X0Buff[4]|=(1<<XBuffP);
 324   2        else X0Buff[4]&=~(1<<XBuffP);
 325   2        if(X05) X0Buff[5]|=(1<<XBuffP);
 326   2        else X0Buff[5]&=~(1<<XBuffP);
 327   2        if(X06) X0Buff[6]|=(1<<XBuffP);
 328   2        else X0Buff[6]&=~(1<<XBuffP);
 329   2        if(X07) X0Buff[7]|=(1<<XBuffP);
 330   2        else X0Buff[7]&=~(1<<XBuffP);
 331   2      
 332   2        if(X10) X1Buff[0]|=(1<<XBuffP);
 333   2        else X1Buff[0]&=~(1<<XBuffP);
 334   2        if(X11) X1Buff[1]|=(1<<XBuffP);
 335   2        else X1Buff[1]&=~(1<<XBuffP);
 336   2        if(X12) X1Buff[2]|=(1<<XBuffP);
 337   2        else X1Buff[2]&=~(1<<XBuffP);
 338   2        if(X13) X1Buff[3]|=(1<<XBuffP);
 339   2        else X1Buff[3]&=~(1<<XBuffP);
 340   2        if(X14) X1Buff[4]|=(1<<XBuffP);
 341   2        else X1Buff[4]&=~(1<<XBuffP);
 342   2        if(X15) X1Buff[5]|=(1<<XBuffP);
 343   2        else X1Buff[5]&=~(1<<XBuffP);
 344   2        if(X16) X1Buff[6]|=(1<<XBuffP);
 345   2        else X1Buff[6]&=~(1<<XBuffP);
 346   2        if(X17) X1Buff[7]|=(1<<XBuffP);
 347   2        else X1Buff[7]&=~(1<<XBuffP);
 348   2      
 349   2        if(X20) X2Buff[0]|=(1<<XBuffP);
 350   2        else X2Buff[0]&=~(1<<XBuffP);
 351   2        if(X21) X2Buff[1]|=(1<<XBuffP);
 352   2        else X2Buff[1]&=~(1<<XBuffP);
 353   2        if(X22) X2Buff[2]|=(1<<XBuffP);
 354   2        else X2Buff[2]&=~(1<<XBuffP);
 355   2        if(X23) X2Buff[3]|=(1<<XBuffP);
 356   2        else X2Buff[3]&=~(1<<XBuffP);
 357   2        if(X24) X2Buff[4]|=(1<<XBuffP);
 358   2        else X2Buff[4]&=~(1<<XBuffP);
 359   2        if(X25) X2Buff[5]|=(1<<XBuffP);
 360   2        else X2Buff[5]&=~(1<<XBuffP);
 361   2        if(X26) X2Buff[6]|=(1<<XBuffP);
 362   2        else X2Buff[6]&=~(1<<XBuffP);
 363   2        if(X27) X2Buff[7]|=(1<<XBuffP);
 364   2        else X2Buff[7]&=~(1<<XBuffP);
 365   2      
C51 COMPILER V7.00  90C58                                                                  01/09/2011 14:26:43 PAGE 7   

 366   2        XBuffP++;
 367   2        if(XBuffP==8) XBuffP=0;
 368   2        triggle=1;
 369   2       }
 370   1      }
 371          
 372          void main (void)
 373          {
 374   1       unsigned char i;
 375   1       //sbuff[0]=0xD7;
 376   1       //sbuff[1]=6;
 377   1       sbuff[0]='S';
 378   1       sbuff[1]=0xff; //X0
 379   1       sbuff[2]=0xff; //X1
 380   1       sbuff[3]=0xff; //X2
 381   1       sbuff[4]=0; //Count X20
 382   1       sbuff[4]=0; //Count X21
 383   1       sbuff[6]=0; //Count X22
 384   1       sbuff[7]=0; //Count X23
 385   1       sbuff[8]=0; //Count X24
 386   1       sbuff[9]=0; //Count X24
 387   1       sbuff[10]=0; //Count X26
 388   1       sbuff[11]=0; //Count X27
 389   1       sbuff[12]=0; //Y0
 390   1       sbuff[13]=0; //Y1
 391   1       sbuff[14]=0;
 392   1       sbuff[15]='E';
 393   1      
 394   1       cycles=0;    //cycles can be 0,1,2,3; stand for 0/4,1/4,2/4,3/4 seconds;
 395   1       SCON  = 0x50;                  /* SCON: mode 1, 8-bit UART, enable rcvr      */
 396   1       TMOD |= 0x21;               /* TMOD: timer 1, mode 2, 8-bit reload        */
 397   1       TH1   = 0xfa; //4800bps,  as for   11059200
 398   1       //  reload value for 1200 baud @ 18.432MHz   */
 399   1       TR1   = 1;                  /* TR1:  timer 1 run                          */
 400   1       TR0   = 1;
 401   1       TI    = 1;
 402   1       oldX20Stat=X20;
 403   1       oldX21Stat=X21;
 404   1       oldX22Stat=X22;
 405   1       oldX23Stat=X23;
 406   1       oldX24Stat=X24;
 407   1       oldX25Stat=X25;
 408   1       oldX26Stat=X26;
 409   1       oldX27Stat=X27;
 410   1      
 411   1       P0    = 0xff;
 412   1       P4    = 0xff;
 413   1       IE    = 0x82;
 414   1       //Y00=Y01=Y02=Y03=Y04=Y05=Y06=0;
 415   1       //?Y07=0;
 416   1       //Y10=0;
 417   1       //?Y11=0;
 418   1       while (1)
 419   1       {
 420   2        if (triggle)
 421   2        {
 422   3         triggle=0; 
 423   3         for(i=0;i<8;i++)
 424   3         {
 425   4          /*
 426   4          if(X0Buff[i]==0) sbuff[1]&=~(1<<i);
 427   4              if(X0Buff[i]==0xff) sbuff[1]|=(1<<i);
C51 COMPILER V7.00  90C58                                                                  01/09/2011 14:26:43 PAGE 8   

 428   4          if(X1Buff[i]==0) sbuff[2]&=~(1<<i);
 429   4              if(X1Buff[i]==0xff) sbuff[2]|=(1<<i);
 430   4          if(X2Buff[i]==0) sbuff[3]&=~(1<<i);
 431   4              if(X2Buff[i]==0xff) sbuff[3]|=(1<<i);
 432   4          */
 433   4          if((X0Buff[i]|0xc0)==0xc0) sbuff[1]&=~(1<<i);
 434   4              if((X0Buff[i]&0x3f)==0x3f) sbuff[1]|=(1<<i);
 435   4          if((X1Buff[i]|0xc0)==0xc0) sbuff[2]&=~(1<<i);
 436   4              if((X1Buff[i]&0x3f)==0x3f) sbuff[2]|=(1<<i);
 437   4          if((X2Buff[i]|0xc0)==0xc0) sbuff[3]&=~(1<<i);
 438   4              if((X2Buff[i]&0x3f)==0x3f) sbuff[3]|=(1<<i);
 439   4         }
 440   3         if(sbuff[4]>=TICKS_U) Y00=0;
 441   3         if(sbuff[4]<=TICKS_D) Y00=1;
 442   3         if(sbuff[5]>=TICKS_U) Y01=0;
 443   3         if(sbuff[5]<=TICKS_D) Y01=1;
 444   3         if(sbuff[6]>=TICKS_U) Y02=0;
 445   3         if(sbuff[6]<=TICKS_D) Y02=1;
 446   3         if(sbuff[7]>=TICKS_U) Y03=0;
 447   3         if(sbuff[7]<=TICKS_D) Y03=1;
 448   3         if(sbuff[8]>=TICKS_U) Y04=0;
 449   3         if(sbuff[8]<=TICKS_D) Y04=1;
 450   3         if(sbuff[9]>=TICKS_U) Y05=0;
 451   3         if(sbuff[9]<=TICKS_D) Y05=1;
 452   3         if(sbuff[10]>=TICKS_U) Y06=0;
 453   3         if(sbuff[10]<=TICKS_D) Y06=1;
 454   3         if(sbuff[11]>=TICKS_U) Y07=0;
 455   3         if(sbuff[11]<=TICKS_D) Y07=1;
 456   3         //if((cycles & 1)==0) //Two times per second.
 457   3         for(i=0;i<16;i++) putchar(sbuff[i]);
 458   3         
 459   3         //RLed=1;
 460   3        }
 461   2       }
 462   1      }
 463          


MODULE INFORMATION:   STATIC OVERLAYABLE
   CODE SIZE        =   4514    ----
   CONSTANT SIZE    =   ----    ----
   XDATA SIZE       =   ----    ----
   PDATA SIZE       =   ----    ----
   DATA SIZE        =     91       1
   IDATA SIZE       =   ----    ----
   BIT SIZE         =     11    ----
END OF MODULE INFORMATION.


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

⌨️ 快捷键说明

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