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

📄 sci_io.lst

📁 这是一个对OSD芯片upd6464A操作的接口测试程序,使用KC51编译一个高速球键盘程序
💻 LST
📖 第 1 页 / 共 2 页
字号:
 172                                  
 173                                  for( charvar=0;charvar<=6;charvar++)
 174                                          keycode_temp[charvar]=keycode[charvar];
 175                                  keycode_num=0;
 176                                  if(keycode_temp[1]==ID)
 177                                  { 
 178                                          intvar=(((unsigned int )keycode_temp[2])<<8)+(unsigned char )keycode_temp[3];
 179                                          switch(intvar)
C51 COMPILER V7.50   SCI_IO                                                                11/03/2008 11:24:34 PAGE 4   

 180                                          {
 181                                          case 0x55 :    //选择球机/解码器地址,什么也不用处理,键盘组合用
 182                                                  break;
 183                                          case 0x3 :              //设置预置点
 184                                                  break;
 185                                          case 0x7 :              //调用预置点
 186                                                  break;
 187                                          case 0x5 :              //清除预置点
 188                                                  break;
 189                                          case 0x4f :             //运行轨迹
 190                                                  break;
 191                                          case 0x40 :             //控制摄像机WIDE
 192                                                  Zoom_wide();
 193                                                  while(!keycode_num)
 194                                                          WDT_cls();
 195                                                  for( charvar=0;charvar<=6;charvar++)
 196                                                          keycode_temp[charvar]=keycode[charvar];
 197                                                  keycode_num=0;
 198                                                  Zoom_stop();    
 199                                                  break;
 200                                          case 0x20:              //TELE
 201                                                  Zoom_tele();
 202                                                  while(!keycode_num)
 203                                                          WDT_cls();
 204                                                  for( charvar=0;charvar<=6;charvar++)
 205                                                          keycode_temp[charvar]=keycode[charvar];
 206                                                  keycode_num=0;
 207                                                  Zoom_stop();
 208                                                  break;
 209                                          case 0x80 :             //FAR
 210                                                  Focus_far();
 211                                                  while(!keycode_num)
 212                                                          WDT_cls();
 213                                                  for( charvar=0;charvar<=6;charvar++)
 214                                                          keycode_temp[charvar]=keycode[charvar];
 215                                                  keycode_num=0;
 216                                                  Focus_stop();
 217                                                  break;
 218                                          case 0x100 :    //NEAR
 219                                                  Focus_near();
 220                                                  while(!keycode_num)
 221                                                          WDT_cls();
 222                                                  for( charvar=0;charvar<=6;charvar++)
 223                                                          keycode_temp[charvar]=keycode[charvar];
 224                                                  keycode_num=0;
 225                                                  Focus_stop();
 226                                                  break;
 227                                          case 0x200 :    //OPEN  无控制
 228                                                  while(!keycode_num)
 229                                                          WDT_cls();
 230                                                  for( charvar=0;charvar<=6;charvar++)
 231                                                          keycode_temp[charvar]=keycode[charvar];
 232                                                  keycode_num=0;
 233                                                  break;
 234                                          case 0x400 :    //CLOSE  无控制
 235                                                  while(!keycode_num)
 236                                                          WDT_cls();
 237                                                  for( charvar=0;charvar<=6;charvar++)
 238                                                          keycode_temp[charvar]=keycode[charvar];
 239                                                  keycode_num=0;
 240                                                  break;
 241                                          case 0x8 :              //摇杆向上
C51 COMPILER V7.50   SCI_IO                                                                11/03/2008 11:24:34 PAGE 5   

 242                                                  
 243                                                  dir_vertical=1;
 244                                                  T1_start();
 245                                                  do
 246                                                  {
 247                                                          while(!keycode_num)
 248                                                                  WDT_cls();
 249                                                          for( charvar=0;charvar<=6;charvar++)
 250                                                                  keycode_temp[charvar]=keycode[charvar];
 251                                                          keycode_num=0;
 252                                                          intvar=(((unsigned int )keycode_temp[2])<<8)+(unsigned char )keycode_temp[3];
 253                                                  }while(intvar!=0);
 254                                                  T1_stop();
 255                                                  break;
 256                                          case 0x10 :             //摇杆向下
 257                                                  dir_vertical=0;
 258                                                  T1_start();
 259                                                  do
 260                                                  {
 261                                                          while(!keycode_num)
 262                                                                  WDT_cls();
 263                                                          for( charvar=0;charvar<=6;charvar++)
 264                                                                  keycode_temp[charvar]=keycode[charvar];
 265                                                          keycode_num=0;
 266                                                          intvar=(((unsigned int )keycode_temp[2])<<8)+(unsigned char )keycode_temp[3];
 267                                                  }while(intvar!=0);
 268                                                  T1_stop();
 269                                                  break;
 270                                          case 0x4 :              //摇杆向左
 271                                                  dir_horizon=1;
 272                                                  T0_start();
 273                                                  do
 274                                                  {
 275                                                          while(!keycode_num)
 276                                                                  WDT_cls();
 277                                                          for( charvar=0;charvar<=6;charvar++)
 278                                                                  keycode_temp[charvar]=keycode[charvar];
 279                                                          keycode_num=0;
 280                                                          intvar=(((unsigned int )keycode_temp[2])<<8)+(unsigned char )keycode_temp[3];
 281                                                  }while(intvar!=0);
 282                                                  T0_stop();
 283                                                  break;
 284                                          case 0x2 :              //摇杆向右
 285                                                  dir_horizon=0;
 286                                                  T0_start();
 287                                                  do
 288                                                  {
 289                                                          while(!keycode_num)
 290                                                                  WDT_cls();
 291                                                          for( charvar=0;charvar<=6;charvar++)
 292                                                                  keycode_temp[charvar]=keycode[charvar];
 293                                                          keycode_num=0;
 294                                                          intvar=(((unsigned int )keycode_temp[2])<<8)+(unsigned char )keycode_temp[3];
 295                                                  }while(intvar!=0);
 296                                                  T0_stop();
 297                                                  break;
 298                                          case 0x53 :             //相机串口的一系列操作   无控制
 299                                                  break;
 300                                          default:
 301                                                  break;
 302          }       //switch结束
 303          }       //if结束
C51 COMPILER V7.50   SCI_IO                                                                11/03/2008 11:24:34 PAGE 6   

 304          else
 305          {
 306            _nop_();              //相机处理码程序
 307          }
 308          
 309          break;
 310          }  //switch结束
 311          }       //while结束
 312          }//main结束     
 313          
 314          
 315          
 316          
 317          
 318          */
 319          
 320          
C51 COMPILER V7.50   SCI_IO                                                                11/03/2008 11:24:34 PAGE 7   

ASSEMBLY LISTING OF GENERATED OBJECT CODE


C51 COMPILER V7.50   SCI_IO                                                                11/03/2008 11:24:34 PAGE 8   

NAME                                    CLASS   MSPACE  TYPE    OFFSET  SIZE
====                                    =====   ======  ====    ======  ====


XICON. . . . . . . . . . . . . . . . .  SFR      DATA   U_CHAR   00C0H  1
P4 . . . . . . . . . . . . . . . . . .  SFR      DATA   U_CHAR   00E8H  1
size_t . . . . . . . . . . . . . . . .  TYPEDEF  -----  U_INT    -----  2


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