亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? mainloop.lst

?? 飛利浦 pusbd12 usb源代碼
?? LST
?? 第 1 頁 / 共 2 頁
字號:
 265   4                                                      printf("DMA_State = DMA_RUNNING.\n");
 266   4                                              else if(bEPPflags.bits.dma_state == DMA_PENDING)
 267   4                                                      printf("DMA_State = DMA_PENDING.\n");
 268   4      
 269   4                                              printf("Last Device Request: bmRequestType = 0x%bx, bRequest= 0x%bx, wValue = 0x%x, wLength = 0x%x, w
             -Index = 0x%x.\n",
 270   4      
 271   4                                                      ControlData.DeviceRequest.bmRequestType,
 272   4                                                      ControlData.DeviceRequest.bRequest,
 273   4                                                      ControlData.DeviceRequest.wValue,
 274   4                                                      ControlData.DeviceRequest.wLength,
 275   4                                                      ControlData.DeviceRequest.wIndex);
 276   4      
 277   4                                              printf("Data: ");
 278   4                                              for(i = 0; i < ControlData.DeviceRequest.wLength; i ++)
 279   4                                                      printf("0x%bx, ", *((ControlData.dataBuffer)+i));
 280   4                                              printf("\n");
 281   4      
 282   4                                              break;
 283   4                                      case '\r':
 284   4                                              reconnect_USB();
 285   4                                              break;
 286   4      
 287   4                                      case 'v':
 288   4                                              if(bEPPflags.bits.verbose == 0) {
 289   5                                                      printf("Verbose Mode = ON.\n");
 290   5                                                      DISABLE;
 291   5                                                      bEPPflags.bits.verbose = 1;
 292   5                                                      ENABLE;
 293   5                                              }
 294   4                                              else {
 295   5                                                      printf("Verbose Mode = OFF.\n");
 296   5                                                      DISABLE;
 297   5                                                      bEPPflags.bits.verbose = 0;
 298   5                                                      ENABLE;
 299   5                                              }
 300   4                                              break;
C51 COMPILER V7.02b   MAINLOOP                                                             11/08/2003 21:22:47 PAGE 6   

 301   4                                      default:
 302   4                                              break;
 303   4                              }
 304   3                      }
 305   2      
 306   2                      if (bEPPflags.bits.bus_reset) {//設(shè)備復(fù)位處理
 307   3                              DISABLE;
 308   3                              bEPPflags.bits.bus_reset = 0;
 309   3                              ENABLE;
 310   3                              // Release D12's SUSPEND pin after bus reset
 311   3                              // Enable 74HCT123 pulse generation before disconnect
 312   3                              D12SUSPD = 1;
 313   3                      } // if bus reset
 314   2      
 315   2                      if (bEPPflags.bits.suspend) {//掛起改變處理
 316   3                              DISABLE;
 317   3                              bEPPflags.bits.suspend= 0;
 318   3                              ENABLE;
 319   3      
 320   3                              if(D12SUSPD == 1) {//掛起處理
 321   4                                      D12SUSPD = 0;
 322   4                                      P0 = 0xFF;
 323   4                                      P1 = 0xFF;
 324   4                                      P2 = 0xFF;
 325   4                                      P3 = 0xFF;
 326   4                                      D12_SetDMA(0xC3);
 327   4                                      D12SUSPD = 1;
 328   4                                      PCON |= 0x02;
 329   4                                      while (1);
 330   4                              }
 331   3                      } // if suspend change
 332   2      
 333   2                      if (bEPPflags.bits.setup_packet){//Setup包處理
 334   3                              DISABLE;
 335   3                              bEPPflags.bits.setup_packet = 0;
 336   3                              ENABLE;
 337   3                              control_handler();//調(diào)用請求處理子程序
 338   3                              D12SUSPD = 1;
 339   3                      } // if setup_packet
 340   2      
 341   2                      if(bEPPflags.bits.setup_dma != 0) {//DMA狀態(tài)改變處理
 342   3                              DISABLE;
 343   3                              bEPPflags.bits.setup_dma --;
 344   3                              ENABLE;
 345   3                              setup_dma();
 346   3                      } // if setup_dma
 347   2      
 348   2              } // Main Loop
 349   1      }
 350          
 351          
 352          /**************************************************************************************************/
 353          /*************************************************************************************************/
 354          
 355          
 356          
 357          //返回stall應(yīng)答
 358          void stall_ep0(void)
 359          {
 360   1              D12_SetEndpointStatus(0, 1);
 361   1              D12_SetEndpointStatus(1, 1);
 362   1      }
C51 COMPILER V7.02b   MAINLOOP                                                             11/08/2003 21:22:47 PAGE 7   

 363          
 364          //斷開USB總線
 365          void disconnect_USB(void)
 366          {
 367   1              // Initialize D12 configuration
 368   1              D12_SetMode(D12_NOLAZYCLOCK, D12_SETTOONE | D12_CLOCK_12M);
 369   1      }
 370          
 371          //連接USB總線
 372          void connect_USB(void)
 373          {
 374   1              // reset event flags
 375   1              DISABLE;
 376   1              bEPPflags.value = 0;//清除所有狀態(tài)
 377   1              ENABLE;
 378   1      
 379   1              // V2.1 enable normal+sof interrupt
 380   1              D12_SetDMA(D12_ENDP4INTENABLE | D12_ENDP5INTENABLE);
 381   1      
 382   1              // Initialize D12 configuration
 383   1              D12_SetMode(D12_NOLAZYCLOCK|D12_SOFTCONNECT, D12_SETTOONE | D12_CLOCK_12M);
 384   1      }
 385          
 386          //重新連接到USB總線
 387          void reconnect_USB(void)
 388          {
 389   1              unsigned long clk_cnt;
 390   1      
 391   1              MCU_LED0 = 0;
 392   1              MCU_LED1 = 0;
 393   1      
 394   1              // Pull-down D12's SUSPEND pin
 395   1              // Disable 74HCT123 pulse generation before disconnect
 396   1              // Release D12's SUSPEND pin after receiving bus reset from host
 397   1              D12SUSPD = 0;
 398   1              disconnect_USB();
 399   1      
 400   1              printf("Wait for 1 second ...\n");
 401   1      
 402   1              clk_cnt = ClockTicks;
 403   1              while(ClockTicks < clk_cnt + 20)
 404   1                      ;
 405   1      
 406   1              connect_USB();
 407   1      
 408   1              MCU_LED0 = 1;
 409   1              MCU_LED1 = 1;
 410   1      }
 411          
 412          //恢復(fù)到未配置狀態(tài)
 413          void init_unconfig(void)
 414          {
 415   1      //      unsigned char i;
 416   1      
 417   1              D12_SetEndpointEnable(0);       /* Disable all endpoints but EPP0. */
 418   1      }
 419          
 420          //設(shè)置配置狀態(tài)
 421          void init_config(void)
 422          {
 423   1              D12_SetEndpointEnable(1);       /* Enable  generic/iso endpoints. */
 424   1      }
C51 COMPILER V7.02b   MAINLOOP                                                             11/08/2003 21:22:47 PAGE 8   

 425          
 426          //從端點號1發(fā)送數(shù)據(jù)
 427          void single_transmit(unsigned char * buf, unsigned char len)
 428          {
 429   1              if( len <= EP0_PACKET_SIZE) {
 430   2                      D12_WriteEndpoint(1, len, buf);
 431   2              }
 432   1      }
 433          
 434          //發(fā)送端點號1建立代碼
 435          void code_transmit(unsigned char code * pRomData, unsigned short len)
 436          {
 437   1              ControlData.wCount = 0;
 438   1              if(ControlData.wLength > len)
 439   1                      ControlData.wLength = len;
 440   1      
 441   1              ControlData.pData = pRomData;
 442   1              if( ControlData.wLength >= EP0_PACKET_SIZE) {
 443   2                      D12_WriteEndpoint(1, EP0_PACKET_SIZE, ControlData.pData);//發(fā)送16字節(jié)數(shù)據(jù)
 444   2                      ControlData.wCount += EP0_PACKET_SIZE;
 445   2                      DISABLE;
 446   2                      bEPPflags.bits.control_state = USB_TRANSMIT;
 447   2                      ENABLE;
 448   2              }
 449   1              else {
 450   2                      D12_WriteEndpoint(1, ControlData.wLength, pRomData);//發(fā)送16字節(jié)內(nèi)數(shù)據(jù)
 451   2                      ControlData.wCount += ControlData.wLength;
 452   2                      DISABLE;
 453   2                      bEPPflags.bits.control_state = USB_IDLE;
 454   2                      ENABLE;
 455   2              }
 456   1      }
 457          
 458          //LED和按鍵處理子程序
 459          void check_key_LED(void)
 460          {
 461   1              static unsigned char c, last_key = 0xf;
 462   1      
 463   1              c = MCU_SWM0 & MCU_SWM1;
 464   1              c &= 0x0f;
 465   1              if (c != last_key) {
 466   2                      D12_WriteEndpoint(3, 1, &c);//發(fā)送按鍵狀態(tài)
 467   2              }
 468   1      
 469   1              last_key = c;
 470   1      
 471   1              if(bEPPflags.bits.ep1_rxdone) {
 472   2                      DISABLE;
 473   2                      bEPPflags.bits.ep1_rxdone = 0;
 474   2                      ENABLE;
 475   2                      MCU_LED0 = !(GenEpBuf[3] & 0x1);//改變LED狀態(tài)
 476   2                      MCU_LED1 = !(GenEpBuf[3] & 0x2);
 477   2              }
 478   1      }
 479          
 480          //DMA建立子程序
 481          void setup_dma()
 482          {
 483   1              ioSize = ioRequest.uSize;
 484   1              ioCount = 0;
 485   1      
 486   1              DISABLE;
C51 COMPILER V7.02b   MAINLOOP                                                             11/08/2003 21:22:47 PAGE 9   

 487   1              bEPPflags.bits.dma_state = DMA_RUNNING;
 488   1              ENABLE;
 489   1      
 490   1              single_transmit(0, 0);
 491   1      
 492   1              if(ioRequest.bCommand & 0x1) {
 493   2                      if(ioSize > 64 || ioSize == 0) {
 494   3                              //傳輸大于64字節(jié)數(shù)據(jù)
 495   3                              D12_WriteEndpoint(5, 64, EpBuf);
 496   3                              ioCount += 64;
 497   3                      }
 498   2                      else {
 499   3                              //傳輸64字節(jié)數(shù)據(jù)
 500   3                              D12_WriteEndpoint(5, ioSize, EpBuf);
 501   3                              ioCount += ioSize;
 502   3                      }
 503   2              }
 504   1      }
 505          
 506          //請求處理子程序
 507          void control_handler()
 508          {
 509   1              unsigned char type, req;
 510   1      
 511   1              type = ControlData.DeviceRequest.bmRequestType & USB_REQUEST_TYPE_MASK;
 512   1              req = ControlData.DeviceRequest.bRequest & USB_REQUEST_MASK;
 513   1      
 514   1              help_devreq(type, req); //顯示設(shè)備請求
 515   1      
 516   1              if (type == USB_STANDARD_REQUEST)
 517   1                      (*StandardDeviceRequest[req])();//調(diào)用標(biāo)準(zhǔn)請求
 518   1              else if (type == USB_VENDOR_REQUEST)
 519   1                      (*VendorDeviceRequest[req])();//調(diào)用廠商請求
 520   1              else
 521   1                      stall_ep0();
 522   1      }


MODULE INFORMATION:   STATIC OVERLAYABLE
   CODE SIZE        =   1324    ----
   CONSTANT SIZE    =    919    ----
   XDATA SIZE       =   ----    ----
   PDATA SIZE       =   ----    ----
   DATA SIZE        =     26      18
   IDATA SIZE       =   ----    ----
   BIT SIZE         =   ----    ----
END OF MODULE INFORMATION.


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

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
视频一区二区不卡| 日韩一区二区影院| 国产视频不卡一区| 精品一区二区在线看| 亚洲3atv精品一区二区三区| 99国产一区二区三精品乱码| 国产日韩欧美精品综合| 国产激情一区二区三区| 久久综合色婷婷| 国内精品国产成人国产三级粉色| 欧美一区二区三区免费在线看 | 久久精品国产99| 日韩欧美一区二区不卡| 奇米一区二区三区av| 日韩一级黄色片| 精品一区二区三区视频| 精品国产乱码久久久久久久久 | 亚洲欧美另类在线| 日本二三区不卡| 亚洲国产视频在线| 日韩一级片网站| 国产麻豆成人精品| 国产精品色噜噜| 91丨九色丨黑人外教| 亚洲一区日韩精品中文字幕| 欧美图区在线视频| 久久成人久久鬼色| 国产精品私房写真福利视频| 91在线免费视频观看| 亚洲一区二区三区精品在线| 91精品欧美久久久久久动漫 | 天堂av在线一区| 精品国产成人系列| 成人性生交大片免费看在线播放| 亚洲欧洲美洲综合色网| 欧美日韩视频第一区| 国产真实乱偷精品视频免| 国产欧美日韩综合精品一区二区 | 国产麻豆精品久久一二三| 亚洲国产精品激情在线观看 | 在线观看国产精品网站| 视频一区国产视频| 久久久99精品免费观看不卡| 91在线视频观看| 蜜臀av一区二区| 国产精品久久久久桃色tv| 欧美亚洲丝袜传媒另类| 国产在线精品一区二区| 亚洲欧美另类久久久精品| 日韩写真欧美这视频| 99久久精品免费看国产免费软件| 一区二区高清在线| 日韩精品影音先锋| 亚洲四区在线观看| 91精品国产色综合久久ai换脸| 国产一区二区三区四区五区美女 | 成人性生交大片免费看中文网站| 亚洲人成网站精品片在线观看| 日韩视频一区在线观看| 99久久精品国产观看| 免费人成精品欧美精品| 亚洲免费观看在线视频| 久久影院电视剧免费观看| 色激情天天射综合网| 国产综合色视频| 亚洲国产欧美另类丝袜| 亚洲国产精品成人综合 | 欧美一级二级三级乱码| 色94色欧美sute亚洲13| 国产一区在线不卡| 视频一区欧美精品| 一区二区欧美在线观看| 国产精品青草久久| 欧美一区二区三区的| 色美美综合视频| 粉嫩久久99精品久久久久久夜| 青青草97国产精品免费观看无弹窗版| 亚洲天堂av一区| 国产精品每日更新在线播放网址 | 91福利视频久久久久| 丰满亚洲少妇av| 裸体歌舞表演一区二区| 石原莉奈一区二区三区在线观看| 亚洲精品第一国产综合野| 中文字幕第一区| 国产亚洲成aⅴ人片在线观看| 欧美一区二区免费| 3751色影院一区二区三区| 欧美色倩网站大全免费| 99久免费精品视频在线观看| 丰满少妇在线播放bd日韩电影| 久久99国产乱子伦精品免费| 丝袜美腿亚洲综合| 亚洲成人综合视频| 亚洲第一二三四区| 亚洲福利视频一区| 亚洲高清免费观看| 日韩成人午夜精品| 蜜乳av一区二区三区| 日本亚洲最大的色成网站www| 亚洲第一福利视频在线| 亚洲sss视频在线视频| 亚洲国产成人精品视频| 亚洲午夜私人影院| 午夜视频一区二区| 天天综合天天做天天综合| 欧美亚洲综合在线| 欧美色成人综合| 日韩一卡二卡三卡| 欧美mv日韩mv| 精品剧情v国产在线观看在线| 日韩欧美一区中文| 久久五月婷婷丁香社区| 国产三级精品三级| 综合欧美一区二区三区| 亚洲激情中文1区| 天天操天天色综合| 蜜桃av噜噜一区| 国产传媒久久文化传媒| 99精品久久只有精品| 在线亚洲一区二区| 欧美肥妇free| 久久久一区二区| 国产精品久久精品日日| 亚洲欧美偷拍三级| 日韩专区欧美专区| 国产盗摄女厕一区二区三区| 不卡一区二区在线| 欧美日韩国产免费| 精品国产伦一区二区三区观看方式| 国产欧美一区二区精品婷婷 | 精品国产一区二区三区四区四 | 欧美少妇xxx| 欧美成人高清电影在线| 中文字幕精品综合| 一区二区三区蜜桃网| 免费精品视频在线| 成人av影视在线观看| 日本乱人伦aⅴ精品| 免费美女久久99| 国产69精品久久久久777| 一本大道综合伊人精品热热| 在线成人av影院| 国产欧美精品区一区二区三区| 亚洲精品高清视频在线观看| 美女视频黄免费的久久| 成人动漫视频在线| 91精品国产手机| 中文字幕亚洲电影| 奇米色一区二区三区四区| 成人久久久精品乱码一区二区三区| 欧美日韩亚洲综合在线 欧美亚洲特黄一级| 精品国产髙清在线看国产毛片| 亚洲色图制服诱惑| 精品一区二区免费| 色屁屁一区二区| 久久网站最新地址| 日韩黄色小视频| 99视频超级精品| 久久综合色一综合色88| 亚洲国产日韩一区二区| 国产成人aaaa| 欧美成va人片在线观看| 亚洲综合免费观看高清完整版在线 | 911精品国产一区二区在线| 国产欧美1区2区3区| 奇米精品一区二区三区在线观看一| av中文字幕在线不卡| 欧美一级艳片视频免费观看| 亚洲男女一区二区三区| 成人性生交大片免费看在线播放| 欧美一级片在线观看| 亚洲伦理在线免费看| 国产一区二区在线观看免费 | 久久久久久久电影| 婷婷国产在线综合| 91美女在线视频| 国产精品欧美一区二区三区| 国产永久精品大片wwwapp| 欧美一区二区精美| 五月婷婷另类国产| 在线一区二区三区四区五区 | 欧美日韩亚洲综合在线| 亚洲人成精品久久久久| 成人av在线观| 欧美激情一区二区三区蜜桃视频 | 亚洲最新视频在线观看| 99免费精品在线观看| 欧美激情资源网| 丰满放荡岳乱妇91ww| 久久久久国产免费免费| 黄色资源网久久资源365| 欧美xfplay| 精品在线播放午夜| 欧美v日韩v国产v| 久久99精品久久久久久久久久久久| 91精品国产麻豆国产自产在线| 午夜精品福利一区二区蜜股av | 亚洲日本在线天堂| av电影在线观看不卡|