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

📄 mkrw.lst

📁 显示及鼠标、键盘切换程序。使用STC单片机
💻 LST
📖 第 1 页 / 共 3 页
字号:
 273   9                                              mcodenum = 3;
 274   9                                              break;
 275   9                                              }
 276   8                                      case 4:
 277   8                                              {
 278   9                                              mcodenum = mcode[0];
 279   9                                              mcode[0] = mcode[3];
 280   9                                              mcode[3] = mcodenum;
 281   9                                              mcodenum = mcode[1];
 282   9                                              mcode[1] = mcode[2];
 283   9                                              mcode[2] = mcodenum;
 284   9                                              mcodenum = 4;
 285   9                                              break;
 286   9                                              }
 287   8                                      default:
 288   8                                              {
 289   9                                              mcodenum = 0;
 290   9                                              break;
 291   9                                              }
 292   8                                      }
 293   7                              }
 294   6                      else
 295   6                              {
 296   7                              switch( cmrcodenum )
 297   7                                      {
 298   8                                      case 1:
 299   8                                              {
 300   9                                              mcodenum1 = 1;
 301   9                                              break;
 302   9                                              }
 303   8                                      case 2:
C51 COMPILER V7.06   MKRW                                                                  01/15/2007 15:24:51 PAGE 6   

 304   8                                              {
 305   9                                              mcodenum1 = mcode1[1];
 306   9                                              mcode1[1] = mcode1[0];
 307   9                                              mcode1[0] = mcodenum1;
 308   9                                              mcodenum1 = 2;
 309   9                                              break;
 310   9                                              }
 311   8                                      case 3:
 312   8                                              {
 313   9                                              mcodenum1 = mcode1[0];
 314   9                                              mcode1[0] = mcode1[2];
 315   9                                              mcode1[2] = mcodenum1;
 316   9                                              mcodenum1 = 3;
 317   9                                              break;
 318   9                                              }
 319   8                                      case 4:
 320   8                                              {
 321   9                                              mcodenum1 = mcode1[0];
 322   9                                              mcode1[0] = mcode1[3];
 323   9                                              mcode1[3] = mcodenum1;
 324   9                                              mcodenum1 = mcode1[1];
 325   9                                              mcode1[1] = mcode1[2];
 326   9                                              mcode1[2] = mcodenum1;
 327   9                                              mcodenum1 = 4;
 328   9                                              break;
 329   9                                              }
 330   8                                      default:
 331   8                                              {
 332   9                                              mcodenum1 = 0;
 333   9                                              break;
 334   9                                              }
 335   8                                      }
 336   7                              }
 337   6                      cmrcodenum = 0;
 338   6                      zcrmtime = 0;
 339   6                      cmclk = 0;
 340   6                      cmroption = 9;
 341   6                      ms_pluse = 0;
 342   6                      }
 343   5                                      }
 344   4                              }
 345   3                      break;
 346   3                      }
 347   2              case 1:
 348   2                      {
 349   3                      if( cmclk == 1 )
 350   3                              {
 351   4                              cmroption = 2;
 352   4                              cmrcv = 0x01;
 353   4                              cmrcode = 0;
 354   4                              cmrcheckbit = 1;
 355   4                              zcrmtime = 0;
 356   4                              }
 357   3                      break;
 358   3                      }
 359   2              case 2:
 360   2                      {
 361   3                      if( cmclk == 0 )
 362   3                              {
 363   4                              cmroption = 3;
 364   4                              if( cmdata == 1 )
 365   4                                      {
C51 COMPILER V7.06   MKRW                                                                  01/15/2007 15:24:51 PAGE 7   

 366   5                                      cmrcode |= cmrcv;
 367   5                                      cmrcheckbit = !cmrcheckbit;
 368   5                                      }
 369   4                              cmrcv *= 2;
 370   4                              zcrmtime = 0;
 371   4                              }
 372   3                      break;
 373   3                      }
 374   2              case 3:
 375   2                      {
 376   3                      if( cmclk == 1 )
 377   3                              {
 378   4                              if( cmrcv == 0 )
 379   4                                      {
 380   5                                      cmroption = 4;
 381   5                                      
 382   5                                      }
 383   4                              else
 384   4                                      {
 385   5                                      cmroption = 2;
 386   5                                      }
 387   4                              zcrmtime = 0;
 388   4                              
 389   4                              }
 390   3                      break;
 391   3                      }
 392   2              case 4:
 393   2                      {
 394   3                      if( cmclk == 0 )
 395   3                              {
 396   4                              zcrmtime = 0;
 397   4                              if( cmrcheckbit == cmdata )
 398   4                                      {
 399   5                                      /*if( mcodenum == 0 && state == STATE_A)
 400   5                                              {
 401   5                                              mcode[0] = cmrcode;
 402   5                                              mcodenum = 1;
 403   5                                              }
 404   5                                      else if( mcodenum1 == 0 && state == STATE_B )
 405   5                                              {
 406   5                                              mcode1[0] = cmrcode;
 407   5                                              mcodenum1 = 1;
 408   5                                              }
 409   5                                      else
 410   5                                              {
 411   5                                              cmrcodenum = 1;
 412   5                                              cmrcodedata[0] = cmrcode;
 413   5                                              }*/
 414   5                                      if( state == STATE_A)
 415   5                                              {
 416   6                                              mcode[cmrcodenum] = cmrcode;
 417   6                                              if( cmrcodenum <= 3 )
 418   6                                                      {
 419   7                                                      cmrcodenum ++;
 420   7                                                      }
 421   6                                              else
 422   6                                                      {
 423   7                                                      cmrcodenum = 0;
 424   7                                                      }
 425   6                                              }
 426   5                                      else if( state == STATE_B )
 427   5                                              {
C51 COMPILER V7.06   MKRW                                                                  01/15/2007 15:24:51 PAGE 8   

 428   6                                              mcode1[cmrcodenum] = cmrcode;
 429   6                                              if( cmrcodenum <= 3 )
 430   6                                                      {
 431   7                                                      cmrcodenum ++;
 432   7                                                      }
 433   6                                              else
 434   6                                                      {
 435   7                                                      cmrcodenum = 0;
 436   7                                                      }
 437   6                                              }
 438   5                                      }
 439   4                              ms_pluse = 1;
 440   4                              cmroption = 5;
 441   4                              }
 442   3                      break;
 443   3                      }
 444   2              case 5:
 445   2                      {
 446   3                      if( cmclk == 1 )
 447   3                              {
 448   4                              cmroption = 6;
 449   4                              zcrmtime = 0;
 450   4                              }
 451   3                      break;
 452   3                      }
 453   2              case 6:
 454   2                      {
 455   3                      if( cmclk == 0 && cmdata == 1 )
 456   3                              {
 457   4                              cmroption = 7;
 458   4                              zcrmtime = 0;
 459   4                              
 460   4                              }
 461   3                      break;
 462   3                      }
 463   2              case 7:
 464   2                      {
 465   3                      if( cmclk == 1 && cmdata == 1 )
 466   3                              {
 467   4                              cmroption = 0;
 468   4                              zcrmtime = 0;
 469   4                              cmclk = 1;
 470   4                              }
 471   3                      break;
 472   3                      }
 473   2              }
 474   1      }
 475          
 476          
 477          /*************************************
 478          向键盘发送数据程序
 479          *************************************/
 480          void ckwrite_data( void )
 481          {
 482   1      BOOL lbit;
 483   1      /*if( cuktime > 220 )
 484   1              {
 485   1              if( ckwoption != 100 )
 486   1                      {
 487   1                      cuktime = 0;
 488   1                      ckclk = 1;
 489   1                      ckdata = 1;
C51 COMPILER V7.06   MKRW                                                                  01/15/2007 15:24:51 PAGE 9   

 490   1                      ckwcodenum --;
 491   1                      ckwoption = 0;
 492   1                      } 
 493   1              }*/
 494   1      switch( ckwoption )
 495   1              {
 496   2              case 0:
 497   2                      {
 498   3                      ckclk = 0;
 499   3                      cuktime = 0;
 500   3                      ckwoption = 1;
 501   3                      break;
 502   3                      }
 503   2              case 1:
 504   2                      {
 505   3                      if( cuktime >= Han_us )
 506   3                              {
 507   4                              cuktime = 0;
 508   4                              ckdata = 0;
 509   4                              ckwoption = 2;
 510   4                              }
 511   3                      break;
 512   3                      }
 513   2              case 2:
 514   2                      {
 515   3                      if( cuktime >= Fin_us )
 516   3                              {
 517   4                              cuktime = 0;
 518   4                              ckclk = 1;
 519   4                              ckwoption = 3;
 520   4                              }
 521   3                      break;
 522   3                      }
 523   2              case 3:
 524   2                      {
 525   3                      cuktime = 0;
 526   3                      ckclk = 1;
 527   3                      ckwoption = 4;
 528   3                      ckwnum = 8;
 529   3                      ckwcheckbit = 1;
 530   3                      ckwcode = ckwcodedata[ 0 ];
 531   3                      break;
 532   3                      }
 533   2              case 4:
 534   2                      {
 535   3                      if( ckclk == 0 )
 536   3                              {
 537   4                              lbit = ckwcode & 0x01;
 538   4                              ckdata = lbit; 
 539   4                              ckwcheckbit ^= lbit;
 540   4                              ckwcode /= 2;
 541   4                              ckwoption = 5;
 542   4                              cuktime = 0;
 543   4                              }
 544   3                      break;
 545   3                      }
 546   2              case 5:
 547   2                      {
 548   3                      if( ckclk == 1 )
 549   3                              {
 550   4                              ckwnum--;
 551   4                              if(ckwnum == 0)
C51 COMPILER V7.06   MKRW                                                                  01/15/2007 15:24:51 PAGE 10  

⌨️ 快捷键说明

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