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

📄 rom.lst

📁 TFT ILI9320在Keil c下完成成品测试的程序,包括TOUCHPANEL测试.
💻 LST
字号:
C51 COMPILER V7.50   ROM                                                                   05/29/2007 09:06:46 PAGE 1   


C51 COMPILER V7.50, COMPILATION OF MODULE ROM
OBJECT MODULE PLACED IN rom.OBJ
COMPILER INVOKED BY: g:\Keil\C51\BIN\C51.EXE rom.c OPTIMIZE(4,SPEED) DEBUG OBJECTEXTEND

line level    source

   1          #include "head.c"
   2          /* 
   3          sbit ROM_CS=P0^1;//ROM CS
   4          sbit ROM_CLE=P3^2;//ROM COMMAND SELECT PIN
   5          sbit ROM_ALE=P3^0;//ROM ADDRESS SELECT PIN
   6          sbit ROM_BUSY=P3^4;//--ROM R/B PIN
   7          #define  ROM_DATAPORT P2;//ROM PORT
   8          sbit ROM_WR=P3^5;//WRITE
   9          sbit ROM_RD=P3^7;//READ
  10          */
  11          rom_send_com(unsigned char value)
  12          {
  13   1      
  14   1      ROM_RD=1;
  15   1      ROM_CS=0;
  16   1      ROM_CLE=1;//COMMAND
  17   1      ROM_ALE=0;
  18   1      ROM_DATAPORT=value;
  19   1      ROM_WR=0;
  20   1      ROM_WR=1;
  21   1      ROM_CS=1;
  22   1      
  23   1      //ROM_ALE=1;
  24   1      }
  25          
  26          rom_send_add(unsigned char value)
  27          {
  28   1      ROM_RD=1;
  29   1      
  30   1      ROM_ALE=1;//ADDRESS
  31   1      ROM_CLE=0;
  32   1      ROM_CS=0;
  33   1      ROM_DATAPORT=value;
  34   1      ROM_WR=0;
  35   1      ROM_WR=1;
  36   1      ROM_CS=1;
  37   1      
  38   1      }
  39          
  40          rom_send_value(unsigned char value)
  41          {
  42   1      ROM_CLE=0; //value
  43   1      ROM_ALE=0;//
  44   1      ROM_RD=1;
  45   1      ROM_CS=0;
  46   1      ROM_DATAPORT=value;
  47   1      ROM_WR=0;
  48   1      ROM_WR=1;
  49   1      ROM_CS=1;
  50   1      //ROM_ALE=1;
  51   1      }
  52          
  53          
  54          
  55          void rom_check_busy() //NOT BUSY RETURN 
C51 COMPILER V7.50   ROM                                                                   05/29/2007 09:06:46 PAGE 2   

  56          {
  57   1      unsigned char value;
  58   1      value=0;
  59   1      while((value&0x40)==0)//is busy? yes-->check again
  60   1      {//read the status
  61   2      rom_send_com(0x70);//get status
  62   2      ROM_DATAPORT=0xff;
  63   2      
  64   2      ROM_CLE=0; //read the data?!
  65   2      ROM_ALE=0;//
  66   2      ROM_WR=1;
  67   2      ROM_CS=0;
  68   2      ROM_RD=0;
  69   2      value=ROM_DATAPORT;
  70   2      ROM_RD=1;
  71   2      ROM_CS=1;
  72   2      //delay(1);
  73   2      }
  74   1      //ROM_ALE=1;
  75   1      }
  76          
  77          
  78          
  79          //-------------->Erase whole block data<--------------------
  80          unsigned char rom_erase_block(unsigned int add)
  81          {
  82   1      unsigned char value;
  83   1      rom_send_com(0x60);
  84   1      /*
  85   1      rom_send_add(add>>8);
  86   1      rom_send_add((unsigned char )add);
  87   1      */
  88   1      
  89   1      rom_send_add((add&0x7)<<5);
  90   1      rom_send_add(add>>3);
  91   1      
  92   1      rom_send_com(0xd0);
  93   1      
  94   1      //--busy check!
  95   1      ROM_BUSY=1;
  96   1      while(ROM_BUSY==0);
  97   1      
  98   1      //value=0;
  99   1      //while((value&0x40)==0)//is busy? yes-->check again
 100   1      {//read the status
 101   2      rom_send_com(0x70);//get status
 102   2      ROM_DATAPORT=0xff;
 103   2      
 104   2      ROM_CLE=0; //read the data?!
 105   2      ROM_ALE=0;
 106   2      ROM_WR=1;
 107   2      ROM_CS=0;
 108   2      ROM_RD=0;
 109   2      value=ROM_DATAPORT;
 110   2      ROM_RD=1;
 111   2      ROM_CS=1;
 112   2      delay(10);
 113   2      }
 114   1      //ROM_ALE=1;
 115   1      /*
 116   1      value=0;
 117   1      rom_send_com(0x70);//get status
C51 COMPILER V7.50   ROM                                                                   05/29/2007 09:06:46 PAGE 3   

 118   1      ROM_DATAPORT=0xff;
 119   1      
 120   1      ROM_CLE=0; //read the data?!
 121   1      ROM_ALE=0;
 122   1      ROM_WR=1;
 123   1      ROM_CS=0;
 124   1      ROM_RD=0;
 125   1      value=ROM_DATAPORT;
 126   1      ROM_RD=1;
 127   1      ROM_CS=1;
 128   1      delay(10);
 129   1      EA=1;
 130   1      printc(value);
 131   1      EA=0;
 132   1      */
 133   1      if((value&1)==0)
 134   1      return 0;//erase ok
 135   1      else
 136   1      return 1;//erase error
 137   1       
 138   1      
 139   1      }
 140          
 141          
 142          //-------------->write whole block data------<--------------
 143          void rom_write_block_start(unsigned char addcol,unsigned int addrow)
 144          {
 145   1      rom_send_com(0x80);//program
 146   1      rom_send_add(addcol);
 147   1      
 148   1      rom_send_add((unsigned char)addrow);
 149   1      rom_send_add(addrow>>8);
 150   1      
 151   1      ROM_BUSY=1;
 152   1      while(ROM_BUSY==0);
 153   1      ROM_BUSY=1;
 154   1      while(ROM_BUSY==0);
 155   1      
 156   1      //----after this can write data to flash.............--- 
 157   1      }
 158          
 159          
 160          
 161          unsigned char rom_write_block_end()
 162          {
 163   1      //unsigned char value;
 164   1      rom_send_com(0x10);
 165   1      
 166   1      //--busy check!
 167   1      
 168   1      ROM_BUSY=1;
 169   1      while(ROM_BUSY==0);
 170   1      ROM_BUSY=1;
 171   1      while(ROM_BUSY==0);
 172   1      
 173   1       /*
 174   1      value=0;
 175   1      while((value&0x40)==0)//is busy? yes-->check again
 176   1      {//read the status
 177   1      rom_send_com(0x70);//get status
 178   1      ROM_DATAPORT=0xff;
 179   1      ROM_CLE=0; //read the data?!
C51 COMPILER V7.50   ROM                                                                   05/29/2007 09:06:46 PAGE 4   

 180   1      ROM_ALE=0;//
 181   1      ROM_WR=1;
 182   1      ROM_CS=0;
 183   1      ROM_RD=0;
 184   1      value=ROM_DATAPORT;
 185   1      ROM_RD=1;
 186   1      ROM_CS=1;
 187   1      ROM_ALE=1;
 188   1      //delay(10);
 189   1       
 190   1      }
 191   1      
 192   1      if((value&1)==0)
 193   1      return 0;//erase ok
 194   1      else
 195   1      return 1;//erase error
 196   1       */
 197   1       return 0;
 198   1      }
 199          
 200          
 201          void rom_read_block_start(unsigned char addcol,unsigned int addrow)
 202          {
 203   1      //unsigned char value;
 204   1      rom_send_com(0x00);
 205   1      
 206   1      rom_send_add(addcol);
 207   1      
 208   1      rom_send_add((unsigned char)addrow);
 209   1      
 210   1      //rom_send_add(addrow>>8);
 211   1      ROM_CLE=0;
 212   1      ROM_ALE=1;//ADDRESS
 213   1      ROM_RD=1;
 214   1      ROM_CS=0;
 215   1      ROM_DATAPORT=addrow>>8;
 216   1      ROM_WR=0;
 217   1      ROM_WR=1;
 218   1       
 219   1      
 220   1      ROM_BUSY=1;
 221   1      while(ROM_BUSY==0);
 222   1      ROM_BUSY=1;
 223   1      while(ROM_BUSY==0);
 224   1      //delay(1);
 225   1      ROM_CS=1;
 226   1       
 227   1       
 228   1      
 229   1      }
 230          /*
 231          void rom_read_write_lcm()//
 232          {
 233          unsigned char value;
 234          unsigned int k,k2;
 235          
 236          ROM_CLE=0; //read the data?!
 237          ROM_ALE=0;
 238          ROM_WR=1;
 239          ROM_CS=0;
 240                  LCM_CS=0;
 241                  LCM_RS=1;
C51 COMPILER V7.50   ROM                                                                   05/29/2007 09:06:46 PAGE 5   

 242                  W_C(0x22);
 243          for(k2=1800;k2>0;k2--)//动画的总的帧数,10/s,total  1800 frame,3分
 244          for(k=32767;k>0;k--)
 245          {
 246          ROM_RD=0;
 247          value=ROM_DATAPORT;//data read from flash
 248          ROM_RD=1;
 249                  LCM_DATAPORT=value;//data write to lcm-----------xxxx-------------------------
 250                  LCM_WR=0;//write data to lcm---------------------xxxx-------------------------
 251                  LCM_WR=1;//write data to lcm---------------------xxxx-------------------------
 252          }
 253          
 254          ROM_CS=1;
 255          
 256          
 257          }
 258          */
 259          
 260          
 261          
 262          
 263          void putenter()
 264          {
 265   1      SBUF=0x0d;//send num
 266   1      while(0==TI);
 267   1      TI=0;
 268   1      SBUF=0x0a;//send num
 269   1      while(0==TI);
 270   1      TI=0;
 271   1      
 272   1      }
 273          
 274          void putok()
 275          {
 276   1      SBUF=79;//send num
 277   1      while(0==TI);
 278   1      TI=0;
 279   1      SBUF=75;//send num
 280   1      while(0==TI);
 281   1      TI=0;
 282   1      
 283   1      
 284   1      SBUF=45;//send num
 285   1      while(0==TI);
 286   1      TI=0;
 287   1      SBUF=45;//send num
 288   1      while(0==TI);
 289   1      TI=0;
 290   1      SBUF=62;//send num
 291   1      while(0==TI);
 292   1      TI=0;
 293   1      
 294   1      }
 295          
 296          
 297          
 298          void puterror()
 299          {//ERROR-->
 300   1      SBUF=69;//send num
 301   1      while(0==TI);
 302   1      TI=0;
 303   1      SBUF=82;//send num
C51 COMPILER V7.50   ROM                                                                   05/29/2007 09:06:46 PAGE 6   

 304   1      while(0==TI);
 305   1      TI=0;
 306   1      SBUF=82;//send num
 307   1      while(0==TI);
 308   1      TI=0;
 309   1      SBUF=79;//send num
 310   1      while(0==TI);
 311   1      TI=0;
 312   1      SBUF=82;//send num
 313   1      while(0==TI);
 314   1      TI=0;
 315   1      
 316   1      SBUF=45;//send num
 317   1      while(0==TI);
 318   1      TI=0;
 319   1      SBUF=45;//send num
 320   1      while(0==TI);
 321   1      TI=0;
 322   1      SBUF=62;//send num
 323   1      while(0==TI);
 324   1      TI=0;
 325   1      
 326   1      }
 327          
 328          void putspace()
 329          {
 330   1      SBUF=0x20;//send num
 331   1      while(0==TI);
 332   1      TI=0;
 333   1      
 334   1      }
 335          void putnum(unsigned char value)
 336          {
 337   1      SBUF=value|0x30;//send num
 338   1      while(0==TI);
 339   1      TI=0;
 340   1      }
 341          
 342          void printi(unsigned int value )
 343          {
 344   1      unsigned int a;
 345   1      unsigned char temp;
 346   1      a=value;
 347   1      
 348   1      if(a>=10000)
 349   1      {
 350   2      temp=a/10000;
 351   2      putnum(temp);
 352   2      a=a%10000;
 353   2      }
 354   1      
 355   1      
 356   1      
 357   1      if(a>=1000)
 358   1      {
 359   2      temp=a/1000;
 360   2      putnum(temp);
 361   2      a=a%1000;
 362   2      }else if(value>=10000)
 363   1      putnum(0);
 364   1      
 365   1      //---------------->>>>
C51 COMPILER V7.50   ROM                                                                   05/29/2007 09:06:46 PAGE 7   

 366   1      if(a>=100)
 367   1      {
 368   2      temp=a/100;
 369   2      putnum(temp);
 370   2      a=a%100;
 371   2      }else if(value>=1000)
 372   1      putnum(0);
 373   1      
 374   1      //---------------->>>>>>
 375   1      if(a>=10)
 376   1      {
 377   2      temp=a/10;
 378   2      putnum(temp);
 379   2      a=a%10;
 380   2      }else if(value>=100)
 381   1      putnum(0);
 382   1      
 383   1      
 384   1      if(a>0)
 385   1      {
 386   2      temp=a;
 387   2      putnum(temp);
 388   2      }
 389   1      else
 390   1      putnum(0);
 391   1      
 392   1      putspace();
 393   1      }
 394          
 395          
 396          
 397          void printc(unsigned char value )
 398          {
 399   1      unsigned char a;
 400   1      unsigned char temp;
 401   1      a=value;
 402   1      //---------------->>>>
 403   1      if(a>=100)
 404   1      {
 405   2      temp=a/100;
 406   2      putnum(temp);
 407   2      a=a%100;
 408   2      }
 409   1      
 410   1      //---------------->>>>>>
 411   1      if(a>=10)
 412   1      {
 413   2      temp=a/10;
 414   2      putnum(temp);
 415   2      a=a%10;
 416   2      }else if(value>=100)
 417   1      {
 418   2      putnum(0);
 419   2      }
 420   1      
 421   1      if(a>0)
 422   1      {
 423   2      temp=a;
 424   2      putnum(temp);
 425   2      }
 426   1      else
 427   1      putnum(0);
C51 COMPILER V7.50   ROM                                                                   05/29/2007 09:06:46 PAGE 8   

 428   1      
 429   1      
 430   1      putspace();
 431   1      }
 432          
 433          
 434          unsigned char rom_readID() //read the rom ID
 435          {
 436   1      unsigned char value;
 437   1      //rom_send_com(0x90);
 438   1      
 439   1      ROM_RD=1;
 440   1      ROM_CS=0;
 441   1      ROM_CLE=1;//COMMAND
 442   1      ROM_ALE=0;
 443   1      ROM_DATAPORT=0x90;
 444   1      ROM_WR=0;
 445   1      ROM_WR=1;
 446   1       
 447   1      
 448   1      //rom_send_add(0x00);
 449   1       
 450   1       
 451   1      ROM_CLE=0;
 452   1      ROM_ALE=1;
 453   1      ROM_DATAPORT=00;
 454   1      ROM_WR=0;
 455   1      ROM_WR=1;
 456   1      
 457   1      
 458   1      
 459   1      ROM_CLE=0; //read the data?!
 460   1      ROM_ALE=0;//
 461   1      
 462   1      ROM_DATAPORT=0xff; 
 463   1       
 464   1      ROM_RD=0;
 465   1      value=ROM_DATAPORT;
 466   1      ROM_RD=1;
 467   1      ROM_CS=1;
 468   1      
 469   1      ROM_ALE=1;
 470   1      return value;
 471   1      
 472   1      }
 473          
 474          
 475          
 476          
 477          
 478          
 479          
 480          
 481          
 482          
 483          
 484          
 485          
 486          
 487          
 488          

C51 COMPILER V7.50   ROM                                                                   05/29/2007 09:06:46 PAGE 9   


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