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

📄 mcu.lst

📁 hx8347 初始化,刷屏,图片显示
💻 LST
📖 第 1 页 / 共 2 页
字号:
 248          * Function      : extern_interrupt0
 249          * Description   : 
 250          * Input Para    : 
 251          * Output Para   : 
 252          * Return Value: 
 253          ==================================================================*/
 254          void extern_interrupt0(void) interrupt 0
 255          {
 256   1      
 257   1      }
 258          
 259          
 260          
 261          
 262          /*==================================================================
 263          * Function      : extern_interrupt1
 264          * Description   : 
 265          * Input Para    : 
 266          * Output Para   : 
 267          * Return Value: 
 268          ==================================================================*/
 269          void extern_interrupt1(void) interrupt 2
 270          {
 271   1              EX1 = 0;
 272   1              
 273   1              tp_read_adc(&TP_X, &TP_Y);
 274   1              if(TP_X > 0)
 275   1              {
 276   2                      bTP_INT = TRUE;
 277   2      
 278   2                      MSTimerStart(MSTIMERMODE_HANDLE_IN_MSG, 10, tp_task);
 279   2              }
 280   1              else
 281   1              {
 282   2                      IE1 = 0;
 283   2                      EX1 = 1;        
 284   2              }
 285   1              
 286   1      
 287   1              //uprintf("TP INT");
 288   1      
 289   1      #if 0
                      uprintf("\nX=");
                      uputchar(TP_X >> 8);
                      uputchar(TP_X & 0xFF);
                      uprintf("  Y=");
                      uputchar(TP_Y >> 8);
                      uputchar(TP_Y & 0xFF);  
              #endif
 297   1      
 298   1      
 299   1              
 300   1      }
 301          
 302          
C51 COMPILER V7.10   MCU                                                                   04/14/2009 23:28:39 PAGE 6   

 303          /*==================================================================
 304          * Function      : uart_put
 305          * Description   : send U8 as raw data through uart
 306          * Input Para    : U8 val        : the data to send
 307          * Output Para   : void
 308          * Return Value: void
 309          ==================================================================*/
 310          void uart_put(U8 u8)
 311          {
 312   1              U1 ES_MAP;
 313   1              
 314   1              ES_MAP = ES;    
 315   1              
 316   1              ES = 0;
 317   1              SBUF = u8;
 318   1              while(!TI);
 319   1              TI = 0;
 320   1              
 321   1      
 322   1              ES = ES_MAP;
 323   1      }
 324          
 325          
 326          
 327          static U8 RcvState = 0;
 328          static U16 idata StartX, StartY, EndX, EndY;
 329          static U8 idata HRcvData, LRcvData;
 330          static U32 idata DataCnt;
 331          
 332          /*==================================================================
 333          * Function      : UartInterruptService
 334          * Description   : The UART interrupt server
 335          * Input Para    : void
 336          * Output Para   : void
 337          * Return Value: void
 338          ==================================================================*/
 339          static void UartInterruptService(void) interrupt 4
 340          {
 341   1              ES = 0;
 342   1              RI = 0;
 343   1              //uart_process(SBUF);
 344   1      
 345   1      
 346   1      #ifdef DOWNLOADADDRESS
 347   1              switch(RcvState)
 348   1              {
 349   2                      case 0:
 350   2                              H_U16(StartX) = SBUF;
 351   2                              RcvState++;
 352   2                              break;
 353   2                      case 1:
 354   2                              L_U16(StartX) = SBUF;
 355   2                              RcvState++;
 356   2                              break;  
 357   2                      case 2:
 358   2                              H_U16(StartY) = SBUF;
 359   2                              RcvState++;
 360   2                              break;
 361   2                      case 3:
 362   2                              L_U16(StartY) = SBUF;
 363   2                              RcvState++;
 364   2                              break;
C51 COMPILER V7.10   MCU                                                                   04/14/2009 23:28:39 PAGE 7   

 365   2                              
 366   2                      case 4:
 367   2                              H_U16(EndX) = SBUF;
 368   2                              RcvState++;
 369   2                              break;
 370   2                      case 5:
 371   2                              L_U16(EndX) = SBUF;
 372   2                              RcvState++;
 373   2                              break;
 374   2                              
 375   2                      case 6:
 376   2                              H_U16(EndY) = SBUF;
 377   2                              RcvState++;
 378   2                              break;
 379   2                      case 7:
 380   2                              L_U16(EndY) = SBUF;
 381   2                              RcvState++;
 382   2                              lcd_set_write_area(StartX, StartY, EndX, EndY);
 383   2                              nand_erase_block(0);
 384   2                              nand_erase_block(1);
 385   2      
 386   2                              nand_save_bitmap_init();
 387   2                              
 388   2                              DataCnt = EndY - StartY + 1;
 389   2                              DataCnt = DataCnt * (EndX - StartX + 1);
 390   2                              //DataCnt = DataCnt << 1; 
 391   2                              break;
 392   2                      case 8:
 393   2                              DataCnt--;
 394   2                              HRcvData = SBUF;
 395   2                              nand_save_bitmap(HRcvData);
 396   2                              RcvState++;
 397   2                              break;
 398   2                      case 9:
 399   2                              LRcvData = SBUF;
 400   2                              nand_save_bitmap(LRcvData);
 401   2                              WMLCDDATA(HRcvData, LRcvData);
 402   2                              RcvState--;
 403   2                              if(DataCnt == 0)
 404   2                              {
 405   3                                      RcvState = 0;
 406   3                              }
 407   2                              break;
 408   2                                      
 409   2              }
 410   1      #else
                      switch(RcvState)
                      {
                              case 0:
                                      HRcvData = SBUF;
                                      RcvState++;
                                      break;
                              case 1:
                                      LRcvData = SBUF;
                                      WMLCDDATA(HRcvData, LRcvData);
                                      RcvState--;
                                      break;
                      }
                                      
              #endif
 425   1      
 426   1      
C51 COMPILER V7.10   MCU                                                                   04/14/2009 23:28:39 PAGE 8   

 427   1              ES=1;
 428   1      }
 429          
 430          
 431          #if 1
 432          /*==================================================================
 433          * Function      : Timer0InterruptService
 434          * Description   : 
 435          * Input Para    : 
 436          * Output Para   : 
 437          * Return Value: 
 438          ==================================================================*/
 439          void Timer0InterruptService(void) interrupt 1
 440          {
 441   1              ET0 = 0;
 442   1              TF0 = 0;
 443   1              timer0_init(TRUE, 1, 0xDC, 0x00);
 444   1              timer2_process();
 445   1              ET0 = 1;
 446   1      }
 447          #endif
 448          
 449          
 450          #if 0           /*缺省用于串口*/
              /*==================================================================
              * Function      : Timer1InterruptService
              * Description   : 
              * Input Para    : 
              * Output Para   : 
              * Return Value: 
              ==================================================================*/
              void Timer1InterruptService(void) interrupt 3
              {
              
              }
              #endif
 463          
 464          
 465          /*==================================================================
 466          * Function      : Timer2InterruptService
 467          * Description   : Timer2 interrupt as system timer,It is importance
 468          * Input Para    : void
 469          * Output Para   : void
 470          * Return Value: void
 471          ==================================================================*/
 472          void Timer2InterruptService(void) interrupt 5 
 473          {
 474   1              ET2 = 0;                                                        /*close interrupt*/
 475   1              TF2 = 0;                                                        /*clear interrupt flag*/
 476   1      
 477   1              timer2_process();
 478   1      
 479   1              ET2 = 1;
 480   1      }
 481          
 482          
 483          
 484          
 485          
 486          
 487          
 488          
C51 COMPILER V7.10   MCU                                                                   04/14/2009 23:28:39 PAGE 9   

 489          


MODULE INFORMATION:   STATIC OVERLAYABLE
   CODE SIZE        =    803    ----
   CONSTANT SIZE    =   ----    ----
   XDATA SIZE       =   ----    ----
   PDATA SIZE       =   ----    ----
   DATA SIZE        =      1       4
   IDATA SIZE       =     14    ----
   BIT SIZE         =   ----       7
END OF MODULE INFORMATION.


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

⌨️ 快捷键说明

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