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

📄 10732.lst

📁 uc1612 LCD 驱动例程实现各种电检测试画面
💻 LST
📖 第 1 页 / 共 2 页
字号:
 225   2               {
 226   3      
 227   3             write_data(0x00);
 228   3               }
 229   2         }
 230   1      }
 231          
 232          void frame8111(uchar page_c,uchar slsb,uchar smsb)
 233          {
 234   1         uint i,j,k,m;
 235   1         uchar s_slsb,s_smsb;
 236   1         s_smsb=smsb;
 237   1      
 238   1         locatexy(page_c,slsb,smsb);
 239   1         for(j=0;j<21;j++)
 240   1         {
 241   2                write_data(0xff);
C51 COMPILER V7.06   10732                                                                 06/07/2007 23:24:53 PAGE 5   

 242   2         }
 243   1       
 244   1      
 245   1        
 246   1         for(i=1;i<10;i++)
 247   1         {
 248   2                 
 249   2                 if(s_slsb==0x6f)
 250   2                 {
 251   3                   //s_slsb=0x60;
 252   3                       s_smsb=smsb+1;
 253   3                 }
 254   2                   s_slsb=slsb+i;
 255   2                       if(s_slsb>0x6f)//(s_slsb<<4)>240
 256   2                       {
 257   3                        s_slsb=s_slsb-16;
 258   3                       }
 259   2                
 260   2              
 261   2              locatexy(page_c,s_slsb,s_smsb);
 262   2                  write_data(0x03);
 263   2                  for(k=1;k<20;k++)
 264   2                  { 
 265   3                    write_data(0x00);
 266   3                  }
 267   2                    write_data(0x03);
 268   2          }
 269   1         
 270   1          if(s_slsb+1>0x6f)
 271   1              {
 272   2                s_slsb=0x60;
 273   2                s_smsb=s_smsb+1;
 274   2              }
 275   1          locatexy(page_c,s_slsb+1,s_smsb);
 276   1          for(m=0;m<21;m++)
 277   1          {
 278   2             write_data(0xff);
 279   2          }
 280   1       
 281   1             
 282   1      }
 283          
 284          void frame()
 285          {
 286   1        clrram();
 287   1         frame8111(0x00,0x60,0x70);
 288   1         frame8111(0x00,0x6c,0x70);
 289   1         frame8111(0x00,0x03,0x72);
 290   1         frame8111(0x00,0x62,0x72);
 291   1         frame8111(0x00,0x6d,0x72);
 292   1         frame8111(0x00,0x68,0x73);
 293   1         frame8111(0X00,0x63,0x74);
 294   1         frame8111(0x00,0x6c,0x74);
 295   1         
 296   1      }
 297          
 298          void dots1()
 299          {
 300   1        uint i,j,k;
 301   1        clrram();
 302   1        locatexy(page_CS,lsb,msb);
 303   1        for(i=0;i<80;i++)
C51 COMPILER V7.06   10732                                                                 06/07/2007 23:24:53 PAGE 6   

 304   1        {
 305   2          for(j=0;j<26;j++)
 306   2              {
 307   3                 write_data(0xcc);
 308   3              }
 309   2          for(k=0;k<26;k++)
 310   2          {
 311   3            write_data(0x33);
 312   3          }
 313   2        }
 314   1      
 315   1      }
 316          
 317          void dots2()
 318          {
 319   1         uint i,j,k;
 320   1         clrram();
 321   1         locatexy(page_CS,lsb,msb);
 322   1         for(i=0;i<80;i++)
 323   1         {
 324   2           for(j=0;j<26;j++)
 325   2               {
 326   3                 write_data(0x33);
 327   3               }
 328   2           for(k=0;k<26;k++)
 329   2           
 330   2           {
 331   3             write_data(0xcc);
 332   3           }
 333   2         }
 334   1      
 335   1      }
 336          
 337          /*
 338          void gray(uchar page_c,uchar slsb,uchar smsb)
 339          {
 340             uint i,j,k,m;
 341             locatexy(page_c,slsb,smsb);
 342             for(j=0;j<21;j++)
 343             {
 344                    write_data(0xff);
 345             }
 346             for(i=1;i<10;i++)
 347             {
 348              
 349               locatexy(page_c,slsb+1,smsb);
 350                   write_data(0x80);
 351                   for(k=0;k<20;k++)
 352                   {
 353                     locatexy(page_c+k,slsb+k+1,smsb);
 354                     write_data(0x00);
 355                   }
 356                   write_data(0x01);
 357             }
 358             locatexy(page_c,slsb+10,smsb);
 359             for(m=0;m<21;m++)
 360             {
 361               write_data(0xff);
 362             }
 363             
 364             
 365          }
C51 COMPILER V7.06   10732                                                                 06/07/2007 23:24:53 PAGE 7   

 366          */
 367          
 368          uchar kscan()
 369          {
 370   1        uint i=44;
 371   1              while(1)
 372   1              {
 373   2                      if(K1==0|K2==0|K3==0)
 374   2                      {
 375   3                              if(K1==0)
 376   3                              {
 377   4                                      delay1ms(10);
 378   4                                      if(K1==1)
 379   4                                      {
 380   5                                              delay1ms(10);
 381   5                                              return(1);
 382   5                                      }
 383   4                              }
 384   3                              if(K2==0)
 385   3                              {
 386   4                                      delay1ms(10);
 387   4                                      if(K2==1)
 388   4                                      {
 389   5                                              delay1ms(10);
 390   5                                              if(i>193)i=0;
 391   5                                              write_com(0x81);
 392   5                                              write_com(adj_vop[i]);
 393   5                                              i++;
 394   5                                      }
 395   4                              }
 396   3                              if(K3==0)
 397   3                              {
 398   4                                      delay1ms(10);
 399   4                                      if(K3==1)
 400   4                                      {
 401   5                                              delay1ms(10);
 402   5                                              if(i==0)
 403   5                                                 {
 404   6                                                      write_com(0x81);
 405   6                                                      write_com(adj_vop[i]);
 406   6                                                      i=193;
 407   6                                                      }
 408   5                                              else {
 409   6                                                      write_com(0x81);
 410   6                                                      write_com(adj_vop[i]);
 411   6                                                      i--;
 412   6                                                      }
 413   5                                      }
 414   4                              }
 415   3                      }
 416   2              }
 417   1      }
 418          
 419          
 420          main() 
 421          {
 422   1              uchar key=0;
 423   1              init_lcd();
 424   1          while(1)
 425   1          {
 426   2              key= key+kscan();
 427   2              if(key>6) key=1;
C51 COMPILER V7.06   10732                                                                 06/07/2007 23:24:53 PAGE 8   

 428   2              switch(key)
 429   2              {
 430   3                      case 1:{ font(); }break;
 431   3                      case 2:{ displayon(); }break;
 432   3                  case 3:{ displayoff(); }break;
 433   3                      case 4:{ frame();}break;
 434   3                      case 5:{ dots1(); }break;
 435   3                      case 6:{ dots2(); }break;
 436   3                //case 8:{ gray(0x00,0x60,0x70);}break;
 437   3                      default:break;
 438   3                      }
 439   2              }
 440   1      }


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