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

📄 disp_txt_prc.lst

📁 楼宇对讲系统里用的文字信息接收。用可视对讲话机的TFT屏可看到从管理中心发过来的广播信息和本户的特发信息
💻 LST
📖 第 1 页 / 共 3 页
字号:
C51 COMPILER V7.06   DISP_TXT_PRC                                                          06/10/2005 13:26:29 PAGE 1   


C51 COMPILER V7.06, COMPILATION OF MODULE DISP_TXT_PRC
OBJECT MODULE PLACED IN DISP_TXT_PRC.OBJ
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE DISP_TXT_PRC.C BROWSE DEBUG OBJECTEXTEND CODE SYMBOLS

stmt level    source

   1           /***********************************************************/
   2          /*                                                                                     */
   3          /*                CPU:AT89c55   20MHZ                      */
   4          /*                Copyright  2004.09  Comelit              */
   5          /*                AUTHOR:  LV_XIAO_LU                      */
   6          /*                                                         */
   7          /***********************************************************/
   8          #include <reg52.h>
   9          #include "define.h"
  10          #include "typedef.h"
  11          #include "variable.h"
  12          #include "function.h"
  13          
  14          sbit MES_SW = P1^7;
  15          void Dummy_disp(void) ;
  16          void First_menu_disp(void);
  17          extern  void Mes_list_disp(void) ;
  18          void Mes_content_disp(void);
  19          void Disp_prc(void);
  20          
  21          
  22          
  23          /***********************************************************/
  24          /*信息列表界面如下:
  25          
  26          
  27          /***********************************************************/
  28          /*              进入信息查询后界面显示如下               */
  29          /***********************************************************/                                          
  30          /*                 信息浏览                                */
  31          /*                   第X条                                 */
  32          /*                   第X条                                 */
  33          /*                   第X条                                 */
  34          /*                   第X条                                 */
  35          /*                   第X条                                 */
  36          /*                                                         */
  37          /*               下页        返回                          */
  38          /***********************************************************/
  39          
  40                                        
  41          
  42          
  43          
  44          /***********************************************************/
  45          /***********************************************************/ 
  46          
  47          void Dummy_disp(void) 
  48          {
  49   1                MES_SW = SW_OFF;
  50   1                mes_sw_F = 0;
  51   1            sw_delay = TM500MS;               
  52   1                read_mes_F = 0;
  53   1            return;
  54   1      }
  55          
C51 COMPILER V7.06   DISP_TXT_PRC                                                          06/10/2005 13:26:29 PAGE 2   

  56          /***********************************************************/
  57          /***********************************************************/ 
  58          void (*const  code dummy_tbl[])(void)=
  59          {
  60             Dummy_disp
  61          };
  62          
  63          /***********************************************************/
  64          /***********************************************************/ 
  65          
  66          void ( *const code first_tbl[])(void)=
  67          {
  68             First_menu_disp
  69          };
  70          
  71          
  72          /***********************************************************/
  73          /***********************************************************/ 
  74          void (*const code second_tbl[])(void)  =
  75          {
  76             Mes_list_disp
  77          };
  78          
  79          /***********************************************************/
  80          /***********************************************************/
  81          void (*const code third_tbl[])(void)=
  82          {
  83            Mes_content_disp,
  84            Mes_content_disp,
  85            Mes_content_disp,
  86            Mes_content_disp,
  87            Mes_content_disp
  88          };
  89          
  90          /***********************************************************/
  91          /***********************************************************/
  92          
  93          void ( *const *const code disp_tbl[])(void)=
  94          {
  95            dummy_tbl,
  96            first_tbl,
  97            second_tbl,
  98            third_tbl
  99            
 100          };
 101          /***********************************************************/
 102          /***********************************************************/
 103          void First_menu_disp(void)
 104          
 105          {
 106   1      //   Disp_str("ABC",0,1,2,7,CHA_COLOR_WHITE,0);  //TEST ASCII
 107   1          Disp_str("科曼利信息系统",0,1,3,7,CHA_COLOR_WHITE,0);
 108   1      
 109   1         if(select_position == MES_READ_POSITION)      
 110   1            at_label = 1;
 111   1         else
 112   1            at_label = 0;  
 113   1         Disp_str("查询信息",1,3,3,BACK_COLOR_BLACK,CHA_COLOR_WHITE,at_label);
 114   1      //   Disp_str("READ",1,3,3,BACK_COLOR_BLACK,CHA_COLOR_RED,at_label); //test
 115   1      
 116   1         if(select_position == CLOSE_POSITION)    
 117   1            at_label = 1;
C51 COMPILER V7.06   DISP_TXT_PRC                                                          06/10/2005 13:26:29 PAGE 3   

 118   1         else
 119   1            at_label = 0;
 120   1      
 121   1         Disp_str("退出",2,3,3,BACK_COLOR_BLACK,CHA_COLOR_WHITE,at_label);
 122   1      //  Disp_str("EX",2,3,3,BACK_COLOR_BLACK,CHA_COLOR_RED,at_label);                        
 123   1      }
 124          
 125          /***********************************************************/
 126          
 127          /***********************************************************/
 128          void Mes_content_disp(void)
 129          {
 130   1          if(disp_no_u_old != disp_no_u)
 131   1              {
 132   2              if(disp_no_u == 0)
 133   2                      {      
 134   3               //             mes_content =(unsigned char *)mes_list->mes_addr.address.address ;
 135   3                              content_disp_end_F = 0 ;
 136   3                              content_row = 0;
 137   3                              content_col = 2;
 138   3                      }
 139   2               /* 保存这一屏显示信息*/  
 140   2              if(content_disp_F == P_DISP)
 141   2              {
 142   3                      content_list[disp_no_u].page_content = mes_content ;
 143   3                      content_list[disp_no_u].row = content_row;
 144   3                      content_list[disp_no_u].col = content_col ;
 145   3              }
 146   2                      else
 147   2                      {
 148   3                      mes_content = content_list[disp_no_u].page_content;
 149   3                              content_row = content_list[disp_no_u].row;
 150   3                              content_col = content_list[disp_no_u].col ;
 151   3                      }
 152   2              
 153   2               
 154   2      //      Page_switch(mes_list->mes_addr.address.page_addr);         //切换页模式
 155   2              Page_switch(read_mes_page_adr);
 156   2                      Disp_content(mes_content,content_row,content_col,3,7,CHA_COLOR_WHITE,0);
 157   2                      Page_switch(PAGE_0);                                      //换回正常状态             
 158   2              disp_no_u_old = disp_no_u ;
 159   2           }
 160   1               /* 如果一屏已显示完内容*/
 161   1                      if(content_disp_end_F == 1)
 162   1                      {
 163   2                              
 164   2                              if(select_position == 0)
 165   2                                      at_label =1;
 166   2                              else
 167   2                                      at_label = 0;
 168   2                              if(disp_no_u == 0)   //如果是第一屏
 169   2                     Disp_str("删除",7,1,3,BACK_COLOR_BLACK,CHA_COLOR_WHITE,at_label);
 170   2                              else
 171   2      //                     Disp_str("上页",7,1,3,BACK_COLOR_BLACK,CHA_COLOR_RED,at_label);  
 172   2                     Disp_str("上页",7,1,3,BACK_COLOR_BLACK,CHA_COLOR_WHITE,at_label);  
 173   2      
 174   2                             
 175   2                              if(select_position == 1)
 176   2                                      at_label = 1;
 177   2                              else
 178   2                                      at_label = 0;
 179   2                      if(disp_no_u == 0)
C51 COMPILER V7.06   DISP_TXT_PRC                                                          06/10/2005 13:26:29 PAGE 4   

 180   2      //                      Disp_str("返回",7,7,3,BACK_COLOR_BLACK,CHA_COLOR_RED,at_label);
 181   2                  {
 182   3                                Disp_str("返回",7,7,3,BACK_COLOR_BLACK,CHA_COLOR_WHITE,at_label);
 183   3                                        return;
 184   3                              }
 185   2                      else
 186   2      //                     Disp_str("删除",7,5,3,BACK_COLOR_BLACK,CHA_COLOR_RED,at_label);
 187   2                     Disp_str("删除",7,4,3,BACK_COLOR_BLACK,CHA_COLOR_WHITE,at_label);
 188   2                              if(select_position == 2)
 189   2                              at_label = 1;
 190   2                              else
 191   2                              at_label =0 ;
 192   2      //                  Disp_str("返回",7,8,3,BACK_COLOR_BLACK,CHA_COLOR_RED,at_label);
 193   2                  if(disp_no_u !=0)
 194   2                                 Disp_str("返回",7,7,3,BACK_COLOR_BLACK,CHA_COLOR_WHITE,at_label);
 195   2                      }
 196   1                      else         //内容没显示完时
 197   1                      {
 198   2                      if(select_position == 0)
 199   2                              at_label = 1;
 200   2                              else
 201   2                              at_label = 0;
 202   2                              if(disp_no_u == 0)             //内容没显示完,但是第一页
 203   2      //                      Disp_str("下页",9,1,3,BACK_COLOR_BLACK,CHA_COLOR_RED,at_label);
 204   2                      Disp_str("下页",7,1,3,BACK_COLOR_BLACK,CHA_COLOR_WHITE,at_label);
 205   2                              else
 206   2      //                      Disp_str("上页",9,1,3,BACK_COLOR_BLACK,CHA_COLOR_RED,at_label);
 207   2                      Disp_str("上页",7,1,3,BACK_COLOR_BLACK,CHA_COLOR_WHITE,at_label);
 208   2                              if(select_position == 1)
 209   2                              at_label = 1;
 210   2                              else
 211   2                              at_label = 0;
 212   2                              if(disp_no_u == 0)
 213   2      //                      Disp_str("返回",9,7,3,BACK_COLOR_BLACK,CHA_COLOR_RED,at_label);
 214   2                   {
 215   3                                  Disp_str("返回",7,7,3,BACK_COLOR_BLACK,CHA_COLOR_WHITE,at_label);
 216   3                                              return;
 217   3                               }
 218   2                              else
 219   2      //                      Disp_str("下页",7,5,3,BACK_COLOR_BLACK,CHA_COLOR_RED,at_label);
 220   2                      Disp_str("下页",7,4,3,BACK_COLOR_BLACK,CHA_COLOR_WHITE,at_label);
 221   2      
 222   2                              if(select_position == 2)
 223   2                              at_label = 1;
 224   2                              else
 225   2                              at_label = 0;
 226   2      //                      Disp_str("返回",7,7,3,BACK_COLOR_BLACK,CHA_COLOR_RED,at_label);
 227   2                  Disp_str("返回",7,7,3,BACK_COLOR_BLACK,CHA_COLOR_WHITE,at_label);
 228   2              }
 229   1               
 230   1      }
 231          /***********************************************************/
 232          /***********************************************************/
 233          void Disp_prc(void)
 234          {
 235   1          if(write_F == 0)
 236   1          {
 237   2                      if(disp_mode_old != disp_mode)
 238   2              {
 239   3                 
 240   3                              disp_no_u = 0 ;
 241   3      //         disp_no_u_old = 0;
C51 COMPILER V7.06   DISP_TXT_PRC                                                          06/10/2005 13:26:29 PAGE 5   

 242   3                              Vram_clear();
 243   3                              disp_tbl[disp_mode][disp_no_u]();
 244   3                              disp_mode_old = disp_mode ;
 245   3                              disp_change_F = 0;
 246   3                              return;
 247   3                      }
 248   2      //    else if(disp_no_u_old != disp_no_u)
 249   2              else if(disp_change_F == 1)          //同一模式下的不同显示方式处理
 250   2              {  
 251   3                              if((mes_list_F == 1)||(clear_scr_F == 1))
 252   3                              {
 253   4                              Vram_clear();
 254   4                                      clear_scr_F = 0;
 255   4                              }
 256   3                              disp_tbl[ disp_mode ][ disp_no_u ]();
 257   3                              disp_change_F = 0;
 258   3                              return;
 259   3              }
 260   2               }
 261   1      
 262   1      }
 263          
 264          
 265          /***********************************************************/
 266          /***********************************************************/
 267          
C51 COMPILER V7.06   DISP_TXT_PRC                                                          06/10/2005 13:26:29 PAGE 6   

ASSEMBLY LISTING OF GENERATED OBJECT CODE


             ; FUNCTION Dummy_disp (BEGIN)
                                           ; SOURCE LINE # 47
                                           ; SOURCE LINE # 48
                                           ; SOURCE LINE # 49
0000 D297              SETB    MES_SW
                                           ; SOURCE LINE # 50

⌨️ 快捷键说明

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